diff --git a/Resources/Locale/en-US/_DV/tools/set_selector.ftl b/Resources/Locale/en-US/_DV/tools/set_selector.ftl new file mode 100644 index 0000000000..877a294b98 --- /dev/null +++ b/Resources/Locale/en-US/_DV/tools/set_selector.ftl @@ -0,0 +1,8 @@ +selectable-set-engineering-voidsuit-name = Engineering Voidsuit +selectable-set-engineering-voidsuit-desc = A lightweight version of the standard engineering hardsuits. Allows for faster response time, at the cost of most of the protective plating. + +selectable-set-engineering-hardsuit-name = Engineering Hardsuit +selectable-set-engineering-hardsuit-desc = A standard engineering hardsuit that protects against hazardous, low pressure environments. Has radiation shielding. + +selectable-set-voidsuit-title = Voidsuit Selector +selectable-set-voidsuit-description = With how fragile stations are, spacing is a possibility. Choose wisely. diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml b/Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml index 9b1ce0dc17..f0b538386d 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml @@ -175,7 +175,7 @@ - type: entity id: LockerEngineerFilledHardsuit - suffix: Filled, Hardsuit + suffix: Filled, Undetermined # DeltaV - Choose your own hardsuit adventure, was Filled, Hardsuit. parent: LockerEngineer components: - type: EntityTableContainerFill @@ -215,7 +215,7 @@ id: FillEngineerHardsuit table: !type:AllSelector children: - - id: ClothingOuterHardsuitEngineering + - id: UndeterminedVoidsuitEngineer # DeltaV - Choose your own hardsuit adventure, was ClothingOuterHardsuitEngineering - id: OxygenTankFilled - id: ClothingShoesBootsMag - id: ClothingMaskBreath diff --git a/Resources/Prototypes/_DV/Catalog/Engineering/selectable_sets.yml b/Resources/Prototypes/_DV/Catalog/Engineering/selectable_sets.yml new file mode 100644 index 0000000000..f7a1334d1b --- /dev/null +++ b/Resources/Prototypes/_DV/Catalog/Engineering/selectable_sets.yml @@ -0,0 +1,19 @@ +- type: thiefBackpackSet + id: VoidsuitSelectorEngineerVoidsuit + name: selectable-set-engineering-voidsuit-name + description: selectable-set-engineering-voidsuit-desc + sprite: + sprite: _DV/Clothing/OuterClothing/Suits/engineering-light.rsi + state: icon + content: + - ClothingOuterVoidsuitEngineering + +- type: thiefBackpackSet + id: VoidsuitSelectorEngineerHardsuit + name: selectable-set-engineering-hardsuit-name + description: selectable-set-engineering-hardsuit-desc + sprite: + sprite: Clothing/OuterClothing/Hardsuits/engineering.rsi + state: icon + content: + - ClothingOuterHardsuitEngineering diff --git a/Resources/Prototypes/_DV/Catalog/Fills/Lockers/engineering.yml b/Resources/Prototypes/_DV/Catalog/Fills/Lockers/engineering.yml index 20670fdf47..1892bf6ecb 100644 --- a/Resources/Prototypes/_DV/Catalog/Fills/Lockers/engineering.yml +++ b/Resources/Prototypes/_DV/Catalog/Fills/Lockers/engineering.yml @@ -10,3 +10,23 @@ children: - id: ClothingOuterVoidsuitEngineering - id: OxygenTankFilled + - id: ClothingShoesBootsMag + - id: ClothingMaskBreath + - !type:NestedSelector + tableId: FillLockerEngineer + +- type: entity + id: LockerEngineerFilledOnlyHardsuit # Probably need a better ID than the existing LockerEngineerFilledHardsuit. Leaving up to mappers. + suffix: Filled, Hardsuit + parent: LockerEngineerFilled + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:AllSelector + children: + - id: ClothingOuterHardsuitEngineering + - id: OxygenTankFilled + - id: ClothingShoesBootsMag + - id: ClothingMaskBreath + - !type:NestedSelector + tableId: FillLockerEngineer diff --git a/Resources/Prototypes/_DV/Entities/Clothing/OuterClothing/softsuits.yml b/Resources/Prototypes/_DV/Entities/Clothing/OuterClothing/softsuits.yml index 461b9c51a8..6f0a040823 100644 --- a/Resources/Prototypes/_DV/Entities/Clothing/OuterClothing/softsuits.yml +++ b/Resources/Prototypes/_DV/Entities/Clothing/OuterClothing/softsuits.yml @@ -93,8 +93,8 @@ - type: ExplosionResistance damageCoefficient: 0.85 - type: ClothingSpeedModifier - walkModifier: 0.8 - sprintModifier: 0.8 + walkModifier: 0.85 + sprintModifier: 0.85 - type: HeldSpeedModifier - type: ToggleableClothing clothingPrototype: ClothingHeadHelmetVoidsuitEngineering diff --git a/Resources/Prototypes/_Goobstation/Entities/Objects/Specific/Misc/voidsuitselectors.yml b/Resources/Prototypes/_Goobstation/Entities/Objects/Specific/Misc/voidsuitselectors.yml new file mode 100644 index 0000000000..77c630ef08 --- /dev/null +++ b/Resources/Prototypes/_Goobstation/Entities/Objects/Specific/Misc/voidsuitselectors.yml @@ -0,0 +1,31 @@ +# SPDX-FileCopyrightText: 2025 GoobBot +# SPDX-FileCopyrightText: 2025 IrisTheAmped +# SPDX-FileCopyrightText: 2025 PunishedJoe +# +# SPDX-License-Identifier: AGPL-3.0-or-later + +# engineer +- type: entity + id: UndeterminedVoidsuitEngineer + name: engineer voidsuit selector + description: A small remote utilizing bluespace technology to drop in a voidsuit or hardsuit of your choosing. + parent: BaseItem + components: + - type: Sprite + sprite: _Goobstation/Objects/Devices/unique_teleporters.rsi + state: standard + - type: ThiefUndeterminedBackpack + #Delta V additions begin + possibleSets: + - VoidsuitSelectorEngineerVoidsuit + - VoidsuitSelectorEngineerHardsuit + maxSelectedSets: 1 + toolName: selectable-set-voidsuit-title + toolDesc: selectable-set-voidsuit-description + #Delta V additions end + - type: ActivatableUI + key: enum.ThiefBackpackUIKey.Key + - type: UserInterface + interfaces: + enum.ThiefBackpackUIKey.Key: + type: ThiefBackpackBoundUserInterface diff --git a/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/bso.png b/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/bso.png new file mode 100644 index 0000000000..8290dfe668 Binary files /dev/null and b/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/bso.png differ diff --git a/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/meta.json b/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/meta.json new file mode 100644 index 0000000000..1701d119ac --- /dev/null +++ b/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/meta.json @@ -0,0 +1,20 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Made by Renee - https://discord.com/channels/1202734573247795300/1288192265319223387/1288254493020131368", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "standard" + }, + { + "name": "ntr" + }, + { + "name": "bso" + } + ] +} diff --git a/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/ntr.png b/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/ntr.png new file mode 100644 index 0000000000..bcbac38a89 Binary files /dev/null and b/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/ntr.png differ diff --git a/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/standard.png b/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/standard.png new file mode 100644 index 0000000000..af23158a9b Binary files /dev/null and b/Resources/Textures/_Goobstation/Objects/Devices/unique_teleporters.rsi/standard.png differ