Adds mapped storage for lots of entities + a botanical belt (#4342)

* Cleans up belt stuff and some sprites

* Tag cleanup and sheathed sword

* Adds plant belt for botany chads and maps it's items

* CE belt, will most likely child it to utility instead

* Merges belt_icon and belt_mob into the same RSI

* Cut out alpha layers for wirecutters

* Added lots of equipped-BELT sprites for various items

* Medical, Janitor, Security, Assault, Chief Engineer, Utility and Botany have mapped storage layers

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
Swept
2021-07-25 00:21:18 -07:00
committed by GitHub
parent 93acc565f0
commit c55f3fd478
145 changed files with 859 additions and 471 deletions

View File

@@ -1,72 +1,167 @@
- type: entity
parent: ClothingBeltBase
id: ClothingBeltAssault
name: assault belt
description: "A tactical assault belt."
components:
- type: Sprite
sprite: Clothing/Belt/assault.rsi
- type: Clothing
sprite: Clothing/Belt/assault.rsi
- type: Storage
capacity: 40
# Belts that need/have visualizers
- type: entity
parent: ClothingBeltBase
id: ClothingBeltBandolier
name: bandolier
description: "A bandolier for holding shotgun ammunition."
id: ClothingBeltUtility
name: utility belt
description: Can hold various things.
components:
- type: Sprite
sprite: Clothing/Belt/bandolier.rsi
sprite: Clothing/Belt/utility.rsi
- type: Clothing
sprite: Clothing/Belt/bandolier.rsi
sprite: Clothing/Belt/utility.rsi
- type: Storage
capacity: 40
# TODO: Fill this out more.
# whitelist:
# tags:
# - Wirecutter
# - Crowbar
# - CrowbarRed
# - Screwdriver
# - Flashlight
# - Welder
# - Wrench
# - Painter
# - GeigerCounter
# - Flare
# - Coilsofwire
# -
# -
# components:
# - SignalLinker
- type: ItemCounter
mapLayers:
cutters_red:
whitelist:
tags:
- Wirecutter
crowbar:
whitelist:
tags:
- Crowbar
crowbar_red:
whitelist:
tags:
- CrowbarRed
screwdriver_nuke:
whitelist:
tags:
- Screwdriver
wrench:
whitelist:
tags:
- Wrench
multitool:
whitelist:
components:
- SignalLinker
- type: Appearance
visuals:
- type: MappedItemVisualizer
sprite: Clothing/Belt/belt_overlay.rsi
- type: entity
parent: ClothingBeltBase
id: ClothingBeltChiefEngineer
name: chief's toolbelt
description: "Holds tools, looks snazzy."
name: chief's toolbelt
description: Holds tools, looks snazzy.
components:
- type: Sprite
sprite: Clothing/Belt/ce.rsi
- type: Clothing
sprite: Clothing/Belt/ce.rsi
- type: Storage
# TODO: Fill this out more.
# whitelist:
# tags:
# - Wirecutter
# - Crowbar
# - CrowbarRed
# - Screwdriver
# - Flashlight
# - Welder
# - Wrench
# - Painter
# - GeigerCounter
# - Flare
# - Coilsofwire
# -
# -
# components:
# - SignalLinker
capacity: 100
- type: ItemCounter
mapLayers:
drill:
whitelist:
tags:
- Powerdrill
cutters_red:
whitelist:
tags:
- Wirecutter
crowbar:
whitelist:
tags:
- Crowbar
crowbar_red:
whitelist:
tags:
- CrowbarRed
jaws:
whitelist:
tags:
- JawsOfLife
screwdriver_nuke:
whitelist:
tags:
- Screwdriver
multitool:
whitelist:
components:
- SignalLinker
wrench:
whitelist:
tags:
- Wrench
- type: Appearance
visuals:
- type: MappedItemVisualizer
sprite: Clothing/Belt/belt_overlay.rsi
- type: entity
parent: ClothingBeltBase
id: ClothingBeltChampion
name: championship belt
description: "Proves to the world that you are the strongest!"
id: ClothingBeltAssault
name: assault belt
description: A tactical assault belt.
components:
- type: Sprite
sprite: Clothing/Belt/champion.rsi
sprite: Clothing/Belt/assault.rsi
- type: Clothing
sprite: Clothing/Belt/champion.rsi
QuickEquip: true
- type: entity
parent: ClothingBeltBase
id: ClothingBeltHolster
name: shoulder holster
description: "A holster to carry a handgun and ammo. WARNING: Badasses only."
components:
- type: Sprite
sprite: Clothing/Belt/holster.rsi
- type: Clothing
sprite: Clothing/Belt/holster.rsi
sprite: Clothing/Belt/assault.rsi
- type: Storage
capacity: 20
capacity: 40
- type: ItemCounter
mapLayers:
flashbang:
whitelist:
components:
- FlashExplosive
stunbaton:
whitelist:
components:
- Stunbaton
- type: Appearance
visuals:
- type: MappedItemVisualizer
sprite: Clothing/Belt/belt_overlay.rsi
- type: entity
parent: ClothingBeltBase
id: ClothingBeltJanitor
name: janibelt
description: "A belt used to hold most janitorial supplies."
name: janibelt
description: A belt used to hold most janitorial supplies.
components:
- type: Sprite
sprite: Clothing/Belt/janitor.rsi
@@ -74,12 +169,26 @@
sprite: Clothing/Belt/janitor.rsi
- type: Storage
capacity: 40
- type: ItemCounter
mapLayers:
bottle:
whitelist:
tags:
- Bottle
bottle_spray:
whitelist:
tags:
- Spray
- type: Appearance
visuals:
- type: MappedItemVisualizer
sprite: Clothing/Belt/belt_overlay.rsi
- type: entity
parent: ClothingBeltBase
id: ClothingBeltMedical
name: medical belt
description: "Can hold various medical equipment."
name: medical belt
description: Can hold various medical equipment.
components:
- type: Sprite
sprite: Clothing/Belt/medical.rsi
@@ -87,12 +196,99 @@
sprite: Clothing/Belt/medical.rsi
- type: Storage
capacity: 40
- type: ItemCounter
mapLayers:
bottle:
whitelist:
tags:
- Bottle
hypo:
whitelist:
components:
- Hypospray
pill:
whitelist:
components:
- Pill
bottle_spray:
whitelist:
tags:
- Spray
# spray_med:
# whitelist:
# tags:
# - SprayMedical
# wrench_medical:
# whitelist:
# tags:
# - WrenchMedical
wrench:
whitelist:
tags:
- Wrench
- type: Appearance
visuals:
- type: MappedItemVisualizer
sprite: Clothing/Belt/belt_overlay.rsi
- type: entity
parent: ClothingBeltBase
id: ClothingBeltPlant
name: botanical belt
description: A belt used to hold most hydroponics supplies. Suprisingly, not green.
components:
- type: Sprite
sprite: Clothing/Belt/plant.rsi
- type: Clothing
sprite: Clothing/Belt/plant.rsi
- type: Storage
# whitelist:
# tags:
# - BotanyHoe
# - PlantAnalyzer
# - BotanyHoe
# - BotanyShovel
# - PlantBGone
# - Bottle
# components:
# - Seed
capacity: 40
- type: ItemCounter
mapLayers:
hatchet:
whitelist:
tags:
- BotanyHatchet
hydro:
whitelist:
tags:
- PlantAnalyzer # Dunno what to put here, should be aight.
hoe:
whitelist:
tags:
- BotanyHoe
secateurs: # We don't have secateurs and this looks similar enough.
whitelist:
tags:
- BotanyShovel
plantbgone:
whitelist:
tags:
- PlantBGone
bottle:
whitelist:
tags:
- Bottle
- type: Appearance
visuals:
- type: MappedItemVisualizer
sprite: Clothing/Belt/belt_overlay.rsi
- type: entity
parent: ClothingBeltBase
id: ClothingBeltSecurity
name: security belt
description: "Can hold security gear like handcuffs and flashes."
name: security belt
description: Can hold security gear like handcuffs and flashes.
components:
- type: Sprite
sprite: Clothing/Belt/security.rsi
@@ -100,38 +296,26 @@
sprite: Clothing/Belt/security.rsi
- type: Storage
capacity: 40
- type: entity
parent: ClothingBeltBase
id: ClothingBeltSecurityWebbing
name: security webbing
description: "Unique and versatile chest rig, can hold security gear."
components:
- type: Sprite
sprite: Clothing/Belt/securitywebbing.rsi
- type: Clothing
sprite: Clothing/Belt/securitywebbing.rsi
- type: Storage
capacity: 40
- type: entity
parent: ClothingBeltBase
id: ClothingBeltMilitaryWebbing
name: chest rig
description: "A set of tactical webbing worn by Syndicate boarding parties."
components:
- type: Sprite
sprite: Clothing/Belt/militarywebbing.rsi
- type: Clothing
sprite: Clothing/Belt/militarywebbing.rsi
- type: Storage
capacity: 40
- type: ItemCounter
mapLayers:
flashbang:
whitelist:
components:
- FlashExplosive
stunbaton:
whitelist:
components:
- Stunbaton
- type: Appearance
visuals:
- type: MappedItemVisualizer
sprite: Clothing/Belt/belt_overlay.rsi
- type: entity
parent: ClothingBeltBase
id: ClothingBeltSheath
name: sabre sheath
description: "An ornate sheath designed to hold an officer's blade."
name: sabre sheath
description: An ornate sheath designed to hold an officer's blade.
components:
- type: Sprite
sprite: Clothing/Belt/sheath.rsi
@@ -143,12 +327,87 @@
- type: StorageFill
contents:
- id: CaptainSabre
- type: ItemCounter
mapLayers:
sheath-sabre:
whitelist:
tags:
- CaptainSabre
- type: Appearance
visuals:
- type: MappedItemVisualizer
# Belts without visualizers
- type: entity
parent: ClothingBeltBase
id: ClothingBeltBandolier
name: bandolier
description: A bandolier for holding shotgun ammunition.
components:
- type: Sprite
sprite: Clothing/Belt/bandolier.rsi
- type: Clothing
sprite: Clothing/Belt/bandolier.rsi
- type: Storage
capacity: 40
- type: entity
parent: ClothingBeltBase
id: ClothingBeltChampion
name: championship belt
description: Proves to the world that you are the strongest!
components:
- type: Sprite
sprite: Clothing/Belt/champion.rsi
- type: Clothing
sprite: Clothing/Belt/champion.rsi
QuickEquip: true
- type: entity
parent: ClothingBeltBase
id: ClothingBeltHolster
name: shoulder holster
description: 'A holster to carry a handgun and ammo. WARNING: Badasses only.'
components:
- type: Sprite
sprite: Clothing/Belt/holster.rsi
- type: Clothing
sprite: Clothing/Belt/holster.rsi
- type: Storage
capacity: 20
- type: entity
parent: ClothingBeltBase
id: ClothingBeltSecurityWebbing
name: security webbing
description: Unique and versatile chest rig, can hold security gear.
components:
- type: Sprite
sprite: Clothing/Belt/securitywebbing.rsi
- type: Clothing
sprite: Clothing/Belt/securitywebbing.rsi
- type: Storage
capacity: 40
- type: entity
parent: ClothingBeltBase
id: ClothingBeltMilitaryWebbing
name: chest rig
description: A set of tactical webbing worn by Syndicate boarding parties.
components:
- type: Sprite
sprite: Clothing/Belt/militarywebbing.rsi
- type: Clothing
sprite: Clothing/Belt/militarywebbing.rsi
- type: Storage
capacity: 40
- type: entity
parent: ClothingBeltBase
id: ClothingBeltSuspenders
name: suspenders
description: "For holding your pants up."
description: For holding your pants up.
components:
- type: Sprite
sprite: Clothing/Belt/suspenders.rsi
@@ -156,16 +415,3 @@
- type: Clothing
sprite: Clothing/Belt/suspenders.rsi
QuickEquip: true
- type: entity
parent: ClothingBeltBase
id: ClothingBeltUtility
name: utility belt
description: "Can hold various things."
components:
- type: Sprite
sprite: Clothing/Belt/utility.rsi
- type: Clothing
sprite: Clothing/Belt/utility.rsi
- type: Storage
capacity: 40

View File

@@ -3,5 +3,7 @@
parent: BaseItem
id: Clothing
components:
- type: Sprite
netsync: false
- type: Clothing
size: 5

View File

@@ -1,30 +1,3 @@
- type: Tag
id: Crayon
- type: Tag
id: CrayonBlack
- type: Tag
id: CrayonBlue
- type: Tag
id: CrayonGreen
- type: Tag
id: CrayonOrange
- type: Tag
id: CrayonPurple
- type: Tag
id: CrayonRed
- type: Tag
id: CrayonWhite
- type: Tag
id: CrayonYellow
- type: entity
abstract: true
parent: BaseItem
@@ -237,4 +210,3 @@
- type: Appearance
visuals:
- type: MappedItemVisualizer

View File

@@ -5,6 +5,9 @@
description: Kills those pesky weeds!
suffix: "Filled"
components:
- type: Tag
tags:
- PlantBGone
- type: Sprite
sprite: Objects/Tools/Hydroponics/sprays.rsi
state: plantbgone

View File

@@ -7,6 +7,7 @@
- type: Tag
tags:
- Hoe
- BotanyHoe
- type: Sprite
sprite: Objects/Tools/Hydroponics/hoe.rsi
state: icon
@@ -40,6 +41,7 @@
components:
- type: Tag
tags:
- BotanyHatchet
- BotanySharp
- type: Sprite
sprite: Objects/Tools/Hydroponics/hatchet.rsi
@@ -58,6 +60,7 @@
- type: Tag
tags:
- Shovel
- BotanyShovel
- type: Sprite
sprite: Objects/Tools/Hydroponics/spade.rsi
state: icon

View File

@@ -5,6 +5,9 @@
suffix: Empty
description: A spray bottle with an unscrewable top.
components:
- type: Tag
tags:
- Spray
- type: Sprite
netsync: false
sprite: Objects/Specific/Janitorial/janitorial.rsi
@@ -29,12 +32,12 @@
suffix: Filled
parent: SprayBottle
components:
- type: SolutionContainer
maxVol: 100
contents:
reagents:
- ReagentId: Water
Quantity: 100
- type: SolutionContainer
maxVol: 100
contents:
reagents:
- ReagentId: Water
Quantity: 100
- type: entity
name: space cleaner
@@ -43,12 +46,12 @@
parent: SprayBottle
suffix: ""
components:
- type: SolutionContainer
maxVol: 100
contents:
reagents:
- ReagentId: SpaceCleaner
Quantity: 100
- type: SolutionContainer
maxVol: 100
contents:
reagents:
- ReagentId: SpaceCleaner
Quantity: 100
# Vapor

View File

@@ -4,12 +4,12 @@
description: A sterile injector for rapid administration of drugs to patients.
id: Hypospray
components:
- type: Sprite
sprite: Objects/Specific/Medical/hypospray.rsi
state: hypo
- type: Item
sprite: Objects/Specific/Medical/hypospray.rsi
- type: SolutionContainer
maxVol: 30
caps: Refillable, CanExamine
- type: Hypospray
- type: Sprite
sprite: Objects/Specific/Medical/hypospray.rsi
state: hypo
- type: Item
sprite: Objects/Specific/Medical/hypospray.rsi
- type: SolutionContainer
maxVol: 30
caps: Refillable, CanExamine
- type: Hypospray

View File

@@ -5,6 +5,9 @@
abstract: true
description: A small bottle.
components:
- type: Tag
tags:
- Bottle
- type: Sprite
sprite: Objects/Specific/Chemistry/bottle.rsi
netsync: false
@@ -29,7 +32,7 @@
sprite: Objects/Specific/Chemistry/bottle.rsi
layers:
- state: bottle-1
- state: bottle-1-1
- state: bottle-1-1
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
- type: Appearance
@@ -47,7 +50,7 @@
sprite: Objects/Specific/Chemistry/bottle.rsi
layers:
- state: bottle-2
- state: bottle-2-1
- state: bottle-2-1
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
- type: Appearance
@@ -65,7 +68,7 @@
sprite: Objects/Specific/Chemistry/bottle.rsi
layers:
- state: bottle-3
- state: bottle-3-1
- state: bottle-3-1
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
- type: Appearance
@@ -83,7 +86,7 @@
sprite: Objects/Specific/Chemistry/bottle.rsi
layers:
- state: bottle-4
- state: bottle-4-1
- state: bottle-4-1
map: ["enum.SolutionContainerLayers.Fill"]
visible: false
- type: Appearance

View File

@@ -4,30 +4,33 @@
id: JawsOfLife
description: A set of jaws of life, compressed through the magic of science.
components:
- type: Sprite
sprite: Objects/Tools/jaws_of_life.rsi
state: jaws_pry
- type: Clothing
sprite: Objects/Tools/jaws_of_life.rsi
size: 50
QuickEquip: false
Slots:
- Belt
- type: TilePrying
- type: Tool
qualities:
- Prying
statusShowBehavior: true
- type: MultiTool
tools:
- behavior: Prying
state: jaws_pry
useSound: /Audio/Items/jaws_pry.ogg
changeSound: /Audio/Items/change_jaws.ogg
- behavior: Cutting
state: jaws_cutter
useSound: /Audio/Items/jaws_cut.ogg
changeSound: /Audio/Items/change_jaws.ogg
- type: Tag
tags:
- JawsOfLife
- type: Sprite
sprite: Objects/Tools/jaws_of_life.rsi
state: jaws_pry
- type: Clothing
sprite: Objects/Tools/jaws_of_life.rsi
size: 50
QuickEquip: false
Slots:
- Belt
- type: TilePrying
- type: Tool
qualities:
- Prying
statusShowBehavior: true
- type: MultiTool
tools:
- behavior: Prying
state: jaws_pry
useSound: /Audio/Items/jaws_pry.ogg
changeSound: /Audio/Items/change_jaws.ogg
- behavior: Cutting
state: jaws_cutter
useSound: /Audio/Items/jaws_cut.ogg
changeSound: /Audio/Items/change_jaws.ogg
- type: entity
name: syndicate jaws of life
@@ -35,11 +38,11 @@
id: SyndicateJawsOfLife
description: Useful for entering the station or its departments.
components:
- type: Sprite
state: syn_jaws_pry
- type: MultiTool
tools:
- behavior: Prying
state: syn_jaws_pry
- behavior: Cutting
state: syn_jaws_cutter
- type: Sprite
state: syn_jaws_pry
- type: MultiTool
tools:
- behavior: Prying
state: syn_jaws_pry
- behavior: Cutting
state: syn_jaws_cutter

View File

@@ -7,6 +7,7 @@
- type: Tag
tags:
- PlantSampleTaker
- Wirecutter
- type: Sprite
sprite: Objects/Tools/wirecutters.rsi
layers:
@@ -37,6 +38,9 @@
id: Screwdriver
description: Industrial grade torque in a small screwdriving package.
components:
- type: Tag
tags:
- Screwdriver
- type: Sprite
sprite: Objects/Tools/screwdriver.rsi
layers:
@@ -67,6 +71,9 @@
id: Wrench
description: A common tool for assembly and disassembly, righty tighty lefty loosey.
components:
- type: Tag
tags:
- Wrench
- type: Sprite
sprite: Objects/Tools/wrench.rsi
state: icon
@@ -86,6 +93,9 @@
id: Crowbar
description: A multipurpose tool to pry open doors and fight interdimensional invaders.
components:
- type: Tag
tags:
- Crowbar
- type: Sprite
sprite: Objects/Tools/crowbar.rsi
state: icon
@@ -107,6 +117,9 @@
id: CrowbarRed
description: A multipurpose tool to pry open doors and fight interdimensional invaders.
components:
- type: Tag
tags:
- CrowbarRed
- type: Sprite
sprite: Objects/Tools/crowbar_red.rsi
state: icon
@@ -151,26 +164,29 @@
id: PowerDrill
description: A simple powered hand drill.
components:
- type: Sprite
sprite: Objects/Tools/drill.rsi
state: drill_screw
- type: Item
sprite: Objects/Tools/drill.rsi
size: 20
- type: Tool
qualities:
- Screwing
statusShowBehavior: true
- type: MultiTool
tools:
- behavior: Screwing
state: drill_screw
useSound: /Audio/Items/drill_use.ogg
changeSound: /Audio/Items/change_drill.ogg
- behavior: Anchoring
state: drill_bolt
useSound: /Audio/Items/drill_use.ogg
changeSound: /Audio/Items/change_drill.ogg
- type: Tag
tags:
- Powerdrill
- type: Sprite
sprite: Objects/Tools/drill.rsi
state: drill_screw
- type: Item
sprite: Objects/Tools/drill.rsi
size: 20
- type: Tool
qualities:
- Screwing
statusShowBehavior: true
- type: MultiTool
tools:
- behavior: Screwing
state: drill_screw
useSound: /Audio/Items/drill_use.ogg
changeSound: /Audio/Items/change_drill.ogg
- behavior: Anchoring
state: drill_bolt
useSound: /Audio/Items/drill_use.ogg
changeSound: /Audio/Items/change_drill.ogg
- type: entity
name: RCD
@@ -208,13 +224,13 @@
id: Shovel
description: A large tool for digging and moving dirt.
components:
- type: Tag
tags:
- Shovel
- type: Sprite
sprite: Objects/Tools/shovel.rsi
state: icon
- type: ItemCooldown
- type: MeleeWeapon
- type: Item
sprite: Objects/Tools/shovel.rsi
- type: Tag
tags:
- Shovel
- type: Sprite
sprite: Objects/Tools/shovel.rsi
state: icon
- type: ItemCooldown
- type: MeleeWeapon
- type: Item
sprite: Objects/Tools/shovel.rsi

View File

@@ -13,6 +13,9 @@
size: 15
sprite: Objects/Weapons/Melee/captain_sabre.rsi
prefix: inhand
- type: Tag
tags:
- CaptainSabre
- type: entity
name: katana