From 709d9e44abb078e907a32c0d6994d118ceae741f Mon Sep 17 00:00:00 2001 From: Joonas Rikkonen Date: Thu, 4 Apr 2019 11:12:18 +0300 Subject: [PATCH] (541e3ffbe) Check that the mask is equipped in the head before trying to unequip. --- .../Source/Characters/AI/HumanAIController.cs | 2 +- .../Source/Characters/AI/Objectives/AIObjectiveCombat.cs | 3 ++- .../Source/Items/Components/Signal/LightComponent.cs | 4 ---- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/Barotrauma/BarotraumaShared/Source/Characters/AI/HumanAIController.cs b/Barotrauma/BarotraumaShared/Source/Characters/AI/HumanAIController.cs index a232f65d1..f5821b46b 100644 --- a/Barotrauma/BarotraumaShared/Source/Characters/AI/HumanAIController.cs +++ b/Barotrauma/BarotraumaShared/Source/Characters/AI/HumanAIController.cs @@ -179,7 +179,7 @@ namespace Barotrauma if (takeMaskOff) { var mask = Character.Inventory.FindItemByIdentifier("divingmask"); - if (mask != null) + if (mask != null && Character.Inventory.IsInLimbSlot(mask, InvSlotType.Head)) { // Try to put the mask in an Any slot, and drop it if that fails if (!mask.AllowedSlots.Contains(InvSlotType.Any) || !Character.Inventory.TryPutItem(mask, Character, new List() { InvSlotType.Any })) diff --git a/Barotrauma/BarotraumaShared/Source/Characters/AI/Objectives/AIObjectiveCombat.cs b/Barotrauma/BarotraumaShared/Source/Characters/AI/Objectives/AIObjectiveCombat.cs index 0d4f621fd..b6d020d2a 100644 --- a/Barotrauma/BarotraumaShared/Source/Characters/AI/Objectives/AIObjectiveCombat.cs +++ b/Barotrauma/BarotraumaShared/Source/Characters/AI/Objectives/AIObjectiveCombat.cs @@ -132,7 +132,8 @@ namespace Barotrauma { if (!character.SelectedItems.Contains(Weapon)) { - if (character.Inventory.TryPutItem(Weapon, 3, true, false, character)) + var slots = Weapon.AllowedSlots.FindAll(s => s == InvSlotType.LeftHand || s == InvSlotType.RightHand || s == (InvSlotType.LeftHand | InvSlotType.RightHand)); + if (character.Inventory.TryPutItem(Weapon, character, slots)) { Weapon.Equip(character); } diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/LightComponent.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/LightComponent.cs index eebf1146a..7845f609c 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/LightComponent.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/LightComponent.cs @@ -26,10 +26,6 @@ namespace Barotrauma.Items.Components private float blinkTimer; - private bool itemLoaded; - - private float blinkTimer; - public PhysicsBody ParentBody; [Editable(MinValueFloat = 0.0f, MaxValueFloat = 2048.0f), Serialize(100.0f, true)]