Storage Component ECS (#7530)

Co-authored-by: fishfish458 <fishfish458>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
Fishfish458
2022-04-28 06:11:15 -06:00
committed by GitHub
parent f403311641
commit 4c9e45a480
38 changed files with 892 additions and 1163 deletions

View File

@@ -5,8 +5,7 @@
description: A cardboard box for storing things.
components:
- type: Sprite
layers:
- state: box
state: box
- type: entity
name: lightbulb box

View File

@@ -15,8 +15,10 @@
sprite: Clothing/Back/Backpacks/backpack.rsi
- type: Storage
capacity: 100
storageSoundCollection:
collection: storageRustle
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface
- type: entity
parent: ClothingBackpack
@@ -116,7 +118,7 @@
sprite: Clothing/Back/Backpacks/science.rsi
- type: Clothing
sprite: Clothing/Back/Backpacks/science.rsi
- type: entity
parent: ClothingBackpack
id: ClothingBackpackVirology

View File

@@ -15,8 +15,10 @@
- back
- type: Storage
capacity: 100
storageSoundCollection:
collection: storageRustle
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface
- type: entity
parent: ClothingBackpackDuffel

View File

@@ -15,9 +15,11 @@
sprite: Clothing/Back/Satchels/satchel.rsi
- type: Storage
capacity: 100
storageSoundCollection:
collection: storageRustle
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface
- type: entity
parent: ClothingBackpackSatchel
id: ClothingBackpackSatchelEngineering

View File

@@ -62,6 +62,10 @@
visuals:
- type: MappedItemVisualizer
sprite: Clothing/Belt/belt_overlay.rsi
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface
- type: entity
parent: ClothingBeltBase

View File

@@ -9,6 +9,18 @@
- type: Sprite
state: icon
- type: entity
abstract: true
parent: ClothingOuterBase
id: ClothingOuterStorageBase
components:
- type: Storage
capacity: 10
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface
- type: entity
abstract: true
parent: ClothingOuterBase

View File

@@ -1,5 +1,5 @@
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatBomber
name: bomber jacket
description: A thick, well-worn WW2 leather bomber jacket.
@@ -8,11 +8,9 @@
sprite: Clothing/OuterClothing/Coats/bomber.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/bomber.rsi
- type: Storage
capacity: 10
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatDetective
name: detective trenchcoat
description: A rugged canvas trenchcoat, designed and created by TX Fabrication Corp. The coat is externally impact resistant - perfect for your next act of autodefenestration!
@@ -21,8 +19,6 @@
sprite: Clothing/OuterClothing/Coats/detective.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/detective.rsi
- type: Storage
capacity: 10
- type: Armor
modifiers:
coefficients:
@@ -32,7 +28,7 @@
Heat: 0.9
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatGentle
name: gentle coat
description: A gentle coat for a gentle man, or woman.
@@ -41,11 +37,9 @@
sprite: Clothing/OuterClothing/Coats/gentlecoat.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/gentlecoat.rsi
- type: Storage
capacity: 10
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatHoSTrench
name: head of security's trenchcoat
description: This trenchcoat was specifically designed for asserting superior authority.
@@ -54,8 +48,6 @@
sprite: Clothing/OuterClothing/Coats/hos_trenchcoat.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/hos_trenchcoat.rsi
- type: Storage
capacity: 10
- type: Armor
modifiers:
coefficients:
@@ -65,7 +57,7 @@
Heat: 0.7
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatInspector
name: inspectors coat
description: A strict inspector coat for being intimidating during inspections.
@@ -74,11 +66,9 @@
sprite: Clothing/OuterClothing/Coats/insp_coat.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/insp_coat.rsi
- type: Storage
capacity: 10
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatJensen
name: jensen coat
description: A jensen coat.
@@ -87,11 +77,9 @@
sprite: Clothing/OuterClothing/Coats/jensencoat.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/jensencoat.rsi
- type: Storage
capacity: 10
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatLab
name: lab coat
description: A suit that protects against minor chemical spills.
@@ -100,11 +88,9 @@
sprite: Clothing/OuterClothing/Coats/labcoat.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/labcoat.rsi
- type: Storage
capacity: 10
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatLabChem
name: lab coat (chem)
description: A suit that protects against minor chemical spills. Has an orange stripe on the shoulder.
@@ -113,11 +99,9 @@
sprite: Clothing/OuterClothing/Coats/labcoat_chem.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/labcoat_chem.rsi
- type: Storage
capacity: 10
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatLabCmo
name: chief medical officer's lab coat
description: Bluer than the standard model.
@@ -126,11 +110,9 @@
sprite: Clothing/OuterClothing/Coats/labcoat_cmo.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/labcoat_cmo.rsi
- type: Storage
capacity: 10
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatPirate
name: pirate garb
description: Yarr.
@@ -139,11 +121,9 @@
sprite: Clothing/OuterClothing/Coats/pirate.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/pirate.rsi
- type: Storage
capacity: 10
- type: entity
parent: ClothingOuterBase
parent: ClothingOuterStorageBase
id: ClothingOuterCoatWarden
name: warden's armored jacket
description: A sturdy, utilitarian jacket designed to protect a warden from any brig-bound threats.
@@ -152,8 +132,6 @@
sprite: Clothing/OuterClothing/Coats/warden.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Coats/warden.rsi
- type: Storage
capacity: 10
- type: Armor
modifiers:
coefficients:

View File

@@ -307,7 +307,7 @@
- type: entity
id: DrinkCanPack
parent: BaseItem
parent: BaseStorageItem
name: 6pack
components:
- type: Sprite

View File

@@ -6,7 +6,7 @@
# an alpha color which -Y- said he would implement.
- type: entity
parent: BaseItem
parent: BoxCardboard
id: FoodBoxDonut
name: donut box
description: Mmm, Donuts.
@@ -50,7 +50,7 @@
# Egg
- type: entity
parent: BaseItem
parent: BoxCardboard
id: FoodContainerEgg
name: egg carton
description: Don't drop 'em!
@@ -66,6 +66,7 @@
- Egg
- type: Item
sprite: Objects/Consumable/Food/egg.rsi
state: box-closed
size: 12
- type: StorageFill
contents:
@@ -138,7 +139,7 @@
# Since you could open pizza boxes in the stack.
- type: entity
parent: BaseItem
parent: BoxCardboard
id: FoodBoxPizza
name: pizza box
components:
@@ -219,7 +220,7 @@
# Nugget
- type: entity
parent: BaseItem
parent: BoxCardboard
id: FoodBoxNugget
name: chicken nuggets
description: You suddenly have an urge to trade on the intergalactic stock market.
@@ -258,7 +259,7 @@
# Donkpocket
- type: entity
parent: BaseItem
parent: BoxCardboard
id: FoodBoxDonkpocket
name: box of donk-pockets
description: 'Instructions: Heat in microwave. Product will cool if not eaten within seven minutes.'

View File

@@ -1,6 +1,6 @@
- type: entity
id: CigPackBase
parent: BaseItem
parent: BaseStorageItem
name: cigarette pack
abstract: true
components:

View File

@@ -1,5 +1,5 @@
- type: entity
parent: BaseItem
parent: BaseStorageItem
name: pack of rolling paper
id: PackPaperRolling
description: A pack of thin pieces of paper used to make fine smokeables.

View File

@@ -1,6 +1,6 @@
- type: entity
id: CigarCase
parent: BaseItem
parent: BaseStorageItem
name: cigar case
description: A case for holding your cigars when you are not smoking them.
components:

View File

@@ -1,5 +1,5 @@
- type: entity
parent: BaseItem
parent: BaseStorageItem
id: DiceBag
name: bag of dice
description: Contains all the luck you'll ever need.

View File

@@ -1,6 +1,6 @@
- type: entity
id: BoxBase
parent: BaseItem
parent: BaseStorageItem
abstract: true
components:
- type: Sprite

View File

@@ -1,5 +1,5 @@
- type: entity
parent: BaseItem
parent: BaseStorageItem
abstract: true
id: BriefcaseBase
description: Useful for carrying items in your hands.
@@ -8,8 +8,6 @@
size: 60
- type: Storage
capacity: 60
storageSoundCollection:
collection: storageRustle
- type: entity
name: brown briefcase

View File

@@ -1,7 +1,7 @@
- type: entity
name: bible
description: New Interstellar Version 2340
parent: BaseItem
parent: BaseStorageItem
id: Bible
components:
- type: Bible
@@ -31,9 +31,11 @@
- Belt
- type: Storage
capacity: 10
storageSoundCollection:
collection: storageRustle
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface
- type: entity
parent: Bible
name: necronomicon

View File

@@ -109,7 +109,7 @@
- type: entity
name: plant bag
id: PlantBag
parent: BaseItem
parent: BaseStorageItem
description: A bag for botanists to easily move their huge harvests.
components:
- type: Sprite

View File

@@ -205,6 +205,10 @@
maxFillLevels: 3
fillBaseName: cart_water_
changeColor: false
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface
- type: entity

View File

@@ -1,7 +1,7 @@
- type: entity
name: trash bag
id: TrashBag
parent: BaseItem
parent: BaseStorageItem
components:
- type: Sprite
netSync: false
@@ -16,7 +16,9 @@
capacity: 125
quickInsert: true
areaInsert: true
storageSoundCollection:
storageOpenSound:
collection: trashBagRustle
storageInsertSound:
collection: trashBagRustle
whitelist:
tags:
@@ -55,5 +57,3 @@
quickInsert: true
areaInsert: true
areaInsertRadius: 1000
storageSoundCollection:
collection: trashBagRustle

View File

@@ -1,7 +1,7 @@
- type: entity
name: first aid kit
description: It's an emergency medical kit for those serious boo-boos.
parent: BaseItem
parent: BaseStorageItem
id: Medkit
components:
- type: Sprite

View File

@@ -279,7 +279,7 @@
- type: entity
name: pill canister
id: PillCanister
parent: BaseItem
parent: BaseStorageItem
description: Holds up to 12 pills.
components:
- type: Sprite

View File

@@ -1,6 +1,6 @@
- type: entity
id: SmallboxItem
parent: BaseItem
parent: BaseStorageItem
abstract: true
components:
- type: Storage

View File

@@ -1,6 +1,6 @@
- type: entity
id: ToolboxBase
parent: BaseItem
parent: BaseStorageItem
abstract: true
components:
- type: Sprite

View File

@@ -1,6 +1,6 @@
- type: entity
name: improvised pneumatic cannon
parent: BaseItem
parent: BaseStorageItem
id: ImprovisedPneumaticCannon
description: Improvised using nothing but a pipe, some zipties, and a pneumatic cannon.
components:
@@ -30,7 +30,7 @@
- type: entity
name: pie cannon
parent: BaseItem
parent: BaseStorageItem
id: LauncherCreamPie
description: Load cream pie for optimal results.
components:
@@ -43,7 +43,9 @@
components:
- CreamPie
clickInsert: false
storageSoundCollection:
storageOpenSound:
collection: BikeHorn
storageInsertSound:
collection: BikeHorn
capacity: 40
- type: PneumaticCannon

View File

@@ -35,3 +35,15 @@
drawdepth: Items
noRot: false
- type: Pullable
- type: entity
name: "storage item"
id: BaseStorageItem
parent: BaseItem
abstract: true
components:
- type: Storage
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface