More Buildable Furniture + Tweaks (#23188)
your PR will be my beginning of a maintainer journey
This commit is contained in:
@@ -349,4 +349,7 @@
|
|||||||
- type: Rotatable
|
- type: Rotatable
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
state: steel-bench
|
state: steel-bench
|
||||||
|
- type: Construction
|
||||||
|
graph: Seat
|
||||||
|
node: chairSteelBench
|
||||||
|
|
||||||
|
|||||||
@@ -40,6 +40,11 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
tags:
|
tags:
|
||||||
- Wooden
|
- Wooden
|
||||||
|
- type: Anchorable
|
||||||
|
- type: Rotatable
|
||||||
|
- type: Construction
|
||||||
|
graph: Dresser
|
||||||
|
node: dresser
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: DresserFilled
|
id: DresserFilled
|
||||||
|
|||||||
@@ -43,6 +43,30 @@
|
|||||||
- type: ContainerContainer
|
- type: ContainerContainer
|
||||||
containers:
|
containers:
|
||||||
storagebase: !type:Container
|
storagebase: !type:Container
|
||||||
|
- type: Damageable
|
||||||
|
damageContainer: Inorganic
|
||||||
|
damageModifierSet: Metallic
|
||||||
|
- type: Destructible
|
||||||
|
thresholds:
|
||||||
|
- trigger:
|
||||||
|
!type:DamageTrigger
|
||||||
|
damage: 50
|
||||||
|
behaviors:
|
||||||
|
- !type:DoActsBehavior
|
||||||
|
acts: ["Destruction"]
|
||||||
|
- !type:PlaySoundBehavior
|
||||||
|
sound:
|
||||||
|
path: /Audio/Effects/metalbreak.ogg
|
||||||
|
- !type:SpawnEntitiesBehavior
|
||||||
|
spawn:
|
||||||
|
SheetSteel1:
|
||||||
|
min: 1
|
||||||
|
max: 2
|
||||||
|
- type: Construction
|
||||||
|
graph: FilingCabinet
|
||||||
|
node: filingCabinet
|
||||||
|
- type: StaticPrice
|
||||||
|
price: 20
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: tall cabinet
|
name: tall cabinet
|
||||||
@@ -58,6 +82,9 @@
|
|||||||
- state: tallcabinet-open
|
- state: tallcabinet-open
|
||||||
map: ["openLayer"]
|
map: ["openLayer"]
|
||||||
- type: Appearance
|
- type: Appearance
|
||||||
|
- type: Construction
|
||||||
|
graph: FilingCabinet
|
||||||
|
node: tallCabinet
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: chest drawer
|
name: chest drawer
|
||||||
@@ -105,6 +132,30 @@
|
|||||||
- type: ContainerContainer
|
- type: ContainerContainer
|
||||||
containers:
|
containers:
|
||||||
storagebase: !type:Container
|
storagebase: !type:Container
|
||||||
|
- type: Damageable
|
||||||
|
damageContainer: Inorganic
|
||||||
|
damageModifierSet: Metallic
|
||||||
|
- type: Destructible
|
||||||
|
thresholds:
|
||||||
|
- trigger:
|
||||||
|
!type:DamageTrigger
|
||||||
|
damage: 50
|
||||||
|
behaviors:
|
||||||
|
- !type:DoActsBehavior
|
||||||
|
acts: ["Destruction"]
|
||||||
|
- !type:PlaySoundBehavior
|
||||||
|
sound:
|
||||||
|
path: /Audio/Effects/metalbreak.ogg
|
||||||
|
- !type:SpawnEntitiesBehavior
|
||||||
|
spawn:
|
||||||
|
SheetSteel1:
|
||||||
|
min: 1
|
||||||
|
max: 2
|
||||||
|
- type: Construction
|
||||||
|
graph: FilingCabinet
|
||||||
|
node: chestDrawer
|
||||||
|
- type: StaticPrice
|
||||||
|
price: 15
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
abstract: true
|
abstract: true
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
- type: constructionGraph
|
||||||
|
id: Dresser
|
||||||
|
start: start
|
||||||
|
graph:
|
||||||
|
- node: start
|
||||||
|
actions:
|
||||||
|
- !type:DestroyEntity {}
|
||||||
|
edges:
|
||||||
|
- to: dresser
|
||||||
|
completed:
|
||||||
|
- !type:SnapToGrid { }
|
||||||
|
steps:
|
||||||
|
- material: WoodPlank
|
||||||
|
amount: 3
|
||||||
|
doAfter: 2
|
||||||
|
- node: dresser
|
||||||
|
entity: Dresser
|
||||||
|
edges:
|
||||||
|
- to: start
|
||||||
|
completed:
|
||||||
|
- !type:SpawnPrototype
|
||||||
|
prototype: MaterialWoodPlank
|
||||||
|
amount: 3
|
||||||
|
steps:
|
||||||
|
- tool: Prying
|
||||||
|
doAfter: 3
|
||||||
@@ -0,0 +1,57 @@
|
|||||||
|
- type: constructionGraph
|
||||||
|
id: FilingCabinet
|
||||||
|
start: start
|
||||||
|
graph:
|
||||||
|
- node: start
|
||||||
|
actions:
|
||||||
|
- !type:DestroyEntity {}
|
||||||
|
edges:
|
||||||
|
- to: filingCabinet
|
||||||
|
steps:
|
||||||
|
- material: Steel
|
||||||
|
amount: 4
|
||||||
|
doAfter: 3
|
||||||
|
- to: tallCabinet
|
||||||
|
steps:
|
||||||
|
- material: Steel
|
||||||
|
amount: 4
|
||||||
|
doAfter: 3
|
||||||
|
- to: chestDrawer
|
||||||
|
steps:
|
||||||
|
- material: Steel
|
||||||
|
amount: 3
|
||||||
|
doAfter: 3
|
||||||
|
|
||||||
|
- node: filingCabinet
|
||||||
|
entity: filingCabinet
|
||||||
|
edges:
|
||||||
|
- to: start
|
||||||
|
completed:
|
||||||
|
- !type:SpawnPrototype
|
||||||
|
prototype: SheetSteel1
|
||||||
|
amount: 4
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 4
|
||||||
|
- node: tallCabinet
|
||||||
|
entity: filingCabinetTall
|
||||||
|
edges:
|
||||||
|
- to: start
|
||||||
|
completed:
|
||||||
|
- !type:SpawnPrototype
|
||||||
|
prototype: SheetSteel1
|
||||||
|
amount: 4
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 4
|
||||||
|
- node: chestDrawer
|
||||||
|
entity: filingCabinetDrawer
|
||||||
|
edges:
|
||||||
|
- to: start
|
||||||
|
completed:
|
||||||
|
- !type:SpawnPrototype
|
||||||
|
prototype: SheetSteel1
|
||||||
|
amount: 3
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 4
|
||||||
@@ -58,6 +58,11 @@
|
|||||||
doAfter: 1
|
doAfter: 1
|
||||||
- material: MetalRod
|
- material: MetalRod
|
||||||
amount: 2
|
amount: 2
|
||||||
|
- to: chairSteelBench
|
||||||
|
steps:
|
||||||
|
- material: Steel
|
||||||
|
amount: 2
|
||||||
|
doAfter: 1
|
||||||
|
|
||||||
- node: chair
|
- node: chair
|
||||||
entity: Chair
|
entity: Chair
|
||||||
@@ -179,3 +184,15 @@
|
|||||||
- tool: Screwing
|
- tool: Screwing
|
||||||
doAfter: 1
|
doAfter: 1
|
||||||
|
|
||||||
|
- node: chairSteelBench
|
||||||
|
entity: SteelBench
|
||||||
|
edges:
|
||||||
|
- to: start
|
||||||
|
completed:
|
||||||
|
- !type:SpawnPrototype
|
||||||
|
prototype: SheetSteel1
|
||||||
|
amount: 2
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 1
|
||||||
|
|
||||||
|
|||||||
@@ -186,6 +186,23 @@
|
|||||||
conditions:
|
conditions:
|
||||||
- !type:TileNotBlocked
|
- !type:TileNotBlocked
|
||||||
|
|
||||||
|
- type: construction
|
||||||
|
name: steel bench
|
||||||
|
id: ChairSteelBench
|
||||||
|
graph: Seat
|
||||||
|
startNode: start
|
||||||
|
targetNode: chairSteelBench
|
||||||
|
category: construction-category-furniture
|
||||||
|
description: A long chair made for a metro. Really standard design.
|
||||||
|
icon:
|
||||||
|
sprite: Structures/Furniture/chairs.rsi
|
||||||
|
state: steel-bench
|
||||||
|
objectType: Structure
|
||||||
|
placementMode: SnapgridCenter
|
||||||
|
canBuildInImpassable: false
|
||||||
|
conditions:
|
||||||
|
- !type:TileNotBlocked
|
||||||
|
|
||||||
#tables
|
#tables
|
||||||
- type: construction
|
- type: construction
|
||||||
name: steel table
|
name: steel table
|
||||||
@@ -358,7 +375,7 @@
|
|||||||
conditions:
|
conditions:
|
||||||
- !type:TileNotBlocked
|
- !type:TileNotBlocked
|
||||||
|
|
||||||
#beds
|
#bedroom
|
||||||
- type: construction
|
- type: construction
|
||||||
id: Bed
|
id: Bed
|
||||||
name: bed
|
name: bed
|
||||||
@@ -410,6 +427,23 @@
|
|||||||
conditions:
|
conditions:
|
||||||
- !type:TileNotBlocked
|
- !type:TileNotBlocked
|
||||||
|
|
||||||
|
- type: construction
|
||||||
|
id: Dresser
|
||||||
|
name: dresser
|
||||||
|
description: Wooden dresser, can store things inside itself.
|
||||||
|
graph: Dresser
|
||||||
|
startNode: start
|
||||||
|
targetNode: dresser
|
||||||
|
category: construction-category-furniture
|
||||||
|
icon:
|
||||||
|
sprite: Structures/Furniture/furniture.rsi
|
||||||
|
state: dresser
|
||||||
|
objectType: Structure
|
||||||
|
placementMode: SnapgridCenter
|
||||||
|
canBuildInImpassable: false
|
||||||
|
conditions:
|
||||||
|
- !type:TileNotBlocked
|
||||||
|
|
||||||
#racks
|
#racks
|
||||||
- type: construction
|
- type: construction
|
||||||
id: Rack
|
id: Rack
|
||||||
@@ -428,6 +462,7 @@
|
|||||||
conditions:
|
conditions:
|
||||||
- !type:TileNotBlocked
|
- !type:TileNotBlocked
|
||||||
|
|
||||||
|
#misc
|
||||||
- type: construction
|
- type: construction
|
||||||
id: MeatSpike
|
id: MeatSpike
|
||||||
name: meat spike
|
name: meat spike
|
||||||
|
|||||||
51
Resources/Prototypes/Recipes/Construction/storage.yml
Normal file
51
Resources/Prototypes/Recipes/Construction/storage.yml
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
#bureaucracy
|
||||||
|
- type: construction
|
||||||
|
id: FilingCabinet
|
||||||
|
name: filing cabinet
|
||||||
|
description: A cabinet for all your filing needs.
|
||||||
|
graph: FilingCabinet
|
||||||
|
startNode: start
|
||||||
|
targetNode: filingCabinet
|
||||||
|
category: construction-category-storage
|
||||||
|
icon:
|
||||||
|
sprite: Structures/Storage/cabinets.rsi
|
||||||
|
state: filingcabinet
|
||||||
|
objectType: Structure
|
||||||
|
placementMode: SnapgridCenter
|
||||||
|
canBuildInImpassable: false
|
||||||
|
conditions:
|
||||||
|
- !type:TileNotBlocked
|
||||||
|
|
||||||
|
- type: construction
|
||||||
|
id: TallCabinet
|
||||||
|
name: tall cabinet
|
||||||
|
description: A cabinet for all your filing needs.
|
||||||
|
graph: FilingCabinet
|
||||||
|
startNode: start
|
||||||
|
targetNode: tallCabinet
|
||||||
|
category: construction-category-storage
|
||||||
|
icon:
|
||||||
|
sprite: Structures/Storage/cabinets.rsi
|
||||||
|
state: tallcabinet
|
||||||
|
objectType: Structure
|
||||||
|
placementMode: SnapgridCenter
|
||||||
|
canBuildInImpassable: false
|
||||||
|
conditions:
|
||||||
|
- !type:TileNotBlocked
|
||||||
|
|
||||||
|
- type: construction
|
||||||
|
id: ChestDrawer
|
||||||
|
name: chest drawer
|
||||||
|
description: A small drawer for all your filing needs, Now with wheels!
|
||||||
|
graph: FilingCabinet
|
||||||
|
startNode: start
|
||||||
|
targetNode: chestDrawer
|
||||||
|
category: construction-category-storage
|
||||||
|
icon:
|
||||||
|
sprite: Structures/Storage/cabinets.rsi
|
||||||
|
state: chestdrawer
|
||||||
|
objectType: Structure
|
||||||
|
placementMode: SnapgridCenter
|
||||||
|
canBuildInImpassable: false
|
||||||
|
conditions:
|
||||||
|
- !type:TileNotBlocked
|
||||||
Reference in New Issue
Block a user