Cleanup of circuit tote / stamp box prototypes + added small cardboard boxes as a general item (#41335)

* Cleanup of circuit tote / stamp box prototypes

* New BoxCardboardSmall abstract prototype, stamp box uses this as a parent now

* Removed stamp box whitelist

* Whitelist fix

* We love scope creep! Small cardboard boxes are a general thing now.

* Box description updates

* Box description updates 2!

* Prototype order cleanup

* Comment updates

* Desc touchup

* Review updates

* StorageFill -> ContainerFill

* code  comment update

* decapitalized labels

* Code comment update

* Whoops! Forgot to update one ContainerFill to EntityTableContainerFill when fixing merge conflict

* Whoops! EntityTableContainerFill items were all formatted wrong

* Departmental box names

* Misc fixes

* Whoops, forgot to remove some labels
This commit is contained in:
Hitlinemoss
2025-12-19 01:51:27 -05:00
committed by GitHub
parent d88bc489ae
commit 444991fbd0
6 changed files with 166 additions and 141 deletions

View File

@@ -1,4 +1,5 @@
construction-recipe-crate-freezer = crate freezer
construction-recipe-big-box = large cardboard box
construction-recipe-box-cardboard = small cardboard box
construction-recipe-box-cardboard = cardboard box
construction-recipe-box-cardboard-small = small cardboard box
construction-recipe-box-tote = circuit tote

View File

@@ -1,17 +1,37 @@
- type: entity
name: cardboard box
parent: BoxBase
id: BoxCardboard
name: cardboard box
description: A cardboard box for storing things.
components:
- type: Item
size: Large
shape:
- 0,0,2,2
- type: Storage
maxItemSize: Small
grid:
- 0,0,2,2
- type: Construction
graph: BoxCardboard
node: boxcardboard
containers:
- storagebase
- type: PhysicalComposition
materialComposition:
Cardboard: 100
- type: Sprite
state: box
- type: Tag
tags:
- BoxCardboard
- type: entity
parent: BoxBaseSmall
id: BoxCardboardSmall
name: small cardboard box
description: A small cardboard box for storing things.
components:
- type: Construction
graph: BoxCardboardSmall # Half the material cost of the "regular" cardboardbox
node: boxcardboardsmall
containers:
- storagebase
- type: PhysicalComposition # Half of the "regular" cardboard box
materialComposition:
Cardboard: 50
- type: Sprite
state: box
- type: Tag
@@ -161,6 +181,17 @@
- state: box
- state: headset
- type: entity
parent: BoxCardboardSmall
id: BoxStamps
name: stamp box
description: A small box containing stamps.
components: # Baking a "default" EntityTableContainerFill into this prototype seems like bad practice, so this is currently an empty box. If you need a new type of prefilled stamp box, create a new child prototype with the appropriate stamps!
- type: Sprite
layers:
- state: box
- state: stamp
- type: entity
name: meson box
parent: BoxCardboard

View File

@@ -1,8 +1,84 @@
- type: entity
name: circuit tote [QM]
parent: ToteBase
id: BoxCaptainCircuitboards
name: bridge circuit tote
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: CommsComputerCircuitboard
- id: StationRecordsComputerCircuitboard
- type: entity
parent: ToteBase
id: BoxCECircuitboards
name: engineering circuit tote
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: CargoRequestEngineeringComputerCircuitboard
- id: AlertsComputerCircuitboard
- id: AtmosMonitoringComputerCircuitboard
- id: PowerComputerCircuitboard
- id: SolarControlComputerCircuitboard
- type: entity
parent: ToteBase
id: BoxCMOCircuitboards
name: medical circuit tote
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: MedicalTechFabCircuitboard
- id: CargoRequestMedicalComputerCircuitboard
- type: entity
parent: ToteBase
id: BoxHoPCircuitboards
name: head of personnel circuit tote
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: IDComputerCircuitboard
- id: FundingAllocationComputerCircuitboard
- id: CargoRequestServiceComputerCircuitboard
- type: entity
parent: BoxStamps
id: BoxHoPStamps
name: head of personnel's stamp box
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: RubberStampApproved
- id: RubberStampDenied
- id: RubberStampHop
- type: entity
parent: ToteBase
id: BoxHoSCircuitboards
name: security circuit tote
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: SecurityTechFabCircuitboard
- id: CargoRequestSecurityComputerCircuitboard
- type: entity
parent: ToteBase
id: BoxQMCircuitboards
description: A Tote filled with QM's Circuit boards.
name: cargo circuit tote
components:
- type: EntityTableContainerFill
containers:
@@ -17,15 +93,10 @@
- id: MailTeleporterMachineCircuitboard
- type: entity
name: stamp box [QM]
parent: BoxCardboard
parent: BoxStamps
id: BoxQMStamps
description: A box filled with QM's Stamps. Stamped of course.
name: quartermaster's stamp box
components:
- type: Item
size: Small
shape:
- 0,0,1,1
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
@@ -33,106 +104,11 @@
- id: RubberStampApproved
- id: RubberStampDenied
- id: RubberStampQm
- type: Storage
grid:
- 0,0,1,1
whitelist:
components:
- Stamp
- type: Sprite
layers:
- state: box
- state: stamp
- type: entity
name: circuit tote [HoP]
parent: ToteBase
id: BoxHoPCircuitboards
description: A Tote filled with HoP's Circuit boards.
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: IDComputerCircuitboard
- id: FundingAllocationComputerCircuitboard
- id: CargoRequestServiceComputerCircuitboard
- type: entity
name: stamp box [HoP]
parent: BoxCardboard
id: BoxHoPStamps
description: A box filled with HoP's Stamps. Stamped of course.
components:
- type: Item
size: Small
shape:
- 0,0,1,1
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: RubberStampApproved
- id: RubberStampDenied
- id: RubberStampHop
- type: Storage
grid:
- 0,0,1,1
whitelist:
components:
- Stamp
- type: Sprite
layers:
- state: box
- state: stamp
- type: entity
name: circuit tote [CE]
parent: ToteBase
id: BoxCECircuitboards
description: A Tote filled with CE's Circuit boards.
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: CargoRequestEngineeringComputerCircuitboard
- id: AlertsComputerCircuitboard
- id: AtmosMonitoringComputerCircuitboard
- id: PowerComputerCircuitboard
- id: SolarControlComputerCircuitboard
- type: entity
name: circuit tote [Captain]
parent: ToteBase
id: BoxCaptainCircuitboards
description: A Tote filled with Captain's Circuit boards.
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: CommsComputerCircuitboard
- id: StationRecordsComputerCircuitboard
- type: entity
name: circuit tote [CMO]
parent: ToteBase
id: BoxCMOCircuitboards
description: A Tote filled with CMO's Circuit boards.
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: MedicalTechFabCircuitboard
- id: CargoRequestMedicalComputerCircuitboard
- type: entity
name: circuit tote [RD]
parent: ToteBase
id: BoxRDCircuitboards
description: A Tote filled with RD's Circuit boards.
name: science circuit tote
components:
- type: EntityTableContainerFill
containers:
@@ -146,16 +122,3 @@
- id: AnalysisComputerCircuitboard #Because sometimes round start artis just fucking explode on the pad.
- id: ArtifactAnalyzerMachineCircuitboard
- id: StationAiFixerCircuitboard
- type: entity
name: circuit tote [HoS]
parent: ToteBase
id: BoxHoSCircuitboards
description: A Tote filled with HoS's Circuit boards.
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: SecurityTechFabCircuitboard
- id: CargoRequestSecurityComputerCircuitboard

View File

@@ -1,7 +1,7 @@
- type: entity
id: BoxBase
parent: BaseStorageItem
abstract: true
parent: BaseStorageItem
id: BoxBase
components:
- type: Sprite
sprite: Objects/Storage/boxes.rsi
@@ -17,21 +17,28 @@
- type: ContainerContainer
containers:
storagebase: !type:Container
- type: Construction
graph: BoxCardboard
node: boxcardboard
containers:
- storagebase
- type: PhysicalComposition
materialComposition:
Cardboard: 100
- type: StaticPrice
price: 10
- type: entity
name: circuit tote
id: ToteBase
abstract: true
parent: BoxBase
id: BoxBaseSmall
components:
- type: Item
size: Small
shape:
- 0,0,1,1
- type: Storage
grid:
- 0,0,1,1
- type: StaticPrice # Half of the "regular" box
price: 5
- type: entity
parent: BoxBase
id: ToteBase
name: circuit tote
description: A large tote for carrying circuit boards.
components:
- type: Sprite

View File

@@ -7,11 +7,25 @@
- to: boxcardboard
steps:
- material: Cardboard
amount: 1
amount: 2
doAfter: 4
- node: boxcardboard
entity: BoxCardboard
- type: constructionGraph
id: BoxCardboardSmall
start: start
graph:
- node: start
edges:
- to: boxcardboardsmall
steps:
- material: Cardboard
amount: 1
doAfter: 4
- node: boxcardboardsmall
entity: BoxCardboardSmall
- type: constructionGraph
id: ToteBase
start: start

View File

@@ -57,6 +57,15 @@
category: construction-category-storage
objectType: Item
- type: construction
id: BoxCardboardSmall
name: construction-recipe-box-cardboard-small
graph: BoxCardboardSmall
startNode: start
targetNode: boxcardboardsmall
category: construction-category-storage
objectType: Item
- type: construction
id: ToteBase
name: construction-recipe-box-tote