diff --git a/Resources/Prototypes/AccessLevels/cargo.yml b/Resources/Prototypes/AccessLevels/cargo.yml index 4f42b57183..57244f1312 100644 --- a/Resources/Prototypes/AccessLevels/cargo.yml +++ b/Resources/Prototypes/AccessLevels/cargo.yml @@ -3,3 +3,6 @@ - type: accessLevel id: Cargo + +- type: accessLevel + id: Salvage diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/cargo.yml b/Resources/Prototypes/Catalog/Fills/Lockers/cargo.yml new file mode 100644 index 0000000000..9e3cebe5e0 --- /dev/null +++ b/Resources/Prototypes/Catalog/Fills/Lockers/cargo.yml @@ -0,0 +1,20 @@ +- type: entity + id: LockerSalvageSpecialistFilled + suffix: Filled + parent: LockerSalvageSpecialist + components: + - type: StorageFill + contents: +# Should be moved to a suit storage unit when/if they are added. + - id: ClothingOuterHardsuitSalvage + - id: YellowOxygenTank + - id: ClothingShoesBootsMag + - id: ClothingHeadHelmetHardsuitSalvage + - id: ClothingMaskGas +# Currently do not function as 'true' mesons, so they're useless for salvagers. +# - id: ClothingEyesGlassesMeson + - id: ClothingBeltUtilityFilled + - id: FlashlightSeclite + - id: SurvivalKnife + + diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_job.yml b/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_job.yml index bb5bdf7139..e773a43cd3 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_job.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_job.yml @@ -187,6 +187,19 @@ - id: ClothingHandsGlovesFingerless amount: 1 + - type: entity + id: WardrobeSalvageFilled + suffix: Filled + parent: WardrobeSalvage + components: + - type: StorageFill + contents: + - id: ClothingBackpack + amount: 1 + - id: ClothingShoesBootsSalvage + amount: 2 + - id: ClothingUniformJumpsuitSalvageSpecialist + amount: 2 # - type: entity # id: WardrobeAtmosphericsFilled diff --git a/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml b/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml index debbfa32c6..8c6c1a6cc4 100644 --- a/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml +++ b/Resources/Prototypes/Entities/Clothing/Shoes/boots.yml @@ -19,3 +19,15 @@ sprite: Clothing/Shoes/Boots/jackboots.rsi - type: Clothing sprite: Clothing/Shoes/Boots/jackboots.rsi + +- type: entity + parent: ClothingShoesBase + id: ClothingShoesBootsSalvage + name: salvage boots + description: Steel-toed salvage boots for salvaging in hazardous environments. + components: + - type: Sprite + sprite: Clothing/Shoes/Boots/explorer.rsi + - type: Clothing + sprite: Clothing/Shoes/Boots/explorer.rsi + diff --git a/Resources/Prototypes/Entities/Clothing/Uniforms/jumpsuits.yml b/Resources/Prototypes/Entities/Clothing/Uniforms/jumpsuits.yml index d2eee13dfa..9b7baa1ac7 100644 --- a/Resources/Prototypes/Entities/Clothing/Uniforms/jumpsuits.yml +++ b/Resources/Prototypes/Entities/Clothing/Uniforms/jumpsuits.yml @@ -53,6 +53,21 @@ - type: Clothing sprite: Clothing/Uniforms/Jumpsuit/cargotech.rsi +- type: entity + parent: ClothingUniformBase + id: ClothingUniformJumpsuitSalvageSpecialist + name: salvage specialist's jumpsuit + description: It's a snappy jumpsuit with a sturdy set of overalls. It is very dirty. + components: + - type: Sprite + sprite: Clothing/Uniforms/Jumpsuit/salvage.rsi + - type: Clothing + sprite: Clothing/Uniforms/Jumpsuit/salvage.rsi + - type: Armor + modifiers: + coefficients: + Blunt: 0.9 # Those overalls ARE sturdy. + - type: entity parent: ClothingUniformBase id: ClothingUniformJumpsuitChiefEngineer @@ -646,7 +661,7 @@ sprite: Clothing/Uniforms/Jumpsuit/lawyerpurple.rsi - type: Clothing sprite: Clothing/Uniforms/Jumpsuit/lawyerpurple.rsi - + - type: entity parent: ClothingUniformBase id: ClothingUniformJumpsuitPyjamaSyndicateBlack @@ -678,4 +693,4 @@ - type: Sprite sprite: Clothing/Uniforms/Jumpsuit/pyjamasyndicatered.rsi - type: Clothing - sprite: Clothing/Uniforms/Jumpsuit/pyjamasyndicatered.rsi \ No newline at end of file + sprite: Clothing/Uniforms/Jumpsuit/pyjamasyndicatered.rsi diff --git a/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml b/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml index 53392939a8..f89e829e2d 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml @@ -58,6 +58,18 @@ - state: green - state: cargo_tech +- type: entity + id: SpawnPointSalvageSpecialist + parent: SpawnPointJobBase + name: salvagespecialist + components: + - type: SpawnPoint + job_id: SalvageSpecialist + - type: Sprite + layers: + - state: green + - state: miner + # Civilian - type: entity diff --git a/Resources/Prototypes/Entities/Objects/Devices/pda.yml b/Resources/Prototypes/Entities/Objects/Devices/pda.yml index 720fb9de50..3105e946ef 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/pda.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/pda.yml @@ -203,6 +203,21 @@ - type: Icon state: pda-cargo +- type: entity + parent: BasePDA + id: SalvagePDA + name: salvage PDA + description: Smells like ash. + components: + - type: PDA + id: SalvageIDCard + - type: Appearance + visuals: + - type: PDAVisualizer + state: pda-miner + - type: Icon + state: pda-miner + - type: entity parent: BasePDA id: BartenderPDA diff --git a/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml b/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml index c72718561c..e95b745719 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml @@ -118,6 +118,18 @@ - type: PresetIdCard job: CargoTechnician +- type: entity + parent: IDCardStandard + id: SalvageIDCard + name: salvage ID card + components: + - type: Sprite + layers: + - state: default + - state: idshaftminer + - type: PresetIdCard + job: SalvageSpecialist + - type: entity parent: IDCardStandard id: QuartermasterIDCard diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml index c177f0c6f2..7e2296b5e5 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Melee/knife.yml @@ -88,3 +88,18 @@ size: 10 sprite: Objects/Weapons/Melee/combat_knife.rsi prefix: inhand + +- type: entity + name: survival knife + parent: CombatKnife + id: SurvivalKnife + description: Weapon of first and last resort for combatting space carp. + components: + - type: Sprite + sprite: Objects/Weapons/Melee/survival_knife.rsi + size: 2 + state: icon + - type: Item + size: 10 + sprite: Objects/Weapons/Melee/survival_knife.rsi + prefix: inhand diff --git a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/access.yml b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/access.yml index e9d356fa3d..aeb892242a 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/access.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/access.yml @@ -95,6 +95,14 @@ components: - type: AccessReader access: [["Cargo"]] + +- type: entity + parent: AirlockCargo + id: AirlockSalvageLocked + suffix: Salvage, Locked + components: + - type: AccessReader + access: [["Salvage"]] - type: entity parent: AirlockCargo @@ -296,7 +304,15 @@ components: - type: AccessReader access: [["Cargo"]] - + +- type: entity + parent: AirlockCargoGlass + id: AirlockSalvageGlassLocked + suffix: Salvage, Locked + components: + - type: AccessReader + access: [["Salvage"]] + - type: entity parent: AirlockCargoGlass id: AirlockQuartermasterGlassLocked diff --git a/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml b/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml index 277a0cb892..1537a5bc08 100644 --- a/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml +++ b/Resources/Prototypes/Entities/Structures/Storage/Closets/Lockers/lockers.yml @@ -34,6 +34,21 @@ - type: AccessReader access: [["Quartermaster"]] +- type: entity + id: LockerSalvageSpecialist + parent: LockerBase + name: salvage specialist's equipment + description: Nevermind the pickaxe. + components: + - type: Appearance + visuals: + - type: StorageVisualizer + state: mining + state_open: mining_open + state_closed: mining_door + - type: AccessReader + access: [["Salvage"]] + # Command - type: entity id: LockerCaptain diff --git a/Resources/Prototypes/Entities/Structures/Storage/Closets/wardrobe.yml b/Resources/Prototypes/Entities/Structures/Storage/Closets/wardrobe.yml index 6cf536ece3..e58d55547d 100644 --- a/Resources/Prototypes/Entities/Structures/Storage/Closets/wardrobe.yml +++ b/Resources/Prototypes/Entities/Structures/Storage/Closets/wardrobe.yml @@ -193,6 +193,12 @@ parent: WardrobePrison name: cargo wardrobe +- type: entity + id: WardrobeSalvage + parent: WardrobeMixed + name: salvage wardrobe + description: Notably not salvaged. + - type: entity id: WardrobeEngineering parent: WardrobeYellow diff --git a/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml b/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml index 73bb8d2a95..e854df3d81 100644 --- a/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml +++ b/Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml @@ -8,6 +8,7 @@ supervisors: "the head of personnel" access: - Cargo + - Salvage - Quartermaster - Maintenance - External diff --git a/Resources/Prototypes/Roles/Jobs/Cargo/salvage_specialist.yml b/Resources/Prototypes/Roles/Jobs/Cargo/salvage_specialist.yml new file mode 100644 index 0000000000..c47161be33 --- /dev/null +++ b/Resources/Prototypes/Roles/Jobs/Cargo/salvage_specialist.yml @@ -0,0 +1,24 @@ +- type: job + id: SalvageSpecialist + name: "salvage spationaut" + icon: "ShaftMiner" + startingGear: SalvageSpecialistGear + departments: + - Cargo + supervisors: "the quartermaster and head of personnel" + access: + - Cargo + - Salvage + - Maintenance + - External + +- type: startingGear + id: SalvageSpecialistGear + equipment: + jumpsuit: ClothingUniformJumpsuitSalvageSpecialist + back: ClothingBackpackFilled + shoes: ClothingShoesBootsSalvage + id: SalvagePDA + ears: ClothingHeadsetCargo + satchel: ClothingBackpackSatchelFilled + duffelbag: ClothingBackpackDuffelFilled diff --git a/Resources/Prototypes/Roles/Jobs/Command/captain.yml b/Resources/Prototypes/Roles/Jobs/Command/captain.yml index cedf91c673..9621655fa2 100644 --- a/Resources/Prototypes/Roles/Jobs/Command/captain.yml +++ b/Resources/Prototypes/Roles/Jobs/Command/captain.yml @@ -15,6 +15,7 @@ # Could probably do with some kind of wildcard or whatever to automate this. # HELL FUCKING YEAH WE COULD # Guys please don't fight + # Seriously though... - Captain - HeadOfPersonnel - ChiefEngineer @@ -28,6 +29,7 @@ - Engineering - Medical - Quartermaster + - Salvage - Cargo - Research - Service diff --git a/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml b/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml index 295fbe74ae..33574f8932 100644 --- a/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml +++ b/Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml @@ -15,6 +15,7 @@ - Security # HoPcurity strikes again - Service - Quartermaster + - Salvage - Cargo - Maintenance - Janitor diff --git a/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/equipped-FEET.png b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/equipped-FEET.png new file mode 100644 index 0000000000..496acfef2a Binary files /dev/null and b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/equipped-FEET.png differ diff --git a/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/icon.png b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/icon.png new file mode 100644 index 0000000000..29fa7bf97c Binary files /dev/null and b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/inhand-left.png b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/inhand-left.png new file mode 100644 index 0000000000..f7a74b73a5 Binary files /dev/null and b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/inhand-right.png b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/inhand-right.png new file mode 100644 index 0000000000..3240c04579 Binary files /dev/null and b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/meta.json b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/meta.json new file mode 100644 index 0000000000..53fe5af64d --- /dev/null +++ b/Resources/Textures/Clothing/Shoes/Boots/explorer.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/6236a0ddd1bd3c4e5574eb9fdebf4d79ccad2d2f", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-FEET", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/equipped-INNERCLOTHING.png b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/equipped-INNERCLOTHING.png new file mode 100644 index 0000000000..4befc44eea Binary files /dev/null and b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/equipped-INNERCLOTHING.png differ diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/icon.png b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/icon.png new file mode 100644 index 0000000000..860f3ea3a4 Binary files /dev/null and b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/icon.png differ diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/inhand-left.png b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/inhand-left.png new file mode 100644 index 0000000000..72b63752d1 Binary files /dev/null and b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/inhand-left.png differ diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/inhand-right.png b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/inhand-right.png new file mode 100644 index 0000000000..0cc45fa47a Binary files /dev/null and b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/inhand-right.png differ diff --git a/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/meta.json b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/meta.json new file mode 100644 index 0000000000..df7a468a95 --- /dev/null +++ b/Resources/Textures/Clothing/Uniforms/Jumpsuit/salvage.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/0a1ae39f0fb7353b0704f27d1599a567891f727c", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "equipped-INNERCLOTHING", + "directions": 4 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/equipped-BELT.png b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/equipped-BELT.png new file mode 100644 index 0000000000..288f9fbce5 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/equipped-BELT.png differ diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/icon.png b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/icon.png new file mode 100644 index 0000000000..8ec73e718b Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/icon.png differ diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/inhand-left.png b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/inhand-left.png new file mode 100644 index 0000000000..b2f253c30b Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/inhand-left.png differ diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/inhand-right.png new file mode 100644 index 0000000000..ac3aec2247 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/inhand-right.png differ diff --git a/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json new file mode 100644 index 0000000000..455734e044 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Melee/survival_knife.rsi/meta.json @@ -0,0 +1,26 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from /tg/station at commit https://github.com/tgstation/tgstation/commit/6cdc0503d32e249125151e369edf951e93bccd1a", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "equipped-BELT", + "directions": 4 + } + ] +}