From 9281795866f071f0bb9b973ebc0ffd469bcb85e4 Mon Sep 17 00:00:00 2001 From: Regalis Date: Mon, 29 May 2017 18:41:56 +0300 Subject: [PATCH] Null reference fixes --- Subsurface/Source/Characters/Character.cs | 2 +- Subsurface/Source/Map/Explosion.cs | 2 +- Subsurface/Source/Map/FireSource.cs | 2 +- Subsurface/Source/Map/MapEntity.cs | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Subsurface/Source/Characters/Character.cs b/Subsurface/Source/Characters/Character.cs index e12eed995..f54da6a98 100644 --- a/Subsurface/Source/Characters/Character.cs +++ b/Subsurface/Source/Characters/Character.cs @@ -1294,7 +1294,7 @@ namespace Barotrauma (c2.IsRemotePlayer || c2 == GameMain.Server.Character) && Vector2.Distance(c2.WorldPosition, c.WorldPosition) < NetConfig.CharacterIgnoreDistance); } - else + else if (Submarine.MainSub != null) { //disable AI characters that are far away from the sub and the controlled character c.Enabled = Vector2.Distance(Submarine.MainSub.WorldPosition, c.WorldPosition) < NetConfig.CharacterIgnoreDistance || diff --git a/Subsurface/Source/Map/Explosion.cs b/Subsurface/Source/Map/Explosion.cs index 2040e6d03..975dbd521 100644 --- a/Subsurface/Source/Map/Explosion.cs +++ b/Subsurface/Source/Map/Explosion.cs @@ -93,7 +93,7 @@ namespace Barotrauma item.ApplyStatusEffects(ActionType.OnFire, 1.0f); - if (item.Condition <= 0.0f) + if (item.Condition <= 0.0f && GameMain.Server != null) { GameMain.Server.CreateEntityEvent(item, new object[] { NetEntityEvent.Type.ApplyStatusEffect, ActionType.OnFire }); } diff --git a/Subsurface/Source/Map/FireSource.cs b/Subsurface/Source/Map/FireSource.cs index b15b307fd..977355bed 100644 --- a/Subsurface/Source/Map/FireSource.cs +++ b/Subsurface/Source/Map/FireSource.cs @@ -280,7 +280,7 @@ namespace Barotrauma if (item.Position.Y < position.Y - size.Y || item.Position.Y > hull.Rect.Y) continue; item.ApplyStatusEffects(ActionType.OnFire, deltaTime); - if (item.Condition <= 0.0f) + if (item.Condition <= 0.0f && GameMain.Server != null) { GameMain.Server.CreateEntityEvent(item, new object[] { NetEntityEvent.Type.ApplyStatusEffect, ActionType.OnFire }); } diff --git a/Subsurface/Source/Map/MapEntity.cs b/Subsurface/Source/Map/MapEntity.cs index 35a834d5f..2727c4054 100644 --- a/Subsurface/Source/Map/MapEntity.cs +++ b/Subsurface/Source/Map/MapEntity.cs @@ -382,8 +382,8 @@ namespace Barotrauma { item.Update(cam, deltaTime); } - - Entity.Spawner.Update(); + + Spawner?.Update(); } public virtual void Update(Camera cam, float deltaTime) { }