Crafting for spike rack, signal switches and buttons. (#7420)

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
Peptide90
2022-04-28 13:24:02 +01:00
committed by GitHub
parent 2325a7df94
commit 0e93dba20b
9 changed files with 247 additions and 110 deletions

View File

@@ -1,7 +1,11 @@
- type: entity
id: SignalSwitch
name: "signal switch"
description: "Its a switch for toggling power to things."
name: signal switch
description: It's a switch for toggling power to things.
placement:
mode: SnapgridCenter
snap:
- Wallmount
components:
- type: WallMount
arc: 360
@@ -15,15 +19,18 @@
- type: UseDelay
delay: 0.5 # prevent light-toggling auto-clickers.
- type: Rotatable
- type: Construction
graph: SignalSwitchGraph
node: SignalSwitchNode
- type: entity
id: SignalButton
name: signal button
description: It's a button for activating something.
placement:
mode: SnapgridCenter
snap:
- Wallmount
- type: entity
id: SignalButton
name: "signal button"
description: "It's a button for activating something."
components:
- type: WallMount
arc: 360
@@ -37,15 +44,18 @@
- type: UseDelay
delay: 0.5 # prevent light-toggling auto-clickers.
- type: Rotatable
placement:
mode: SnapgridCenter
snap:
- Wallmount
- type: Construction
graph: SignalButtonGraph
node: SignalButtonNode
- type: entity
id: ApcNetSwitch
name: apc net switch
description: Its a switch for toggling lights that are connected to the same apc.
placement:
mode: SnapgridCenter
snap:
- Wallmount
components:
- type: WallMount
arc: 360
@@ -58,19 +68,15 @@
sprite: Structures/Wallmounts/switch.rsi
state: on
- type: Rotatable
- type: Construction
graph: LightSwitch
node: lightSwitch
- type: ExtensionCableReceiver
- type: DeviceNetwork
deviceNetId: Apc
transmitFrequencyId: SmartLight # assuming people want to use it for light switches.
- type: ApcNetworkConnection
- type: ApcNetSwitch
placement:
mode: SnapgridCenter
snap:
- Wallmount
- type: Construction
graph: LightSwitchGraph
node: LightSwitchNode
- type: entity
id: TwoWayLever
@@ -94,9 +100,6 @@
state_forward: switch-fwd
state_off: switch-off
state_reversed: switch-rev
- type: Construction
graph: LeverGraph
node: lever
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Metallic
@@ -108,4 +111,6 @@
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Construction
graph: LeverGraph
node: LeverNode

View File

@@ -42,3 +42,6 @@
states:
enum.KitchenSpikeStatus.Empty: spike
enum.KitchenSpikeStatus.Bloody: spikebloody
- type: Construction
graph: MeatSpike
node: MeatSpike

View File

@@ -0,0 +1,28 @@
- type: constructionGraph
id: MeatSpike
start: start
graph:
- node: start
edges:
- to: MeatSpike
completed:
- !type:SnapToGrid
southRotation: true
steps:
- material: Steel
amount: 15
doAfter: 10
- node: MeatSpike
entity: KitchenSpike
edges:
- to: start
completed:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 15
conditions:
- !type:EntityAnchored
anchored: false
steps:
- tool: Welding
doAfter: 10

View File

@@ -0,0 +1,99 @@
# Levers
- type: constructionGraph
id: LeverGraph
start: start
graph:
- node: start
actions:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 2
- !type:DeleteEntity {}
edges:
- to: LeverNode
completed:
- !type:SnapToGrid {}
steps:
- material: Steel
amount: 2
doAfter: 1
- node: LeverNode
entity: TwoWayLever
edges:
- to: start
steps:
- tool: Anchoring
doAfter: 1
# Switches
- type: constructionGraph
id: LightSwitchGraph
start: start
graph:
- node: start
edges:
- to: LightSwitchNode
steps:
- material: Steel
amount: 1
doAfter: 2.0
- node: LightSwitchNode
entity: ApcNetSwitch
edges:
- to: start
steps:
- tool: Screwing
doAfter: 2.0
completed:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 1
- !type:DeleteEntity {}
- type: constructionGraph
id: SignalSwitchGraph
start: start
graph:
- node: start
edges:
- to: SignalSwitchNode
steps:
- material: Steel
amount: 1
doAfter: 2.0
- node: SignalSwitchNode
entity: SignalSwitch
edges:
- to: start
steps:
- tool: Screwing
doAfter: 2.0
completed:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 1
- !type:DeleteEntity {}
- type: constructionGraph
id: SignalButtonGraph
start: start
graph:
- node: start
edges:
- to: SignalButtonNode
steps:
- material: Steel
amount: 1
doAfter: 2.0
- node: SignalButtonNode
entity: SignalButton
edges:
- to: start
steps:
- tool: Screwing
doAfter: 2.0
completed:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 1
- !type:DeleteEntity {}

View File

@@ -28,30 +28,4 @@
- to: item
steps:
- tool: Prying
doAfter: 3
- type: constructionGraph
id: LeverGraph
start: start
graph:
- node: start
actions:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 2
- !type:DeleteEntity {}
edges:
- to: lever
completed:
- !type:SnapToGrid {}
steps:
- material: Steel
amount: 2
doAfter: 1
- node: lever
entity: TwoWayLever
edges:
- to: start
steps:
- tool: Anchoring
doAfter: 1
doAfter: 3

View File

@@ -63,29 +63,4 @@
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 5
- !type:DeleteEntity {}
- type: constructionGraph
id: LightSwitch
start: start
graph:
- node: start
edges:
- to: lightSwitch
steps:
- material: Steel
amount: 1
doAfter: 2.0
- node: lightSwitch
entity: ApcNetSwitch
edges:
- to: start
steps:
- tool: Screwing
doAfter: 2.0
completed:
- !type:SpawnPrototype
prototype: SheetSteel1
amount: 1
- !type:DeleteEntity {}
- !type:DeleteEntity {}

View File

@@ -359,3 +359,20 @@
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked
- type: construction
id: MeatSpike
name: meat spike
description: A spike found in kitchens butchering animals.
graph: MeatSpike
startNode: start
targetNode: MeatSpike
category: Furniture
icon:
sprite: Structures/meat_spike.rsi
state: spike
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: false
conditions:
- !type:TileNotBlocked

View File

@@ -23,3 +23,74 @@
icon:
sprite: Structures/Machines/parts.rsi
state: "box_0"
# Switching
- type: construction
name: two-way lever
id: TwoWayLeverRecipe
graph: LeverGraph
startNode: start
targetNode: LeverNode
category: Machines
description: A lever to control machines. It has 3 modes.
objectType: Structure
canBuildInImpassable: false
icon:
sprite: Structures/conveyor.rsi
state: switch-off
conditions:
- !type:TileNotBlocked
- type: construction
name: light switch
id: LightSwitchRecipe
graph: LightSwitchGraph
startNode: start
targetNode: LightSwitchNode
category: Machines
description: A switch for toggling lights that are connected to the same apc.
icon:
sprite: Structures/Wallmounts/switch.rsi
state: on
objectType: Structure
placementMode: SnapgridCenter
canRotate: true
canBuildInImpassable: true
conditions:
- !type:WallmountCondition
- type: construction
name: signal switch
id: SignalSwitchRecipe
graph: SignalSwitchGraph
startNode: start
targetNode: SignalSwitchNode
category: Machines
description: It's a switch for toggling power to things.
icon:
sprite: Structures/Wallmounts/switch.rsi
state: on
objectType: Structure
placementMode: SnapgridCenter
canRotate: true
canBuildInImpassable: true
conditions:
- !type:WallmountCondition
- type: construction
name: signal button
id: SignalButtonRecipe
graph: SignalButtonGraph
startNode: start
targetNode: SignalButtonNode
category: Machines
description: It's a button for activating something.
icon:
sprite: Structures/Wallmounts/switch.rsi
state: on
objectType: Structure
placementMode: SnapgridCenter
canRotate: true
canBuildInImpassable: true
conditions:
- !type:WallmountCondition

View File

@@ -469,25 +469,6 @@
conditions:
- !type:TileNotBlocked
- type: construction
name: light switch
id: LightSwitchRecipe
graph: LightSwitch
startNode: start
targetNode: lightSwitch
category: Structures
description: A switch for toggling lights that are connected to the same apc.
icon:
sprite: Structures/Wallmounts/switch.rsi
state: on
objectType: Structure
placementMode: SnapgridCenter
canRotate: true
canBuildInImpassable: true
conditions:
- !type:WallmountCondition
#conveyor
- type: construction
name: conveyor belt
@@ -506,22 +487,6 @@
conditions:
- !type:TileNotBlocked
- type: construction
name: two-way lever
id: TwoWayLever
graph: LeverGraph
startNode: start
targetNode: lever
category: Structures
description: A lever to control machines. It has 3 modes.
objectType: Structure
canBuildInImpassable: false
icon:
sprite: Structures/conveyor.rsi
state: switch-off
conditions:
- !type:TileNotBlocked
- type: construction
name: metal door
id: MetalDoor