From: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com> Date: Sat, 4 Oct 2025 01:33:59 +0000 (+1300) Subject: Adds smart equip to pocket 1, pocket 2, and suit storage slots (#37975) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=66614496338e4184d3d73a8e5f437e3ec2a1f5c1;p=space-station-14.git Adds smart equip to pocket 1, pocket 2, and suit storage slots (#37975) * pockets and exosuit smartequip * add localisation --- diff --git a/Content.Client/Input/ContentContexts.cs b/Content.Client/Input/ContentContexts.cs index 6b279cb12c..47f0cda2f6 100644 --- a/Content.Client/Input/ContentContexts.cs +++ b/Content.Client/Input/ContentContexts.cs @@ -73,6 +73,9 @@ namespace Content.Client.Input human.AddFunction(ContentKeyFunctions.OpenInventoryMenu); human.AddFunction(ContentKeyFunctions.SmartEquipBackpack); human.AddFunction(ContentKeyFunctions.SmartEquipBelt); + human.AddFunction(ContentKeyFunctions.SmartEquipPocket1); + human.AddFunction(ContentKeyFunctions.SmartEquipPocket2); + human.AddFunction(ContentKeyFunctions.SmartEquipSuitStorage); human.AddFunction(ContentKeyFunctions.OpenBackpack); human.AddFunction(ContentKeyFunctions.OpenBelt); human.AddFunction(ContentKeyFunctions.MouseMiddle); diff --git a/Content.Client/Options/UI/Tabs/KeyRebindTab.xaml.cs b/Content.Client/Options/UI/Tabs/KeyRebindTab.xaml.cs index ee72a91fb7..59c9607b24 100644 --- a/Content.Client/Options/UI/Tabs/KeyRebindTab.xaml.cs +++ b/Content.Client/Options/UI/Tabs/KeyRebindTab.xaml.cs @@ -190,6 +190,9 @@ namespace Content.Client.Options.UI.Tabs AddHeader("ui-options-header-interaction-adv"); AddButton(ContentKeyFunctions.SmartEquipBackpack); AddButton(ContentKeyFunctions.SmartEquipBelt); + AddButton(ContentKeyFunctions.SmartEquipPocket1); + AddButton(ContentKeyFunctions.SmartEquipPocket2); + AddButton(ContentKeyFunctions.SmartEquipSuitStorage); AddButton(ContentKeyFunctions.OpenBackpack); AddButton(ContentKeyFunctions.OpenBelt); AddButton(ContentKeyFunctions.ThrowItemInHand); diff --git a/Content.Shared/Input/ContentKeyFunctions.cs b/Content.Shared/Input/ContentKeyFunctions.cs index cd5f4cff7b..50ea218b00 100644 --- a/Content.Shared/Input/ContentKeyFunctions.cs +++ b/Content.Shared/Input/ContentKeyFunctions.cs @@ -32,6 +32,9 @@ namespace Content.Shared.Input public static readonly BoundKeyFunction OpenInventoryMenu = "OpenInventoryMenu"; public static readonly BoundKeyFunction SmartEquipBackpack = "SmartEquipBackpack"; public static readonly BoundKeyFunction SmartEquipBelt = "SmartEquipBelt"; + public static readonly BoundKeyFunction SmartEquipPocket1 = "SmartEquipPocket1"; + public static readonly BoundKeyFunction SmartEquipPocket2 = "SmartEquipPocket2"; + public static readonly BoundKeyFunction SmartEquipSuitStorage = "SmartEquipSuitStorage"; public static readonly BoundKeyFunction OpenBackpack = "OpenBackpack"; public static readonly BoundKeyFunction OpenBelt = "OpenBelt"; public static readonly BoundKeyFunction OpenAHelp = "OpenAHelp"; diff --git a/Content.Shared/Interaction/SmartEquipSystem.cs b/Content.Shared/Interaction/SmartEquipSystem.cs index 553a4475cb..7529d8701d 100644 --- a/Content.Shared/Interaction/SmartEquipSystem.cs +++ b/Content.Shared/Interaction/SmartEquipSystem.cs @@ -35,6 +35,9 @@ public sealed class SmartEquipSystem : EntitySystem CommandBinds.Builder .Bind(ContentKeyFunctions.SmartEquipBackpack, InputCmdHandler.FromDelegate(HandleSmartEquipBackpack, handle: false, outsidePrediction: false)) .Bind(ContentKeyFunctions.SmartEquipBelt, InputCmdHandler.FromDelegate(HandleSmartEquipBelt, handle: false, outsidePrediction: false)) + .Bind(ContentKeyFunctions.SmartEquipPocket1, InputCmdHandler.FromDelegate(HandleSmartEquipPocket1, handle: false, outsidePrediction: false)) + .Bind(ContentKeyFunctions.SmartEquipPocket2, InputCmdHandler.FromDelegate(HandleSmartEquipPocket2, handle: false, outsidePrediction: false)) + .Bind(ContentKeyFunctions.SmartEquipSuitStorage, InputCmdHandler.FromDelegate(HandleSmartEquipSuitStorage, handle: false, outsidePrediction: false)) .Register(); } @@ -55,6 +58,21 @@ public sealed class SmartEquipSystem : EntitySystem HandleSmartEquip(session, "belt"); } + private void HandleSmartEquipPocket1(ICommonSession? session) + { + HandleSmartEquip(session, "pocket1"); + } + + private void HandleSmartEquipPocket2(ICommonSession? session) + { + HandleSmartEquip(session, "pocket2"); + } + + private void HandleSmartEquipSuitStorage(ICommonSession? session) + { + HandleSmartEquip(session, "suitstorage"); + } + private void HandleSmartEquip(ICommonSession? session, string equipmentSlot) { if (session is not { } playerSession) diff --git a/Resources/Locale/en-US/escape-menu/ui/options-menu.ftl b/Resources/Locale/en-US/escape-menu/ui/options-menu.ftl index 9869aa1da5..98ee2543c1 100644 --- a/Resources/Locale/en-US/escape-menu/ui/options-menu.ftl +++ b/Resources/Locale/en-US/escape-menu/ui/options-menu.ftl @@ -167,6 +167,9 @@ ui-options-static-storage-ui = Lock storage window to hotbar ui-options-function-smart-equip-backpack = Smart-equip to backpack ui-options-function-smart-equip-belt = Smart-equip to belt +ui-options-function-smart-equip-suit-storage = Smart-equip to suit storage +ui-options-function-smart-equip-pocket1 = Smart-equip to pocket 1 +ui-options-function-smart-equip-pocket2 = Smart-equip to pocket 2 ui-options-function-open-backpack = Open backpack ui-options-function-open-belt = Open belt ui-options-function-throw-item-in-hand = Throw item diff --git a/Resources/keybinds.yml b/Resources/keybinds.yml index 1d86e4c5e7..870c8e1435 100644 --- a/Resources/keybinds.yml +++ b/Resources/keybinds.yml @@ -255,6 +255,18 @@ binds: type: State key: E mod1: Shift +- function: SmartEquipPocket1 + type: State + key: F + mod1: Shift +- function: SmartEquipPocket2 + type: State + key: G + mod1: Shift +- function: SmartEquipSuitStorage + type: State + key: H + mod1: Shift - function: OpenBackpack type: State key: V