diff --git a/Subsurface/Source/Camera.cs b/Subsurface/Source/Camera.cs index 372c66ee8..1dca560a4 100644 --- a/Subsurface/Source/Camera.cs +++ b/Subsurface/Source/Camera.cs @@ -234,7 +234,14 @@ namespace Barotrauma public Vector2 Position { get { return position; } - set { position = value; } + set + { + if (!MathUtils.IsValid(value)) + { + return; + } + position = value; + } } public Vector2 ScreenToWorld(Vector2 coords) diff --git a/Subsurface/Source/Networking/NetEntityEvent/ClientEntityEventManager.cs b/Subsurface/Source/Networking/NetEntityEvent/ClientEntityEventManager.cs index 803938651..cd75c1291 100644 --- a/Subsurface/Source/Networking/NetEntityEvent/ClientEntityEventManager.cs +++ b/Subsurface/Source/Networking/NetEntityEvent/ClientEntityEventManager.cs @@ -100,6 +100,8 @@ namespace Barotrauma.Networking public void Clear() { + ID = 0; + events.Clear(); eventLastSent.Clear(); } diff --git a/Subsurface/Source/Networking/NetEntityEvent/ServerEntityEventManager.cs b/Subsurface/Source/Networking/NetEntityEvent/ServerEntityEventManager.cs index bcfb00586..720c2491c 100644 --- a/Subsurface/Source/Networking/NetEntityEvent/ServerEntityEventManager.cs +++ b/Subsurface/Source/Networking/NetEntityEvent/ServerEntityEventManager.cs @@ -96,7 +96,10 @@ namespace Barotrauma.Networking public void Clear() { + ID = 0; events.Clear(); + + server.ConnectedClients.ForEach(c => c.entityEventLastSent.Clear()); } } }