diff --git a/Resources/Prototypes/_Goobstation/Entities/Clothing/Back/modsuit.yml b/Resources/Prototypes/_Goobstation/Entities/Clothing/Back/modsuit.yml index 7f9d328fc8a..fcc205ce2a6 100644 --- a/Resources/Prototypes/_Goobstation/Entities/Clothing/Back/modsuit.yml +++ b/Resources/Prototypes/_Goobstation/Entities/Clothing/Back/modsuit.yml @@ -75,6 +75,78 @@ back: - state: equipped-BACKPACK-sealed +#Mono - used for modsuits with a jetpack +#NOTE: only works if you plan to have the cell be unremovable due to conflicts between RequiresPanel and GasTank components +- type: entity + abstract: true + parent: [ Clothing, ContentsExplosionResistanceBase ] + id: ClothingModsuitBasev2 + name: modsuit hardsuit unit + description: A special modular suit contol unit containing all necessary modular hardsuit parts. + components: + - type: Appearance + - type: Sprite + sprite: _Goobstation/Clothing/Back/Modsuits/standard.rsi + layers: + - state: control + - state: control-sealed + visible: false + shader: unshaded + map: [ "sealed" ] + - type: Item + size: Huge + - type: Clothing + quickEquip: false + slots: + - back + - type: Storage # satchel + grid: + - 0,0,1,3 + - 3,0,6,3 + - 8,0,9,3 + maxItemSize: Huge + - type: ContainerContainer + containers: + storagebase: !type:Container + ents: [] + toggleable-clothing: !type:Container + cell_slot: !type:ContainerSlot + - type: UserInterface + interfaces: + enum.StorageUiKey.Key: + type: StorageBoundUserInterface + enum.ToggleClothingUiKey.Key: + type: ToggleableClothingBoundUserInterface + - type: UseDelay + delay: 0.5 + - type: ExplosionResistance + damageCoefficient: 0.9 + - type: ToggleableClothing + requiredSlot: back + blockUnequipWhenAttached: true + replaceCurrentClothing: true + - type: ItemSlots + slots: + cell_slot: + name: power-cell-slot-component-slot-name-default + whitelist: + components: + - PowerCell + - type: PowerCellDraw + drawRate: 0.1 # Sealed draw rate + useRate: 0.5 # Draw rate for sealing + - type: PowerCellSlot + cellSlotId: cell_slot + fitsInCharger: false + - type: DoAfter + - type: SealableClothingControl + - type: SealableClothingRequiresPower + - type: SealableClothingVisuals + spriteLayer: sealed + clothingVisuals: + back: + - state: equipped-BACKPACK-sealed + - type: entity parent: ClothingModsuitBase id: ClothingModsuitStandard diff --git a/Resources/Prototypes/_Mono/Catalogs/selectable_sets.yml b/Resources/Prototypes/_Mono/Catalogs/selectable_sets.yml index f74726abfc9..26b3623e49c 100644 --- a/Resources/Prototypes/_Mono/Catalogs/selectable_sets.yml +++ b/Resources/Prototypes/_Mono/Catalogs/selectable_sets.yml @@ -88,7 +88,7 @@ - RadioJammer - MedkitCombatFilled - AccessBreaker - - ClothingModsuitRoguePowerCell + - ClothingModsuitRogue - ClothingBackpackDuffelSyndicateC4tBundle - ScramImplanter - AccessConfiguratorAntag diff --git a/Resources/Prototypes/_Mono/Entities/Clothing/Back/modsuit.yml b/Resources/Prototypes/_Mono/Entities/Clothing/Back/modsuit.yml index abed93a2deb..740b20f22d4 100644 --- a/Resources/Prototypes/_Mono/Entities/Clothing/Back/modsuit.yml +++ b/Resources/Prototypes/_Mono/Entities/Clothing/Back/modsuit.yml @@ -57,13 +57,43 @@ - PowerCell - type: entity - parent: ClothingModsuitBase + parent: ClothingModsuitBasev2 id: ClothingModsuitRogue name: RX-01 hardsuit control unit - description: Core control unit for the RX-01. Survives power spikes, hull breaches, and black market ingenuity. Somehow. Also has built in experimental voidboots. + description: Core control unit for the RX-01. The ultimate void suit for someone looking to excel at every boarding opportunity. Namely utilizes a built in mass scanner, void boots, and air jets. The right hand comes equipped with a grappling blade that can mount onto just about anything- Just don't miss! components: + - type: GasTank + outputPressure: 42.6 + air: + # 13 minutes of thrust + volume: 5 + temperature: 293.15 + moles: + Oxygen: 1.025689525 # oxygen + Nitrogen: 1.025689525 # nitrogen + - type: UserInterface + interfaces: + enum.SharedGasTankUiKey.Key: + type: GasTankBoundUserInterface + - type: UseDelay + delays: + gasTank: + length: 1.0 + - type: Jetpack + acceleration: 1.15 # Mono + weightlessModifier: 2.4 # Mono + moleUsage: 0.00085 - type: Sprite sprite: _Mono/Clothing/Back/Modsuits/rogue.rsi + state: icon + - type: Clothing + sprite: _Mono/Clothing/Back/Modsuits/rogue.rsi + quickEquip: false + slots: + - Back + - type: Item + sprite: null + size: Huge - type: Storage # Extra space - Mono grid: - 0,0,7,3 @@ -80,20 +110,16 @@ - type: Construction graph: Modsuit node: rogue - -- type: entity - parent: ClothingModsuitRogue - id: ClothingModsuitRoguePowerCell - suffix: High-Capacity Battery - components: + - type: Tag + tags: + - GasTank - type: ItemSlots slots: cell_slot: name: power-cell-slot-component-slot-name-default - startingItem: PowerCellHigh - whitelist: - components: - - PowerCell + startingItem: PowerCellModsuitRogue + disableEject: true + swap: false # Volta - type: entity diff --git a/Resources/Prototypes/_Mono/Entities/Clothing/Hands/modsuit.yml b/Resources/Prototypes/_Mono/Entities/Clothing/Hands/modsuit.yml index e3295770594..90755bc776d 100644 --- a/Resources/Prototypes/_Mono/Entities/Clothing/Hands/modsuit.yml +++ b/Resources/Prototypes/_Mono/Entities/Clothing/Hands/modsuit.yml @@ -36,9 +36,28 @@ parent: ClothingModsuitGauntletsBase id: ClothingModsuitGauntletsRogue name: RX-01 modsuit gauntlets - description: Non-conductive mesh, pressure-sealed seams. Surprisingly legal. Proudly produced in Sector by Ullman Industries. + description: Non-conductive mesh, pressure-sealed seams. Surprisingly legal. Proudly produced in Sector by Ullman Industries. One wrist has a small hook protruding from the bottom. categories: [HideSpawnMenu] components: + - type: Thieving + stripTimeReduction: 2.5 + stealthy: true + - type: InstantAction + itemIconStyle: BigItem + event: !type:ToggleActionEvent + - type: AmmoCounter + - type: GrapplingGun + ropeBreakPoint: 100000 # Mono + reelRate: 8 # Mono + reelForce: 12000 # Mono + - type: Gun + soundGunshot: /Audio/Weapons/Guns/Gunshots/harpoon.ogg + fireRate: 2 # Mono - 0.5 -> 2 + projectileSpeed: 60 # Mono + clumsyProof: true + - type: BasicEntityAmmoProvider + proto: GrapplingHook + capacity: 1 - type: Sprite sprite: _Mono/Clothing/Hands/Modsuits/rogue.rsi - type: SealableClothingVisuals diff --git a/Resources/Prototypes/_Mono/Entities/Clothing/Head/modsuit.yml b/Resources/Prototypes/_Mono/Entities/Clothing/Head/modsuit.yml index 944d64ab2c7..8d5f340c6d1 100644 --- a/Resources/Prototypes/_Mono/Entities/Clothing/Head/modsuit.yml +++ b/Resources/Prototypes/_Mono/Entities/Clothing/Head/modsuit.yml @@ -121,9 +121,22 @@ parent: [BaseClothingModsuitHelmet, ShowMedicalIcons, ShowSecurityIcons] id: ClothingModsuitHelmetRogue name: RX-01 modsuit helmet - description: Does not currently feature an AI companion- note to self, sell helmet AI as separate purchase. + description: A concealed button on the left-hand of the helmet. Features night vision, thermals, medical interface, and flash protection. Does not currently feature an AI companion- note to self, sell helmet AI as separate purchase. categories: [HideSpawnMenu] components: + - type: RadarConsole + followEntity: true + noRotate: true + - type: DetectionRangeMultiplier + infraredMultiplier: 0.5 + visualMultiplier: 0.75 + - type: ActivatableUI + key: enum.RadarConsoleUiKey.Key + singleUser: true + - type: UserInterface + interfaces: + enum.RadarConsoleUiKey.Key: + type: RadarConsoleBoundUserInterface - type: Sprite sprite: _Mono/Clothing/Head/Modsuits/rogue.rsi - type: Armor diff --git a/Resources/Prototypes/_Mono/Entities/Objects/Power/powercells.yml b/Resources/Prototypes/_Mono/Entities/Objects/Power/powercells.yml index a92cd2042f2..3fedd6c865e 100644 --- a/Resources/Prototypes/_Mono/Entities/Objects/Power/powercells.yml +++ b/Resources/Prototypes/_Mono/Entities/Objects/Power/powercells.yml @@ -16,6 +16,23 @@ - type: EmpResistance coefficient: 0.0001 +- type: entity + name: RX-01-C2 powerhouse + description: A power cell used in the assembly of the RX-01 modsuit primarily given to the elusive Spasaka of the Phaethon Dynasty Vanguard. Very expensive for its inability to be manufactured en mass. + id: PowerCellModsuitRogue + suffix: DO NOT MAP + parent: [PowerCellCombat, PowerCellMicroreactor] + components: + - type: Sprite + layers: + - map: [ "enum.PowerCellVisualLayers.Base" ] + state: combat + - map: [ "enum.PowerCellVisualLayers.Unshaded" ] + state: o2 + shader: unshaded + visible: false + coefficient: 0.0050 + - type: entity id: PowerCellCombatPrinted diff --git a/Resources/Prototypes/_Mono/Entities/Objects/Tools/jetpacks.yml b/Resources/Prototypes/_Mono/Entities/Objects/Tools/jetpacks.yml index a93f024f618..439d178474b 100644 --- a/Resources/Prototypes/_Mono/Entities/Objects/Tools/jetpacks.yml +++ b/Resources/Prototypes/_Mono/Entities/Objects/Tools/jetpacks.yml @@ -31,3 +31,20 @@ moles: - 1.025689525 # oxygen - 1.025689525 # nitrogen + +- type: entity + id: JetpackModsuitRogue + parent: BaseJetpack + name: RX-01-JB propulsion + description: A jetpack that is integrated into the shell of the RX-01. Provides the suit with jetpack functionality. + suffix: DO NOT MAP + components: + - type: GasTank + outputPressure: 42.6 + air: + # 13 minutes thrust + volume: 5 + temperature: 293.15 + moles: + - 1.025689525 # oxygen + - 1.025689525 # nitrogen diff --git a/Resources/Prototypes/_Obelisk/Entities/Mobs/Species/hydrakin.yml b/Resources/Prototypes/_Obelisk/Entities/Mobs/Species/hydrakin.yml index 4cb57309288..a4c6eca4924 100644 --- a/Resources/Prototypes/_Obelisk/Entities/Mobs/Species/hydrakin.yml +++ b/Resources/Prototypes/_Obelisk/Entities/Mobs/Species/hydrakin.yml @@ -60,7 +60,7 @@ species: Hydrakin - type: ThermalRegulator #Todo, implement hydrakin thermal movement generation metabolismHeat: 1600 - radiatedHeat: 100 + radiatedHeat: 300 implicitHeatRegulation: 250 sweatHeatRegulation: 400 shiveringHeatRegulation: 3000 diff --git a/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/icon-on.png b/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/icon-on.png new file mode 100644 index 00000000000..f143dc6e4e6 Binary files /dev/null and b/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/icon-on.png differ diff --git a/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/icon.png b/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/icon.png new file mode 100644 index 00000000000..f143dc6e4e6 Binary files /dev/null and b/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/icon.png differ diff --git a/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/meta.json b/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/meta.json index 1e51d3deb51..2b17404b5f4 100644 --- a/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/meta.json +++ b/Resources/Textures/_Mono/Clothing/Back/Modsuits/rogue.rsi/meta.json @@ -9,6 +9,12 @@ "states": [ { "name": "control" + }, + { + "name": "icon" + }, + { + "name": "icon-on" }, { "name": "control-sealed",