Move board spawning out of DoorSystem (#11772)

This commit is contained in:
Leon Friedrich
2022-10-17 05:43:33 +13:00
committed by GitHub
parent ad3615dcc6
commit bb61eb7f54
13 changed files with 235 additions and 56 deletions

View File

@@ -41,8 +41,10 @@
- FullTileMask
layer:
- AirlockLayer
- type: ContainerFill
containers:
board: [ DoorElectronics ]
- type: Door
board: DoorElectronics
crushDamage:
types:
Blunt: 15
@@ -96,6 +98,8 @@
- type: Construction
graph: Airlock
node: airlock
containers:
- board
- type: IconSmooth
key: walls
mode: NoSprite

View File

@@ -35,8 +35,13 @@
- FullTileMask
layer:
- WallLayer
- type: ContainerFill
containers:
board: [ DoorElectronics ]
- type: ContainerContainer
containers:
board: !type:Container
- type: Door
board: DoorElectronics
crushDamage:
types:
Blunt: 50

View File

@@ -32,7 +32,6 @@
bumpOpen: false
closeTimeTwo: 0.4
openTimeTwo: 0.4
board: DoorElectronics
crushDamage:
types:
Blunt: 15

View File

@@ -1,5 +1,6 @@
- type: entity
id: Firelock
id: BaseFirelock
abstract: true
parent: BaseStructure
name: firelock
description: Apply crowbar.
@@ -97,14 +98,27 @@
enabled: false
- type: Occluder
enabled: false
- type: Construction
graph: Firelock
node: Firelock
- type: WallMount
arc: 360
- type: StaticPrice
price: 150
- type: entity
id: Firelock
parent: BaseFirelock
components:
- type: ContainerContainer
containers:
board: !type:Container
- type: Construction
graph: Firelock
node: Firelock
containers:
- board
- type: ContainerFill
containers:
board: [ FirelockElectronics ]
- type: entity
id: FirelockGlass
parent: Firelock
@@ -126,10 +140,12 @@
- GlassAirlockLayer
- type: Door
occludes: false
- type: Construction
node: FirelockGlass
- type: entity
id: FirelockEdge
parent: Firelock
parent: BaseFirelock
name: firelock
components:
- type: Sprite

View File

@@ -4,6 +4,8 @@
name: shutter
abstract: true
description: One shudders to think about what might be behind this shutter.
placement:
mode: SnapgridCenter
components:
- type: Sprite
netsync: false
@@ -22,8 +24,13 @@
- FullTileMask
layer:
- AirlockLayer
- type: ContainerFill
containers:
board: [ DoorElectronics ]
- type: ContainerContainer
containers:
board: !type:Container
- type: Door
board: DoorElectronics
bumpOpen: false
clickOpen: false
closeTimeOne: 0.2
@@ -78,8 +85,6 @@
messagePerceivedByOthers: comp-window-knock
interactSuccessSound:
path: /Audio/Effects/glass_knock.ogg
placement:
mode: SnapgridCenter
- type: entity
id: ShuttersNormal
@@ -89,6 +94,8 @@
- type: Construction
graph: Shutters
node: Shutters
containers:
- board
- type: entity
id: ShuttersNormalOpen
@@ -105,9 +112,6 @@
airBlocked: false
- type: RadiationBlocker
enabled: false
- type: Construction
graph: Shutters
node: Shutters
- type: entity
id: ShuttersRadiation
@@ -125,6 +129,8 @@
- type: Construction
graph: Shutters
node: ShuttersRadiation
containers:
- board
- type: entity
id: ShuttersRadiationOpen
@@ -133,9 +139,6 @@
components:
- type: Door
state: Open
- type: Construction
graph: Shutters
node: ShuttersRadiation
- type: Occluder
enabled: false
- type: Physics
@@ -160,6 +163,8 @@
- type: Construction
graph: Shutters
node: ShuttersWindow
containers:
- board
- type: entity
id: ShuttersWindowOpen
@@ -168,9 +173,6 @@
components:
- type: Door
state: Open
- type: Construction
graph: Shutters
node: ShuttersWindow
- type: Physics
canCollide: false
- type: Airtight
@@ -192,6 +194,8 @@
- type: Construction
graph: Shutters
node: frame1
containers:
- board
- type: InteractionOutline
- type: Damageable
damageContainer: Inorganic

View File

@@ -76,9 +76,14 @@
openPanelVisible: true
# needed so that windoors will close regardless of whether there are people in it; it doesn't crush after all
safety: false
- type: ContainerFill
containers:
board: [ DoorElectronics ]
- type: ContainerContainer
containers:
board: !type:Container
- type: Door
canCrush: false
board: DoorElectronics
openSound:
path: /Audio/Machines/windoor_open.ogg
closeSound:
@@ -111,6 +116,8 @@
- type: Construction
graph: Windoor
node: windoor
containers:
- board
- type: StaticPrice
price: 100

View File

@@ -148,7 +148,7 @@
prototype: SheetGlass1
amount: 2
steps:
- tool: Screwing
- tool: Prying
doAfter: 1

View File

@@ -379,6 +379,23 @@
conditions:
- !type:TileNotBlocked
- type: construction
name: glass firelock
id: FirelockGlass
graph: Firelock
startNode: start
targetNode: FirelockGlass
category: construction-category-structures
description: This is a firelock - it locks an area when a fire alarm in the area is triggered. Don't get squished!
icon:
sprite: Structures/Doors/Airlocks/Glass/firelock.rsi
state: closed
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked
- type: construction
name: shutter
id: Shutters