diff --git a/Barotrauma/BarotraumaShared/Content/Items/Weapons/railgun.xml b/Barotrauma/BarotraumaShared/Content/Items/Weapons/railgun.xml
index abbd6718c..7200610b4 100644
--- a/Barotrauma/BarotraumaShared/Content/Items/Weapons/railgun.xml
+++ b/Barotrauma/BarotraumaShared/Content/Items/Weapons/railgun.xml
@@ -40,7 +40,7 @@
-
+
diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Controller.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Controller.cs
index 0cf2ede66..9c7dd768c 100644
--- a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Controller.cs
+++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Controller.cs
@@ -39,6 +39,12 @@ namespace Barotrauma.Items.Components
set { userPos = value; }
}
+ [Serialize(false, true)]
+ public bool RequireAimToUse
+ {
+ get; set;
+ }
+
public Controller(Item item, XElement element)
: base(item, element)
{
@@ -160,6 +166,8 @@ namespace Barotrauma.Items.Components
return false;
}
+ if (RequireAimToUse && !activator.IsKeyDown(InputType.Aim)) return false;
+
item.SendSignal(0, "1", "trigger_out", character);
ApplyStatusEffects(ActionType.OnUse, 1.0f, activator);