Server doesn't un-freezes characters that are stunned, unconscious or dead, or controlled by the host

This commit is contained in:
Regalis
2017-01-11 21:24:03 +02:00
parent 8a9b322b78
commit dc3885a2da

View File

@@ -1350,9 +1350,13 @@ namespace Barotrauma
if (this != Character.Controlled)
{
if (GameMain.Server != null && !(this is AICharacter) && AllowInput)
if (GameMain.Server != null && !(this is AICharacter))
{
if (memInput.Count == 0)
if (!AllowInput)
{
AnimController.Frozen = false;
}
else if (memInput.Count == 0)
{
AnimController.Frozen = true;
}
@@ -1415,6 +1419,10 @@ namespace Barotrauma
memInput.RemoveRange(60, memInput.Count - 60);
}
}
else //this == Character.Controlled && GameMain.Client == null
{
AnimController.Frozen = false;
}
if (networkUpdateSent)
{
@@ -1906,6 +1914,8 @@ namespace Barotrauma
}
}
AnimController.Frozen = false;
GameServer.Log(Name+" has died (Cause of death: "+causeOfDeath+")", Color.Red);
if (OnDeath != null) OnDeath(this, causeOfDeath);