Skip to content

Commit

Permalink
Mirror: CargoConsoleMenu localization (#127)
Browse files Browse the repository at this point in the history
## Mirror of PR #25931: [CargoConsoleMenu
localization](space-wizards/space-station-14#25931)
from <img src="https://avatars.githubusercontent.com/u/10567778?v=4"
alt="space-wizards" width="22"/>
[space-wizards](https://github.com/space-wizards)/[space-station-14](https://github.com/space-wizards/space-station-14)

###### `6e38b992cfc607e09178efc178b86f35152f0cde`

PR opened by <img
src="https://avatars.githubusercontent.com/u/87994977?v=4"
width="16"/><a href="https://github.com/modern-nm"> modern-nm</a> at
2024-03-08 14:46:29 UTC
PR merged by <img
src="https://avatars.githubusercontent.com/u/19864447?v=4"
width="16"/><a href="https://github.com/web-flow"> web-flow</a> at
2024-03-09 06:56:40 UTC

---

PR changed 20 files with 211 additions and 195 deletions.

The PR had the following labels:
- Changes: UI


---

<details open="true"><summary><h1>Original Body</h1></summary>

> <!-- Please read these guidelines before opening your PR:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
> <!-- The text between the arrows are comments - they will not be
visible on your PR. -->
> 
> ## About the PR
> <!-- What did you change in this PR? -->
> This PR adds localization capability for CargoConsoleMenu (name of
entity: ComputerCargoOrders)
> 
> ## Why / Balance
> <!-- Why was it changed? Link any discussions or issues here. Please
discuss how this would affect game balance. -->
> 
> Please let me tell you a story of my vision. First i decided to make
these changes on one of russian community servers. But taking into
account future changes of .yml files by space-wizards community (they
are regularly added to our space-station build), we will have to
constantly edit xml files to remove duplicate categories — imagine
someone added cargoproduct with category "Fun", when we have tons of
items with category "Развлечения".
> 
> To summarize: my PR makes possible to localize categories of
"cargoproduct" and makes communities do less work when upstream comes
> 
> ## Technical details
> <!-- If this is a code change, summarize at high level how your new
code works. This makes it easier to review. -->
> 
> New code considers strings comparisons of prototype.Category
(Content.Client/Cargo/UI/CargoConsoleMenu.xaml.cs) using
Loc.GetString(...). And that's all.
> 
> ## Media
> <!-- 
> PRs which make ingame changes (adding clothing, items, new features,
etc) are required to have media attached that showcase the changes.
> Small fixes/refactors are exempt.
> Any media may be used in SS14 progress reports, with clear credit
given.
> 
> If you're unsure whether your PR will require media, ask a maintainer.
> 
> Check the box below to confirm that you have in fact seen this (put an
X in the brackets, like [X]):
> -->
> Off course there are no visible changes on eng-localization
> 
>
![Снимок_ножницы](https://github.com/space-wizards/space-station-14/assets/87994977/5cdbf5df-c4cc-42e6-861b-aa35a009e957)
> 
> That's how these changes look like on our community build, using other
.ftl file
> 
>
![Снимок_ножницы2](https://github.com/space-wizards/space-station-14/assets/87994977/20023fc8-5cdf-4069-981b-edbfa98fa31d)
> 
> 
> - [x] I have added screenshots/videos to this PR showcasing its
changes ingame, **or** this PR does not require an ingame showcase
> 
> ## Breaking changes
> <!--
> List any breaking changes, including namespace, public
class/method/field changes, prototype renames; and provide instructions
for fixing them. This will be pasted in #codebase-changes.
> -->
> 
> 
> .yml
> - every category of type "cargoProduct" was edited to
"cargoproduct-category-name-{categoryName}"
> 
> .ftl
> - file "cargoproduct-categories.ftl" was added to english localization
to localize categories of cargoProduct
> 
> .cs
> - CargoConsoleMenu.xaml.cs got tweaks which prevent issues with
strings comparisons
> 
> **Changelog**
> <!--
> Make players aware of new features and changes that could affect how
they play the game by adding a Changelog entry. Please read the
Changelog guidelines located at:
https://docs.spacestation14.io/en/getting-started/pr-guideline#changelog
> -->
> 


</details>

---------

Signed-off-by: VMSolidus <[email protected]>
Co-authored-by: MODERN <[email protected]>
Co-authored-by: VMSolidus <[email protected]>
  • Loading branch information
3 people committed May 29, 2024
1 parent a22601c commit a8242a3
Show file tree
Hide file tree
Showing 20 changed files with 229 additions and 213 deletions.
4 changes: 2 additions & 2 deletions Content.Client/Cargo/UI/CargoConsoleMenu.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ public void PopulateProducts()
if (search.Length == 0 && _category == null ||
search.Length != 0 && prototype.Name.ToLowerInvariant().Contains(search) ||
search.Length != 0 && prototype.Description.ToLowerInvariant().Contains(search) ||
search.Length == 0 && _category != null && prototype.Category.Equals(_category))
search.Length == 0 && _category != null && Loc.GetString(prototype.Category).Equals(_category))
{
var button = new CargoProductRow
{
Expand Down Expand Up @@ -122,7 +122,7 @@ public void PopulateCategories()

foreach (var prototype in ProductPrototypes)
{
if (!_categoryStrings.Contains(prototype.Category))
if (!_categoryStrings.Contains(Loc.GetString(prototype.Category)))
{
_categoryStrings.Add(Loc.GetString(prototype.Category));
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
cargoproduct-category-name-armory = Armory
cargoproduct-category-name-atmospherics = Atmospherics
cargoproduct-category-name-cargo = Cargo
cargoproduct-category-name-circuitboards = Circuitboards
cargoproduct-category-name-emergency = Emergency
cargoproduct-category-name-engineering = Engineering
cargoproduct-category-name-food = Food
cargoproduct-category-name-fun = Fun
cargoproduct-category-name-hydroponics = Hydroponics
cargoproduct-category-name-livestock = Livestock
cargoproduct-category-name-materials = Materials
cargoproduct-category-name-medical = Medical
cargoproduct-category-name-science = Science
cargoproduct-category-name-security = Security
cargoproduct-category-name-service = Service
cargoproduct-category-name-shuttle = Shuttle
12 changes: 6 additions & 6 deletions Resources/Prototypes/Catalog/Cargo/cargo_armory.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
state: icon
product: CrateArmorySMG
cost: 9000
category: Armory
category: cargoproduct-category-name-armory
group: market

- type: cargoProduct
Expand All @@ -15,7 +15,7 @@
state: icon
product: CrateArmoryShotgun
cost: 7000
category: Armory
category: cargoproduct-category-name-armory
group: market

- type: cargoProduct
Expand All @@ -25,7 +25,7 @@
state: implanter0
product: CrateTrackingImplants
cost: 1000
category: Armory
category: cargoproduct-category-name-armory
group: market

- type: cargoProduct
Expand All @@ -35,7 +35,7 @@
state: training-bomb
product: CrateTrainingBombs
cost: 3000
category: Armory
category: cargoproduct-category-name-armory
group: market

- type: cargoProduct
Expand All @@ -45,7 +45,7 @@
state: icon
product: CrateArmoryLaser
cost: 4800
category: Armory
category: cargoproduct-category-name-armory
group: market

- type: cargoProduct
Expand All @@ -55,5 +55,5 @@
state: icon
product: CrateArmoryPistols
cost: 5200
category: Armory
category: cargoproduct-category-name-armory
group: market
22 changes: 11 additions & 11 deletions Resources/Prototypes/Catalog/Cargo/cargo_atmospherics.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
state: grey
product: AirCanister
cost: 1100
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

- type: cargoProduct
Expand All @@ -15,7 +15,7 @@
state: blue
product: OxygenCanister
cost: 1100
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

- type: cargoProduct
Expand All @@ -25,7 +25,7 @@
state: blue
product: LiquidOxygenCanister
cost: 2500
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

- type: cargoProduct
Expand All @@ -35,7 +35,7 @@
state: red
product: NitrogenCanister
cost: 1100
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

- type: cargoProduct
Expand All @@ -45,7 +45,7 @@
state: red
product: LiquidNitrogenCanister
cost: 2500
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

- type: cargoProduct
Expand All @@ -55,7 +55,7 @@
state: black
product: CarbonDioxideCanister
cost: 2200 # Until someone fixes it co2 can be used to oneshot people so it's more expensive
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

- type: cargoProduct
Expand All @@ -65,7 +65,7 @@
state: black
product: LiquidCarbonDioxideCanister
cost: 4000
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

- type: cargoProduct
Expand All @@ -75,7 +75,7 @@
state: yellow
product: StorageCanister
cost: 1010 # No gases in it so it's cheaper
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

#- type: cargoProduct
Expand All @@ -87,7 +87,7 @@
# state: water_vapor
# product: WaterVaporCanister
# cost: 2600
# category: Atmospherics
# category: cargoproduct-category-name-atmospherics
# group: market

- type: cargoProduct
Expand All @@ -97,7 +97,7 @@
state: orange
product: PlasmaCanister
cost: 4000
category: Atmospherics
category: cargoproduct-category-name-atmospherics
group: market

#- type: cargoProduct
Expand All @@ -109,5 +109,5 @@
# state: green
# product: TritiumCanister
# cost: 15500
# category: Atmospherics
# category: cargoproduct-category-name-atmospherics
# group: market
10 changes: 5 additions & 5 deletions Resources/Prototypes/Catalog/Cargo/cargo_botany.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
state: seed
product: CrateHydroponicsSeedsExotic
cost: 1000
category: Hydroponics
category: cargoproduct-category-name-hydroponics
group: market

- type: cargoProduct
Expand All @@ -15,7 +15,7 @@
state: seed
product: CrateHydroponicsSeedsMedicinal
cost: 500
category: Hydroponics
category: cargoproduct-category-name-hydroponics
group: market

- type: cargoProduct
Expand All @@ -25,7 +25,7 @@
state: icon
product: CrateHydroponicsTools
cost: 500
category: Hydroponics
category: cargoproduct-category-name-hydroponics
group: market

- type: cargoProduct
Expand All @@ -35,7 +35,7 @@
state: seed
product: CrateHydroponicsSeeds
cost: 550
category: Hydroponics
category: cargoproduct-category-name-hydroponics
group: market

- type: cargoProduct
Expand All @@ -45,5 +45,5 @@
state: jug
product: CratePlantBGone
cost: 750
category: Hydroponics
category: cargoproduct-category-name-hydroponics
group: market
4 changes: 2 additions & 2 deletions Resources/Prototypes/Catalog/Cargo/cargo_cargo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
state: orebox
product: OreBox
cost: 500
category: Logistics # DeltaV - Logistics Department replacing Cargo
category: cargoproduct-category-name-cargo
group: market

- type: cargoProduct
Expand All @@ -25,5 +25,5 @@
state: icon
product: CrateCargoLuxuryHardsuit
cost: 15000
category: Logistics # DeltaV - Logistics Department replacing Cargo
category: cargoproduct-category-name-cargo
group: market
2 changes: 1 addition & 1 deletion Resources/Prototypes/Catalog/Cargo/cargo_circuitboards.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@
state: cpuboard
product: CrateCrewMonitoringBoards
cost: 2000
category: Circuitboards
category: cargoproduct-category-name-circuitboards
group: market
16 changes: 8 additions & 8 deletions Resources/Prototypes/Catalog/Cargo/cargo_emergency.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
state: icon
product: CrateEmergencyExplosive
cost: 650
category: Emergency
category: cargoproduct-category-name-emergency
group: market

- type: cargoProduct
Expand All @@ -15,7 +15,7 @@
state: fire_extinguisher_closed
product: CrateEmergencyFire
cost: 1500
category: Emergency
category: cargoproduct-category-name-emergency
group: market

- type: cargoProduct
Expand All @@ -25,7 +25,7 @@
state: icon
product: CrateEmergencyInternals
cost: 500
category: Emergency
category: cargoproduct-category-name-emergency
group: market

- type: cargoProduct
Expand All @@ -35,7 +35,7 @@
state: icon
product: CrateEmergencyInternalsLarge
cost: 2000
category: Emergency
category: cargoproduct-category-name-emergency
group: market

- type: cargoProduct
Expand All @@ -45,7 +45,7 @@
state: radiation
product: CrateEmergencyRadiation
cost: 1000
category: Emergency
category: cargoproduct-category-name-emergency
group: market

- type: cargoProduct
Expand All @@ -55,7 +55,7 @@
state: item_wall
product: CrateEmergencyInflatablewall
cost: 500
category: Emergency
category: cargoproduct-category-name-emergency
group: market

- type: cargoProduct
Expand All @@ -65,7 +65,7 @@
state: icon
product: CrateSlimepersonLifeSupport
cost: 300
category: Emergency
category: cargoproduct-category-name-emergency
group: market

- type: cargoProduct
Expand All @@ -75,5 +75,5 @@
state: icon
product: CrateGenericBiosuit
cost: 800
category: Emergency
category: cargoproduct-category-name-emergency
group: market
Loading

0 comments on commit a8242a3

Please sign in to comment.