]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
unhardcode thief MaxSelectedSets (#29175)
authordeltanedas <39013340+deltanedas@users.noreply.github.com>
Wed, 19 Jun 2024 00:29:06 +0000 (00:29 +0000)
committerGitHub <noreply@github.com>
Wed, 19 Jun 2024 00:29:06 +0000 (10:29 +1000)
* unhardcode thief MaxSelectedSets

* we do a little copy paste :trollface:

* :trollface:

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Content.Client/Thief/ThiefBackpackMenu.xaml
Content.Client/Thief/ThiefBackpackMenu.xaml.cs
Content.Server/Thief/Components/ThiefUndeterminedBackpackComponent.cs
Content.Server/Thief/Systems/ThiefUndeterminedBackpackSystem.cs
Resources/Locale/en-US/thief/backpack.ftl

index c1739eb321df3fbcdc2b0ae4dd42ac676c2ffa8b..e46f18d4ed550411a744faa09d49665010fc67f3 100644 (file)
@@ -5,7 +5,7 @@
                                                MinSize="700 700">
        <BoxContainer Orientation="Vertical" HorizontalExpand="True" VerticalExpand="True">
                <!-- First Informational panel -->
-               <Label Text="{Loc 'thief-backpack-window-description'}" Margin="5 5"/>
+               <Label Name="Description" Margin="5 5"/>
                <controls:HLine Color="#404040" Thickness="2" Margin="0 5"/>
                <Label Name="SelectedSets" Text="{Loc 'thief-backpack-window-selected'}" Margin="5 5"/>
 
index b2314cf3fe2d9c6f30ef4de0ef7072719fdcff64..543772c704ce4d201b7a118425e86f90e25aabb9 100644 (file)
@@ -50,6 +50,7 @@ public sealed partial class ThiefBackpackMenu : FancyWindow
                 selectedNumber++;
         }
 
+        Description.Text = Loc.GetString("thief-backpack-window-description", ("maxCount", state.MaxSelectedSets));
         SelectedSets.Text = Loc.GetString("thief-backpack-window-selected", ("selectedCount", selectedNumber), ("maxCount", state.MaxSelectedSets));
         ApproveButton.Disabled = selectedNumber == state.MaxSelectedSets ? false : true;
     }
index edea8f52736d15c486109b7e535dd4a604f0bc97..64f88df657942a276f4afd227189ac35b9cd7159 100644 (file)
@@ -23,4 +23,10 @@ public sealed partial class ThiefUndeterminedBackpackComponent : Component
 
     [DataField]
     public SoundSpecifier ApproveSound = new SoundPathSpecifier("/Audio/Effects/rustle1.ogg");
+
+    /// <summary>
+    /// Max number of sets you can select.
+    /// </summary>
+    [DataField]
+    public int MaxSelectedSets = 2;
 }
index 133876bd751fdc1a3afe1c24650daebcd2768b94..3248a6b9c8050042c3f71df0a99f5399b850634e 100644 (file)
@@ -18,7 +18,6 @@ public sealed class ThiefUndeterminedBackpackSystem : EntitySystem
     [Dependency] private readonly SharedTransformSystem _transform = default!;
     [Dependency] private readonly UserInterfaceSystem _ui = default!;
 
-    private const int MaxSelectedSets = 2;
     public override void Initialize()
     {
         base.Initialize();
@@ -35,7 +34,7 @@ public sealed class ThiefUndeterminedBackpackSystem : EntitySystem
 
     private void OnApprove(Entity<ThiefUndeterminedBackpackComponent> backpack, ref ThiefBackpackApproveMessage args)
     {
-        if (backpack.Comp.SelectedSets.Count != MaxSelectedSets)
+        if (backpack.Comp.SelectedSets.Count != backpack.Comp.MaxSelectedSets)
             return;
 
         foreach (var i in backpack.Comp.SelectedSets)
@@ -79,6 +78,6 @@ public sealed class ThiefUndeterminedBackpackSystem : EntitySystem
             data.Add(i, info);
         }
 
-        _ui.SetUiState(uid, ThiefBackpackUIKey.Key, new ThiefBackpackBoundUserInterfaceState(data, MaxSelectedSets));
+        _ui.SetUiState(uid, ThiefBackpackUIKey.Key, new ThiefBackpackBoundUserInterfaceState(data, component.MaxSelectedSets));
     }
 }
index 90cb0031fb89fc7d5232b3a12013947a712984d8..f5d313c8b01463dfdafdfee956f9699995a821e5 100644 (file)
@@ -3,7 +3,10 @@ thief-backpack-window-title = thief toolbox
 thief-backpack-window-description =
     This toolbox is filled with unspecified contents.
     Now you need to remember what you put in it.
-    Choose 2 different sets from the list.
+    Choose {$maxCount} different {$maxCount ->
+        [1] set
+        *[other] sets
+    } from the list.
 
 thief-backpack-window-selected = Kits selected: ({$selectedCount}/{$maxCount})