diff --git a/Barotrauma/BarotraumaShared/Source/Characters/CharacterInfo.cs b/Barotrauma/BarotraumaShared/Source/Characters/CharacterInfo.cs index f6f4af9ca..7a377e847 100644 --- a/Barotrauma/BarotraumaShared/Source/Characters/CharacterInfo.cs +++ b/Barotrauma/BarotraumaShared/Source/Characters/CharacterInfo.cs @@ -747,7 +747,7 @@ namespace Barotrauma public void IncreaseSkillLevel(string skillIdentifier, float increase, Vector2 worldPos) { - if (Job == null || (GameMain.NetworkMember != null && GameMain.NetworkMember.IsClient)) return; + if (Job == null || (GameMain.NetworkMember != null && GameMain.NetworkMember.IsClient) || Character == null) { return; } float prevLevel = Job.GetSkillLevel(skillIdentifier); Job.IncreaseSkillLevel(skillIdentifier, increase); diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Steering.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Steering.cs index c375e83fa..b5b2d230f 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Steering.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Steering.cs @@ -210,6 +210,11 @@ namespace Barotrauma.Items.Components if (voltage < minVoltage && currPowerConsumption > 0.0f) { return; } + if (user != null && user.Removed) + { + user = null; + } + ApplyStatusEffects(ActionType.OnActive, deltaTime, null); if (autoPilot)