-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature] CaptainDrobe / КапитанШкаф #123
Conversation
WalkthroughThis pull request introduces multiple new entries to localization files for Russian language support, specifically for various clothing items including belts, gloves, hats, cloaks, coats, jumpskirts, and jumpsuits. Each entry includes identifiers, names, and descriptions in Russian. Additionally, it updates a migration file to reflect changes in entity mappings, adds new vending machine inventory configurations, and introduces metadata files for associated textures. Changes
Possibly related PRs
Suggested labels
Suggested reviewers
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
RSI Diff Bot; head commit ffee6d9 merging into cd020a9 Resources/Textures/_White/Clothing/Belt/sheriff_sheath.rsi
Resources/Textures/_White/Clothing/Belt/white_sheath.rsi
Resources/Textures/_White/Clothing/Hands/sheriff_gloves.rsi
Resources/Textures/_White/Clothing/Hands/white_captain_gloves.rsi
Resources/Textures/_White/Clothing/Head/Hats/sheriff_beret.rsi
Resources/Textures/_White/Clothing/Head/Hats/sheriff_capcap.rsi
Resources/Textures/_White/Clothing/Head/Hats/white_beret.rsi
Resources/Textures/_White/Clothing/Head/Hats/white_capcap.rsi
Resources/Textures/_White/Clothing/Neck/Cloaks/royal_captain.rsi
Resources/Textures/_White/Clothing/Neck/Cloaks/syndicate_admiral.rsi
Resources/Textures/_White/Clothing/Neck/Cloaks/white_captain_mantle.rsi
Resources/Textures/_White/Clothing/Neck/Cloaks/wide_captain_cloak.rsi
Resources/Textures/_White/Clothing/OuterClothing/Coats/captain.rsi
Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/white_captain.rsi
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/sheriff.rsi
Resources/Textures/_White/Structures/Machines/VendingMachines/captaindrobe.rsi
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 5
🧹 Outside diff range and nitpick comments (17)
Resources/Locale/ru-RU/_white/prototypes/entities/clothing/uniforms/jumpskirts.ftl (1)
2-2
: Consider revising the description's tone.The current description ("ваша зарплата явно превышает нормы") implies salary superiority, which might not align with the game's intended tone and could be perceived as elitist. Consider focusing on the uniform's ceremonial or official nature instead.
- .desc = Белая юбка-комбинезон капитана символизирующая, что ваша зарплата явно превышает нормы. + .desc = Белая парадная юбка-комбинезон капитана, символизирующая высокий статус и ответственность командования.Resources/Locale/ru-RU/_white/prototypes/entities/clothing/uniforms/jumpsuits.ftl (2)
3-4
: Simplify the description structureThe current participle construction could be simplified for better readability.
- .desc = Белый комбинезон капитана символизирующий, что ваша зарплата явно превышает нормы. + .desc = Белый комбинезон капитана. Символ того, что ваша зарплата явно превышает нормы.
5-6
: Consider revising the description toneThe current description contains a playful self-correction ("ужасн... великого") which, while humorous, might not maintain the consistent professional tone expected in item descriptions. Consider either committing to the formal tone or making the humor more subtle.
- .desc = Комбинезон показывающий вашу статусность, как ужасн... великого правителя. + .desc = Комбинезон, демонстрирующий статус великого правителя.Resources/Prototypes/_White/Entities/Clothing/Belt/belts.yml (1)
1-23
: Consider adding comments to document CaptainDrobe relationship.These belt entities are part of the CaptainDrobe feature. Consider adding comments to document this relationship and any specific requirements or interactions with the КапитанШкаф (Captain's Closet) system.
Resources/Prototypes/_White/Entities/Structures/Machines/vending_machines.yml (2)
1-5
: Fix grammar in the descriptionThe description should include an article before "stylish uniform".
- description: Stylish uniform, for a strong leader! + description: A stylish uniform, for a strong leader!
1-25
: Consider adding configuration commentsWhile the configuration is well-structured, it would be helpful to add YAML comments explaining:
- The purpose of this vending machine
- The expected contents/categories in the inventory
- The reasoning behind the chosen light color
- type: entity + # CaptainDrobe vending machine provides captain-specific clothing items + # Including default, white, sheriff, and command style uniforms parent: VendingMachine id: CaptainDrobeResources/Prototypes/_White/Entities/Clothing/OuterClothing/coats.yml (1)
24-26
: Maintain consistency in naming and descriptionThe entity uses "jacket" in the name but "formal jacket" in the description. Consider using consistent terminology, preferably "coat" as it matches the file name and the Russian translation "китель" (military coat/tunic).
id: ClothingOuterCoatCaptain - name: captain jacket - description: Captain formal jacket, inlaid with gold. + name: captain's coat + description: Captain's formal coat, inlaid with gold.Resources/Prototypes/_White/Entities/Clothing/Uniforms/jumpskirts.yml (1)
27-27
: Consider enhancing the description for clarity.The current description "White captain jumpsuit skirt symbolizing that your salary clearly exceeds the norm" could be more professional and consistent with game lore.
Consider this alternative:
- description: White captain jumpsuit skirt symbolizing that your salary clearly exceeds the norm. + description: A pristine white variant of the captain's jumpskirt, denoting the prestigious rank of its wearer.Resources/Prototypes/_White/Entities/Clothing/Neck/cloaks.yml (2)
10-20
: Fix typo in descriptionThe implementation looks good, but there's a minor typo in the description.
- description: Wide captain's greatcoat. It doesn't seem to fit you, but it will do as a cape on your shoulders. + description: Wide captain's greatcoat. It doesn't seem to fit you, but it will serve as a cape on your shoulders.
21-31
: Improve description clarityThe current description "The king in the palace, the king in the palace" is cryptic and doesn't provide useful information about the item's appearance or purpose.
- description: The king in the palace, the king in the palace. + description: A majestic cloak befitting a captain's royal status, adorned with elegant patterns and rich materials.Resources/Prototypes/_White/Catalog/VendingMachines/Inventories/CaptainDrobeInventory.yml (2)
4-22
: Consider grouping formal and casual wear separately.The "Default" section mixes different types of clothing (formal, casual, protective). Consider reorganizing into sub-categories for better clarity:
- Formal wear (formal cloak, dress uniform)
- Standard uniform items
- Protective gear (armor, winter coat)
8-8
: Review comment style consistency.There are inconsistent comment styles:
- Line 8:
# Nyanotrasen - Captain's Beret
- Line 22:
# DeltaV
Consider standardizing the comment format across all items that need source attribution.
Also applies to: 22-22
Resources/Prototypes/_White/Entities/Clothing/Uniforms/jumpsuits.yml (2)
23-32
: Improve indentation consistency and description.The entity structure is correct, but there are some improvements needed:
- The indentation should match other entities (2 spaces for components)
- The description could be more detailed to better explain the command variant
Apply this diff to fix indentation and enhance description:
- type: entity parent: ClothingUniformBase id: ClothingUniformJumpsuitCommandCaptain name: captain command jumpsuit - description: Black suit with gold shoulder straps. + description: A formal black captain's jumpsuit adorned with gold shoulder straps, denoting command authority. components: - - type: Sprite - sprite: _White/Clothing/Uniforms/Jumpsuit/captain_command.rsi - - type: Clothing - sprite: _White/Clothing/Uniforms/Jumpsuit/captain_command.rsi + - type: Sprite + sprite: _White/Clothing/Uniforms/Jumpsuit/captain_command.rsi + - type: Clothing + sprite: _White/Clothing/Uniforms/Jumpsuit/captain_command.rsi
34-43
: Revise description tone and fix indentation.The entity structure is correct, but there are two issues:
- The description's reference to salary might not fit the game's tone
- Component indentation is inconsistent (4 spaces vs 2)
Apply this diff:
- type: entity parent: ClothingUniformBase id: ClothingUniformJumpsuitWhiteCaptain name: white captain jumpsuit - description: Captain white jumpsuit symbolizes that your salary is clearly above the norm. + description: A pristine white captain's jumpsuit, representing the highest authority with its clean, professional appearance. components: - - type: Sprite - sprite: _White/Clothing/Uniforms/Jumpsuit/captain_white.rsi - - type: Clothing - sprite: _White/Clothing/Uniforms/Jumpsuit/captain_white.rsi + - type: Sprite + sprite: _White/Clothing/Uniforms/Jumpsuit/captain_white.rsi + - type: Clothing + sprite: _White/Clothing/Uniforms/Jumpsuit/captain_white.rsiResources/Prototypes/_White/Entities/Clothing/Head/hats.yml (3)
45-54
: Consider adding missing components for consistency.Other hats in the file include additional protective features. Consider adding:
- The
HidesHair
tag since berets typically cover hair- An
Armor
component for consistency with other protective headwear- type: Clothing sprite: _White/Clothing/Head/Hats/white_beret.rsi + - type: Tag + tags: + - HidesHair + - type: Armor + modifiers: + coefficients: + Blunt: 0.95
70-70
: Fix redundant name "cap cap".The name appears to have a duplicate word. Consider changing to just "white captain's cap" or "white service cap".
- name: white cap cap + name: white captain's cap
67-80
: Consider adding Armor component for consistency.Other headwear includes protective features. Consider adding the Armor component for consistency.
- type: Tag tags: - HamsterWearable + - type: Armor + modifiers: + coefficients: + Blunt: 0.95
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
⛔ Files ignored due to path filters (67)
Resources/Textures/_White/Clothing/Belt/sheriff_sheath.rsi/equipped-BELT.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Belt/sheriff_sheath.rsi/sheath-sabre-equipped-BELT.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Belt/sheriff_sheath.rsi/sheath-sabre.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Belt/sheriff_sheath.rsi/sheath.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Belt/white_sheath.rsi/equipped-BELT.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Belt/white_sheath.rsi/sheath-sabre-equipped-BELT.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Belt/white_sheath.rsi/sheath-sabre.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Belt/white_sheath.rsi/sheath.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Hands/sheriff_gloves.rsi/equipped-HAND.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Hands/sheriff_gloves.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Hands/sheriff_gloves.rsi/inhand-left.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Hands/sheriff_gloves.rsi/inhand-right.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Hands/white_captain_gloves.rsi/equipped-HAND.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Hands/white_captain_gloves.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Hands/white_captain_gloves.rsi/inhand-left.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Hands/white_captain_gloves.rsi/inhand-right.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/sheriff_beret.rsi/equipped-HELMET-vox.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/sheriff_beret.rsi/equipped-HELMET.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/sheriff_beret.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/sheriff_capcap.rsi/equipped-HELMET-hamster.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/sheriff_capcap.rsi/equipped-HELMET-vox.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/sheriff_capcap.rsi/equipped-HELMET.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/sheriff_capcap.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/white_beret.rsi/equipped-HELMET-vox.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/white_beret.rsi/equipped-HELMET.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/white_beret.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/white_capcap.rsi/equipped-HELMET-hamster.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/white_capcap.rsi/equipped-HELMET.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Head/Hats/white_capcap.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/royal_captain.rsi/equipped-NECK-reptilian.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/royal_captain.rsi/equipped-NECK.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/royal_captain.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/syndicate_admiral.rsi/equipped-NECK-reptilian.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/syndicate_admiral.rsi/equipped-NECK.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/syndicate_admiral.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/white_captain_mantle.rsi/equipped-NECK.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/white_captain_mantle.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/wide_captain_cloak.rsi/equipped-NECK.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/wide_captain_cloak.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/wide_captain_cloak.rsi/inhand-left.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Neck/Cloaks/wide_captain_cloak.rsi/inhand-right.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/OuterClothing/Coats/captain.rsi/equipped-OUTERCLOTHING-digi.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/OuterClothing/Coats/captain.rsi/equipped-OUTERCLOTHING.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/OuterClothing/Coats/captain.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/OuterClothing/Coats/captain.rsi/inhand-left.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/OuterClothing/Coats/captain.rsi/inhand-right.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/white_captain.rsi/equipped-INNERCLOTHING-reptilian.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/white_captain.rsi/equipped-INNERCLOTHING.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/white_captain.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi/equipped-INNERCLOTHING-reptilian.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi/equipped-INNERCLOTHING.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi/inhand-left.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi/inhand-right.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi/equipped-INNERCLOTHING-monkey.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi/equipped-INNERCLOTHING-reptilian.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi/equipped-INNERCLOTHING.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi/inhand-left.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi/inhand-right.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/sheriff.rsi/equipped-INNERCLOTHING-reptilian.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/sheriff.rsi/equipped-INNERCLOTHING.png
is excluded by!**/*.png
Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/sheriff.rsi/icon.png
is excluded by!**/*.png
Resources/Textures/_White/Structures/Machines/VendingMachines/captaindrobe.rsi/broken.png
is excluded by!**/*.png
Resources/Textures/_White/Structures/Machines/VendingMachines/captaindrobe.rsi/normal-unshaded.png
is excluded by!**/*.png
Resources/Textures/_White/Structures/Machines/VendingMachines/captaindrobe.rsi/off.png
is excluded by!**/*.png
Resources/Textures/_White/Structures/Machines/VendingMachines/captaindrobe.rsi/panel.png
is excluded by!**/*.png
📒 Files selected for processing (37)
Resources/Locale/ru-RU/_white/prototypes/entities/clothing/belt/belts.ftl
(1 hunks)Resources/Locale/ru-RU/_white/prototypes/entities/clothing/hands/gloves.ftl
(1 hunks)Resources/Locale/ru-RU/_white/prototypes/entities/clothing/head/hats.ftl
(1 hunks)Resources/Locale/ru-RU/_white/prototypes/entities/clothing/neck/cloaks.ftl
(1 hunks)Resources/Locale/ru-RU/_white/prototypes/entities/clothing/outerclothing/coats.ftl
(1 hunks)Resources/Locale/ru-RU/_white/prototypes/entities/clothing/uniforms/jumpskirts.ftl
(1 hunks)Resources/Locale/ru-RU/_white/prototypes/entities/clothing/uniforms/jumpsuits.ftl
(1 hunks)Resources/Locale/ru-RU/_white/prototypes/entities/structures/machines/vending_machines.ftl
(1 hunks)Resources/Migrations/migration.yml
(1 hunks)Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
(6 hunks)Resources/Prototypes/_White/Catalog/VendingMachines/Inventories/CaptainDrobeInventory.yml
(1 hunks)Resources/Prototypes/_White/Entities/Clothing/Belt/belts.yml
(1 hunks)Resources/Prototypes/_White/Entities/Clothing/Hands/gloves.yml
(1 hunks)Resources/Prototypes/_White/Entities/Clothing/Head/hats.yml
(1 hunks)Resources/Prototypes/_White/Entities/Clothing/Neck/cloaks.yml
(1 hunks)Resources/Prototypes/_White/Entities/Clothing/OuterClothing/coats.yml
(1 hunks)Resources/Prototypes/_White/Entities/Clothing/Uniforms/jumpskirts.yml
(1 hunks)Resources/Prototypes/_White/Entities/Clothing/Uniforms/jumpsuits.yml
(1 hunks)Resources/Prototypes/_White/Entities/Structures/Machines/vending_machines.yml
(1 hunks)Resources/Textures/_White/Clothing/Belt/sheriff_sheath.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Belt/white_sheath.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Hands/sheriff_gloves.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Hands/white_captain_gloves.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Head/Hats/sheriff_beret.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Head/Hats/sheriff_capcap.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Head/Hats/white_beret.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Head/Hats/white_capcap.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Neck/Cloaks/royal_captain.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Neck/Cloaks/syndicate_admiral.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Neck/Cloaks/white_captain_mantle.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Neck/Cloaks/wide_captain_cloak.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/OuterClothing/Coats/captain.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/white_captain.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi/meta.json
(1 hunks)Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/sheriff.rsi/meta.json
(1 hunks)Resources/Textures/_White/Structures/Machines/VendingMachines/captaindrobe.rsi/meta.json
(1 hunks)
✅ Files skipped from review due to trivial changes (24)
- Resources/Locale/ru-RU/_white/prototypes/entities/clothing/belt/belts.ftl
- Resources/Locale/ru-RU/_white/prototypes/entities/clothing/hands/gloves.ftl
- Resources/Locale/ru-RU/_white/prototypes/entities/clothing/head/hats.ftl
- Resources/Locale/ru-RU/_white/prototypes/entities/clothing/neck/cloaks.ftl
- Resources/Locale/ru-RU/_white/prototypes/entities/clothing/outerclothing/coats.ftl
- Resources/Locale/ru-RU/_white/prototypes/entities/structures/machines/vending_machines.ftl
- Resources/Textures/_White/Clothing/Belt/sheriff_sheath.rsi/meta.json
- Resources/Textures/_White/Clothing/Belt/white_sheath.rsi/meta.json
- Resources/Textures/_White/Clothing/Hands/sheriff_gloves.rsi/meta.json
- Resources/Textures/_White/Clothing/Hands/white_captain_gloves.rsi/meta.json
- Resources/Textures/_White/Clothing/Head/Hats/sheriff_beret.rsi/meta.json
- Resources/Textures/_White/Clothing/Head/Hats/sheriff_capcap.rsi/meta.json
- Resources/Textures/_White/Clothing/Head/Hats/white_beret.rsi/meta.json
- Resources/Textures/_White/Clothing/Head/Hats/white_capcap.rsi/meta.json
- Resources/Textures/_White/Clothing/Neck/Cloaks/royal_captain.rsi/meta.json
- Resources/Textures/_White/Clothing/Neck/Cloaks/syndicate_admiral.rsi/meta.json
- Resources/Textures/_White/Clothing/Neck/Cloaks/white_captain_mantle.rsi/meta.json
- Resources/Textures/_White/Clothing/Neck/Cloaks/wide_captain_cloak.rsi/meta.json
- Resources/Textures/_White/Clothing/OuterClothing/Coats/captain.rsi/meta.json
- Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/white_captain.rsi/meta.json
- Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi/meta.json
- Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi/meta.json
- Resources/Textures/_White/Clothing/Uniforms/Jumpsuit/sheriff.rsi/meta.json
- Resources/Textures/_White/Structures/Machines/VendingMachines/captaindrobe.rsi/meta.json
🔇 Additional comments (25)
Resources/Locale/ru-RU/_white/prototypes/entities/clothing/uniforms/jumpskirts.ftl (1)
1-1
: LGTM! Translation follows proper conventions.
The entity name translation is grammatically correct and follows Russian language rules for compound nouns with proper hyphenation.
Resources/Prototypes/_White/Entities/Clothing/Hands/gloves.yml (2)
1-11
: LGTM! Verify sprite assets exist.
The entity definition for white captain gloves follows the correct structure and naming conventions.
Let's verify the referenced sprite file exists:
✅ Verification successful
Sprite assets verified and correctly located
The referenced sprite file white_captain_gloves.rsi
exists at the correct path in Resources/Textures/_White/Clothing/Hands/
, matching the path specified in the entity definition.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check if the sprite file exists
fd "white_captain_gloves.rsi$" Resources/Textures/_White/Clothing/Hands/
Length of output: 141
12-21
: Consider adding functional components for ergonomic benefits.
The description suggests these gloves are ergonomically designed for revolvers, but there are no components that implement this functionality. Consider adding components to provide actual benefits when handling revolvers.
Let's verify the referenced sprite file exists:
Resources/Prototypes/_White/Entities/Clothing/Belt/belts.yml (2)
13-23
: Add newline at end of file and verify sprite resources.
The file is missing a trailing newline. Also, verify the existence of the sheriff sheath sprite resources.
#!/bin/bash
# Verify the existence of the sheriff sheath RSI file and its required states
rg -g "*.rsi/**" "sheath" Resources/_White/Clothing/Belt/
# Add newline if missing
if [ ! -z "$(tail -c1 'Resources/Prototypes/_White/Entities/Clothing/Belt/belts.yml')" ]; then
echo "File is missing trailing newline"
fi
1-12
: Consider refactoring to reduce RSI path duplication.
The same RSI path is specified in both Sprite and Clothing components. Consider extracting this to a variable or using a more DRY approach if the framework supports it.
Verify the existence of sprite resources.
The entity references sprite resources that need to be present for proper rendering.
✅ Verification successful
RSI path duplication is a common pattern, no changes needed
The RSI file exists at the correct location Resources/Textures/_White/Clothing/Belt/white_sheath.rsi/
. After examining other belt implementations in the codebase, the duplication of RSI paths in both Sprite and Clothing components appears to be the standard pattern used throughout the codebase, not a design issue.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Verify the existence of the white sheath RSI file and its required states
rg -g "*.rsi/**" "sheath" Resources/_White/Clothing/Belt/
Length of output: 222
Script:
#!/bin/bash
# Let's verify the existence of the RSI file and its states using a broader search
fd "white_sheath.rsi" --type directory
# Also check for any RSI files in the _White directory structure
fd ".rsi$" Resources/Prototypes/_White/
# Let's also check if there are any other similar belt/sheath implementations for reference
rg -g "*.yml" "ClothingBeltSheath" Resources/Prototypes/
Length of output: 1041
Resources/Prototypes/_White/Entities/Structures/Machines/vending_machines.yml (3)
22-25
: LGTM! Security and visual effects are properly configured
The point light color is appropriate for the theme, and the access restriction is correctly set to Captain-only access, maintaining proper security controls.
12-21
: Verify sprite assets exist
The configuration references sprite assets that should be present in the specified path.
#!/bin/bash
# Description: Check if the sprite assets exist
# Expected: Find the RSI file and its required states
# Check for the RSI file
fd -g "captaindrobe.rsi" Resources
# List states in the RSI metadata (if found)
find Resources -name "captaindrobe.rsi" -type d -exec test -f "{}/meta.json" \; -exec jq -r '.states | keys[]' "{}/meta.json" \;
7-11
: Verify the CaptainDrobeInventory pack exists
The configuration references an inventory pack that should be defined in a separate file.
✅ Verification successful
Let me try another search strategy to verify the inventory pack's existence.
Let me check the content of the inventory file to ensure it's properly defined.
CaptainDrobeInventory pack is properly defined and implemented
The inventory pack exists at Resources/Prototypes/_White/Catalog/VendingMachines/Inventories/CaptainDrobeInventory.yml
and is correctly defined with the proper type, ID, and inventory contents.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check if the CaptainDrobeInventory pack is properly defined
# Expected: Find the inventory pack definition in the catalog directory
fd -g "*CaptainDrobeInventory*.yml" Resources/Prototypes
Length of output: 285
Script:
#!/bin/bash
# Search for any files containing CaptainDrobeInventory
rg -l "CaptainDrobeInventory"
# Also search specifically in inventory-related YAML files
fd -e yml -e yaml . Resources/Prototypes | xargs rg -l "CaptainDrobeInventory"
Length of output: 444
Script:
#!/bin/bash
# Check the content of the CaptainDrobeInventory file
cat Resources/Prototypes/_White/Catalog/VendingMachines/Inventories/CaptainDrobeInventory.yml
Length of output: 1788
Resources/Prototypes/_White/Entities/Clothing/OuterClothing/coats.yml (2)
32-38
: Verify armor coefficients
The captain's coat has lower protection values compared to the hobo's overcoat (0.8/0.8/0.6/0.8 vs 0.9/0.9/0.9/0.75). Given that this is a captain's formal wear, please verify if these reduced protection values are intentional.
#!/bin/bash
# Check armor values of other captain clothing items
rg -A 6 "Armor:\s+modifiers:\s+coefficients:" Resources/Prototypes/_White/Entities/Clothing/OuterClothing/
27-31
: Consider adding storage capability
The hobo's overcoat includes a StorageFill component, but it's missing from the captain's coat. Given that this is inheriting from ClothingOuterStorageBase
, consider whether the captain's coat should also have storage capabilities.
- type: Clothing
sprite: _White/Clothing/OuterClothing/Coats/captain.rsi
+ - type: StorageFill
+ contents: [] # Add appropriate items if needed
Resources/Prototypes/_White/Entities/Clothing/Uniforms/jumpskirts.yml (2)
23-32
: LGTM! The entity definition follows the established pattern.
The new white captain jumpskirt entity is well-structured and properly integrated with the existing clothing system.
29-32
: Verify the RSI asset existence.
Ensure that the referenced sprite file _White/Clothing/Uniforms/Jumpskirt/white_captain.rsi
exists and contains the required states.
✅ Verification successful
RSI asset exists with required states ✓
The sprite file _White/Clothing/Uniforms/Jumpskirt/white_captain.rsi
exists and contains all the necessary states for a clothing item:
icon
state for inventory displayequipped-INNERCLOTHING
state with 4 directions for regular humanoidsequipped-INNERCLOTHING-reptilian
state with 4 directions for reptilian species
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check if the RSI file exists and examine its contents
fd -e rsi "white_captain.rsi$" Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/
Length of output: 160
Script:
#!/bin/bash
# Check the contents of the RSI file to verify required states
if [ -f "Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/white_captain.rsi/meta.json" ]; then
cat "Resources/Textures/_White/Clothing/Uniforms/Jumpskirt/white_captain.rsi/meta.json"
fi
Length of output: 640
Resources/Prototypes/_White/Entities/Clothing/Neck/cloaks.yml (1)
32-40
: 🛠️ Refactor suggestion
Add missing StealTarget component for consistency
Other cloak entities include the StealTarget component, but it's missing here.
components:
- type: Sprite
sprite: _White/Clothing/Neck/Cloaks/syndicate_admiral.rsi
+ - type: StealTarget
+ stealGroup: HeadCloak
Verify security implications of Syndicate item
This is a Syndicate-themed item being added to captain's wardrobe. While the AI summary indicates it's marked as contraband, we should verify the security implications.
✅ Verification successful
Let me verify if other cloaks have the StealTarget component to confirm if this is indeed inconsistent.
Let me try a different approach to check cloak entities using ripgrep.
Let me try one final search approach to find cloak entities.
Based on the search results, I can now provide a final response:
Add StealTarget component for consistency with other head cloaks
Looking at the codebase, other head-level cloaks (like Captain's, HoS's, CE's, etc.) consistently include the StealTarget component with stealGroup: HeadCloak
. This cloak should follow the same pattern.
components:
- type: Sprite
sprite: _White/Clothing/Neck/Cloaks/syndicate_admiral.rsi
+ - type: StealTarget
+ stealGroup: HeadCloak
Regarding security implications: The item is properly restricted as it's only available in the contrabandInventory
section of the CaptainDrobe vending machine, which is appropriate for a Syndicate-themed item.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check if this item is properly restricted in vending machines and crafting
rg -l "ClothingNeckCloakSyndicateAdmiral" | while read -r file; do
echo "=== $file ==="
rg "ClothingNeckCloakSyndicateAdmiral" "$file" -C 5
done
Length of output: 1954
Script:
#!/bin/bash
# Check other cloak entities for StealTarget component
ast-grep --pattern 'type: entity
parent: ClothingNeckBase
id: ClothingNeck$$$Cloak$$$
$$$
components:
$$$'
Length of output: 120
Script:
#!/bin/bash
# Search for cloak entities and their components
rg "type: entity\s+parent: ClothingNeckBase.*?components:" -A 10 --multiline
Length of output: 78
Script:
#!/bin/bash
# Search for all cloak entities in the codebase
rg "id: ClothingNeck.*Cloak.*" -B 2 -A 10
Length of output: 50307
Resources/Prototypes/_White/Catalog/VendingMachines/Inventories/CaptainDrobeInventory.yml (5)
1-2
: LGTM! Configuration follows standard format.
The vendingMachineInventory type and ID are properly defined.
32-37
: Verify sheriff theme items are properly textured.
The sheriff-themed items align with the PR objectives. However, ensure all sheriff variants have corresponding texture files.
#!/bin/bash
# Check if texture files exist for sheriff-themed items
echo "Searching for sheriff item textures..."
fd -e rsi "Sheriff" Resources/Textures
51-52
: Security Consideration: Review contraband access controls.
The inclusion of a Syndicate Admiral cloak in contraband inventory requires careful consideration:
- Ensure proper access restrictions are in place
- Verify this aligns with game balance
#!/bin/bash
# Check for access control configurations
echo "Searching for vending machine access controls..."
rg -A 5 "CaptainDrobe.*access" Resources/Prototypes
1-52
: Verify completeness of command style items.
The PR objectives mention "command style" items, but there's only one command-style uniform (ClothingUniformJumpsuitCommandCaptain
). Consider if additional command-style variants are needed for consistency.
#!/bin/bash
# Check for other command-style items in the codebase
echo "Searching for existing command-style items..."
rg "Command.*Captain|Captain.*Command" Resources/Prototypes
46-50
: Consider balancing PaperCaptainsThoughts quantity.
While most items have a quantity of 1, PaperCaptainsThoughts
has 5. Consider if this quantity is intentional and balanced.
#!/bin/bash
# Check if PaperCaptainsThoughts is consumable or reusable
echo "Searching for PaperCaptainsThoughts properties..."
rg "PaperCaptainsThoughts" Resources/Prototypes
Resources/Prototypes/_White/Entities/Clothing/Uniforms/jumpsuits.yml (1)
30-30
: Verify sprite resources exist.
Let's ensure all referenced sprite files are present in the repository to prevent runtime errors.
Also applies to: 41-41, 52-52
✅ Verification successful
All sprite resources are present and correctly referenced
All referenced .rsi sprite files were found in the repository:
_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi
_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi
_White/Clothing/Uniforms/Jumpsuit/sheriff.rsi
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check if all referenced .rsi sprite files exist
# List of sprite paths to check
sprites=(
"_White/Clothing/Uniforms/Jumpsuit/captain_command.rsi"
"_White/Clothing/Uniforms/Jumpsuit/captain_white.rsi"
"_White/Clothing/Uniforms/Jumpsuit/sheriff.rsi"
)
# Check each sprite path
for sprite in "${sprites[@]}"; do
echo "Checking for sprite: $sprite"
if fd -t d "$sprite$"; then
echo "✓ Found: $sprite"
else
echo "✗ Missing: $sprite"
fi
done
Length of output: 1298
Resources/Prototypes/_White/Entities/Clothing/Head/hats.yml (3)
56-65
: Same components missing as in white captain beret.
81-93
: Same Armor component missing as in white cap cap.
44-93
: Verify existence of new sprite files.
Let's ensure all referenced sprite files exist to prevent runtime issues.
✅ Verification successful
All sprite files are present and correctly located
All referenced sprite files were found in the expected location under Resources/Textures/_White/Clothing/Head/Hats/
:
- white_beret.rsi
- sheriff_beret.rsi
- white_capcap.rsi
- sheriff_capcap.rsi
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check if all referenced sprite files exist
# Test: Search for the new sprite files
echo "Checking for new sprite files..."
for sprite in "white_beret.rsi" "sheriff_beret.rsi" "white_capcap.rsi" "sheriff_capcap.rsi"; do
if fd "$sprite" Resources/; then
echo "✓ Found: $sprite"
else
echo "✗ Missing: $sprite"
fi
done
Length of output: 1086
Resources/Migrations/migration.yml (1)
256-257
: LGTM! Consistent with other holoprojector migrations.
The mapping follows the established pattern of simplifying holoprojector entity IDs by removing the "Empty" suffix.
Resources/Prototypes/Catalog/Fills/Lockers/heads.yml (2)
Line range hint 121-139
: LGTM: Consistent updates across department head lockers.
The changes maintain consistency across all department head lockers while adding role-specific improvements:
- HoP's service role alignment with appropriate headset
- Added PDAs and role-specific ID cards
- Consistent LunchboxCommandFilledRandom probability
Line range hint 35-53
: Verify the migration of essential captain items.
The removal of several captain-specific items (armor, rubber stamp, medal case, beret) aligns with moving them to the new CaptainDrobe system. However, please ensure:
- These items are properly configured in the CaptainDrobe vending machine
- The spare ID system properly replaces the removed CaptainIDCard functionality
Let's verify the configuration:
Also applies to: 64-82, 93-110
✅ Verification successful
Items properly migrated to CaptainDrobe, but spare ID system needs verification
The removed items (armor, rubber stamp, medal case, beret) are correctly migrated to the new CaptainDrobe vending machine as shown in Resources/Prototypes/_White/Catalog/VendingMachines/Inventories/CaptainDrobeInventory.yml
. However, the spare ID system implementation appears incomplete:
- The spare ID system is implemented via
PaperBiscuitCorporateSpareID
andPaperSlipSpareID
in DeltaV's paperslips.yml - We need to verify the access permissions on this new system
Migration verified, spare ID system properly implemented
The verification shows that:
- All removed captain items (armor, rubber stamp, medal case, beret) are correctly configured in the CaptainDrobe vending machine.
- The spare ID system is properly implemented through:
- A secure cabinet (
SpareIdCabinetFilled
) protected byDV-SpareSafe
access - Emergency access cards stored in biscuits (
PaperBiscuitCorporateSpareID
) - A dedicated access system separate from regular captain access
- A secure cabinet (
The changes are consistent and maintain security through a controlled spare ID distribution system.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify items are properly configured in CaptainDrobe
# Check if removed items exist in CaptainDrobe configuration
echo "Checking CaptainDrobe inventory..."
rg "ClothingOuterArmorCaptainCarapace|RubberStampCaptain|MedalCase|ClothingHeadHatBeretCap" Resources/Prototypes/Catalog/VendingMachines/Inventories/
# Check spare ID system implementation
echo "Checking spare ID system..."
rg "spare.*ID.*system" Resources/
Length of output: 736
Script:
#!/bin/bash
# Let's check for CaptainDrobe configuration and the new spare ID system implementation
# Search for CaptainDrobe configuration
echo "=== Searching for CaptainDrobe configuration ==="
rg -A 10 "CaptainDrobe" Resources/
# Search for spare ID system implementation
echo -e "\n=== Searching for spare ID system implementation ==="
rg -A 5 "SpareID" Resources/
# Search for any captain-related vending machines
echo -e "\n=== Searching for captain-related vending machines ==="
rg "name:.*(Captain|Капитан)" Resources/Prototypes/Catalog/VendingMachines/
Length of output: 12407
Script:
#!/bin/bash
# Check access permissions for the spare ID system
echo "=== Checking spare ID access permissions ==="
rg -A 10 "PaperSlipSpareID" Resources/Prototypes/DeltaV/Entities/Objects/Misc/paperslips.yml
# Check if there are any other related configurations
echo -e "\n=== Checking for related spare ID configurations ==="
rg "emergency.*access" Resources/
Length of output: 2001
Script:
#!/bin/bash
# Let's verify the DV-SpareSafe access tag configuration and compare with captain's access
# Check what access the DV-SpareSafe tag grants
echo "=== Checking DV-SpareSafe access configuration ==="
rg -A 5 "DV-SpareSafe" Resources/
# Check standard captain access for comparison
echo -e "\n=== Checking standard captain access configuration ==="
rg "Captain.*access" Resources/
Length of output: 1524
Resources/Locale/ru-RU/_white/prototypes/entities/clothing/uniforms/jumpsuits.ftl
Outdated
Show resolved
Hide resolved
Resources/Prototypes/_White/Catalog/VendingMachines/Inventories/CaptainDrobeInventory.yml
Show resolved
Hide resolved
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Описание PR
Добавьте новые вещи в лодаут сами, я не хочу
Медиа
Список
Примерка:
КапитанШкаф:
Изменения
🆑 PuroSlavKing