make timers constructable and deconstructable (#15571)
Co-authored-by: deltanedas <@deltanedas:kde.org>
This commit is contained in:
@@ -373,6 +373,7 @@
|
|||||||
- AirAlarmElectronics
|
- AirAlarmElectronics
|
||||||
- FireAlarmElectronics
|
- FireAlarmElectronics
|
||||||
- MailingUnitElectronics
|
- MailingUnitElectronics
|
||||||
|
- SignalTimerElectronics
|
||||||
|
|
||||||
- type: technology
|
- type: technology
|
||||||
name: technologies-material-sheet-printing
|
name: technologies-material-sheet-printing
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
- type: entity
|
||||||
|
id: SignalTimerElectronics
|
||||||
|
parent: BaseElectronics
|
||||||
|
name: signal timer electronics
|
||||||
|
description: An electronics board used in timer circuitry. Looks like you could use a screwdriver to change the board type.
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: Objects/Misc/module.rsi
|
||||||
|
state: charger_APC
|
||||||
|
- type: Construction
|
||||||
|
deconstructionTarget: null
|
||||||
|
graph: TimerElectronics
|
||||||
|
node: signal
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- TimerSignalElectronics
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: ScreenTimerElectronics
|
||||||
|
parent: SignalTimerElectronics
|
||||||
|
name: screen timer electronics
|
||||||
|
components:
|
||||||
|
- type: Construction
|
||||||
|
deconstructionTarget: null
|
||||||
|
graph: TimerElectronics
|
||||||
|
node: screen
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- TimerScreenElectronics
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BrigTimerElectronics
|
||||||
|
parent: SignalTimerElectronics
|
||||||
|
name: brig timer electronics
|
||||||
|
components:
|
||||||
|
- type: Construction
|
||||||
|
deconstructionTarget: null
|
||||||
|
graph: TimerElectronics
|
||||||
|
node: brig
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- TimerBrigElectronics
|
||||||
@@ -214,6 +214,7 @@
|
|||||||
- FireAlarmElectronics
|
- FireAlarmElectronics
|
||||||
- IntercomElectronics
|
- IntercomElectronics
|
||||||
- MailingUnitElectronics
|
- MailingUnitElectronics
|
||||||
|
- SignalTimerElectronics
|
||||||
- Bucket
|
- Bucket
|
||||||
- MopItem
|
- MopItem
|
||||||
- AdvMopItem
|
- AdvMopItem
|
||||||
@@ -276,6 +277,7 @@
|
|||||||
- FireAlarmElectronics
|
- FireAlarmElectronics
|
||||||
- MailingUnitElectronics
|
- MailingUnitElectronics
|
||||||
- IntercomElectronics
|
- IntercomElectronics
|
||||||
|
- SignalTimerElectronics
|
||||||
- SMESMachineCircuitboard
|
- SMESMachineCircuitboard
|
||||||
- SubstationMachineCircuitboard
|
- SubstationMachineCircuitboard
|
||||||
- ThermomachineFreezerMachineCircuitBoard
|
- ThermomachineFreezerMachineCircuitBoard
|
||||||
|
|||||||
@@ -38,6 +38,9 @@
|
|||||||
usesApcPower: true
|
usesApcPower: true
|
||||||
- type: ExtensionCableReceiver
|
- type: ExtensionCableReceiver
|
||||||
- type: ActivatableUIRequiresPower
|
- type: ActivatableUIRequiresPower
|
||||||
|
- type: Construction
|
||||||
|
graph: Timer
|
||||||
|
node: signal
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: ScreenTimer
|
id: ScreenTimer
|
||||||
@@ -52,6 +55,9 @@
|
|||||||
sprite: Structures/Wallmounts/textscreen.rsi
|
sprite: Structures/Wallmounts/textscreen.rsi
|
||||||
state: textscreen
|
state: textscreen
|
||||||
noRot: true
|
noRot: true
|
||||||
|
- type: Construction
|
||||||
|
graph: Timer
|
||||||
|
node: screen
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: BrigTimer
|
id: BrigTimer
|
||||||
@@ -61,3 +67,30 @@
|
|||||||
components:
|
components:
|
||||||
- type: AccessReader
|
- type: AccessReader
|
||||||
access: [["Security"]]
|
access: [["Security"]]
|
||||||
|
- type: Construction
|
||||||
|
graph: Timer
|
||||||
|
node: brig
|
||||||
|
|
||||||
|
# Construction Frame
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
noSpawn: true
|
||||||
|
id: TimerFrame
|
||||||
|
name: timer frame
|
||||||
|
description: A construction frame for a timer.
|
||||||
|
placement:
|
||||||
|
mode: SnapgridCenter
|
||||||
|
components:
|
||||||
|
- type: Clickable
|
||||||
|
- type: InteractionOutline
|
||||||
|
- type: Transform
|
||||||
|
anchored: true
|
||||||
|
- type: Sprite
|
||||||
|
drawdepth: WallMountedItems
|
||||||
|
netsync: false
|
||||||
|
sprite: Structures/Wallmounts/textscreen.rsi
|
||||||
|
state: textscreen
|
||||||
|
- type: Construction
|
||||||
|
graph: Timer
|
||||||
|
node: frame
|
||||||
|
- type: WallMount
|
||||||
|
|||||||
@@ -0,0 +1,177 @@
|
|||||||
|
- type: constructionGraph
|
||||||
|
id: Timer
|
||||||
|
start: start
|
||||||
|
graph:
|
||||||
|
- node: start
|
||||||
|
edges:
|
||||||
|
- to: frame
|
||||||
|
steps:
|
||||||
|
- material: Steel
|
||||||
|
amount: 5
|
||||||
|
doAfter: 2
|
||||||
|
|
||||||
|
- node: frame
|
||||||
|
entity: TimerFrame
|
||||||
|
edges:
|
||||||
|
- to: start
|
||||||
|
steps:
|
||||||
|
- tool: Welding
|
||||||
|
doAfter: 4
|
||||||
|
completed:
|
||||||
|
- !type:GivePrototype
|
||||||
|
prototype: SheetSteel1
|
||||||
|
amount: 5
|
||||||
|
- !type:DeleteEntity {}
|
||||||
|
- to: parts
|
||||||
|
steps:
|
||||||
|
- material: Cable
|
||||||
|
amount: 2
|
||||||
|
doAfter: 2
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 2
|
||||||
|
|
||||||
|
- node: parts
|
||||||
|
entity: TimerFrame
|
||||||
|
edges:
|
||||||
|
- to: signalElectronics
|
||||||
|
steps:
|
||||||
|
- tag: TimerSignalElectronics
|
||||||
|
store: board
|
||||||
|
name: "signal timer electronics"
|
||||||
|
icon:
|
||||||
|
sprite: "Objects/Misc/module.rsi"
|
||||||
|
state: "charger_APC"
|
||||||
|
doAfter: 1
|
||||||
|
- to: screenElectronics
|
||||||
|
steps:
|
||||||
|
- tag: TimerScreenElectronics
|
||||||
|
store: board
|
||||||
|
name: "screen timer electronics"
|
||||||
|
icon:
|
||||||
|
sprite: "Objects/Misc/module.rsi"
|
||||||
|
state: "charger_APC"
|
||||||
|
doAfter: 1
|
||||||
|
- to: brigElectronics
|
||||||
|
steps:
|
||||||
|
- tag: TimerBrigElectronics
|
||||||
|
store: board
|
||||||
|
name: "brig timer electronics"
|
||||||
|
icon:
|
||||||
|
sprite: "Objects/Misc/module.rsi"
|
||||||
|
state: "charger_APC"
|
||||||
|
doAfter: 1
|
||||||
|
- to: frame
|
||||||
|
steps:
|
||||||
|
- tool: Cutting
|
||||||
|
doAfter: 1
|
||||||
|
completed:
|
||||||
|
- !type:GivePrototype
|
||||||
|
prototype: CableApcStack1
|
||||||
|
amount: 2
|
||||||
|
|
||||||
|
- node: signalElectronics
|
||||||
|
entity: TimerFrame
|
||||||
|
edges:
|
||||||
|
- to: signal
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 1
|
||||||
|
- to: parts
|
||||||
|
steps:
|
||||||
|
- tool: Prying
|
||||||
|
doAfter: 1
|
||||||
|
conditions:
|
||||||
|
- !type:ContainerNotEmpty
|
||||||
|
container: board
|
||||||
|
completed:
|
||||||
|
- !type:EmptyAllContainers {}
|
||||||
|
|
||||||
|
- node: screenElectronics
|
||||||
|
edges:
|
||||||
|
- to: screenGlass
|
||||||
|
steps:
|
||||||
|
- material: Glass
|
||||||
|
amount: 2
|
||||||
|
doAfter: 2
|
||||||
|
- to: parts
|
||||||
|
steps:
|
||||||
|
- tool: Prying
|
||||||
|
doAfter: 1
|
||||||
|
conditions:
|
||||||
|
- !type:ContainerNotEmpty
|
||||||
|
container: board
|
||||||
|
completed:
|
||||||
|
- !type:EmptyAllContainers {}
|
||||||
|
|
||||||
|
- node: brigElectronics
|
||||||
|
edges:
|
||||||
|
- to: brigGlass
|
||||||
|
steps:
|
||||||
|
- material: Glass
|
||||||
|
amount: 2
|
||||||
|
doAfter: 2
|
||||||
|
- to: parts
|
||||||
|
steps:
|
||||||
|
- tool: Prying
|
||||||
|
doAfter: 1
|
||||||
|
conditions:
|
||||||
|
- !type:ContainerNotEmpty
|
||||||
|
container: board
|
||||||
|
completed:
|
||||||
|
- !type:EmptyAllContainers {}
|
||||||
|
|
||||||
|
- node: screenGlass
|
||||||
|
entity: TimerFrame
|
||||||
|
edges:
|
||||||
|
- to: screenElectronics
|
||||||
|
steps:
|
||||||
|
- tool: Prying
|
||||||
|
doAfter: 1
|
||||||
|
completed:
|
||||||
|
- !type:GivePrototype
|
||||||
|
prototype: SheetGlass1
|
||||||
|
amount: 2
|
||||||
|
- to: screen
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 1
|
||||||
|
|
||||||
|
- node: brigGlass
|
||||||
|
entity: TimerFrame
|
||||||
|
edges:
|
||||||
|
- to: brigElectronics
|
||||||
|
steps:
|
||||||
|
- tool: Prying
|
||||||
|
doAfter: 1
|
||||||
|
completed:
|
||||||
|
- !type:GivePrototype
|
||||||
|
prototype: SheetGlass1
|
||||||
|
amount: 2
|
||||||
|
- to: brig
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 1
|
||||||
|
|
||||||
|
- node: signal
|
||||||
|
entity: SignalTimer
|
||||||
|
edges:
|
||||||
|
- to: signalElectronics
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 2
|
||||||
|
|
||||||
|
- node: screen
|
||||||
|
entity: ScreenTimer
|
||||||
|
edges:
|
||||||
|
- to: screenGlass
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 2
|
||||||
|
|
||||||
|
- node: brig
|
||||||
|
entity: BrigTimer
|
||||||
|
edges:
|
||||||
|
- to: brigGlass
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 2
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
- type: constructionGraph
|
||||||
|
id: TimerElectronics
|
||||||
|
start: signal
|
||||||
|
graph:
|
||||||
|
- node: signal
|
||||||
|
entity: SignalTimerElectronics
|
||||||
|
edges:
|
||||||
|
- to: screen
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 2
|
||||||
|
- node: screen
|
||||||
|
entity: ScreenTimerElectronics
|
||||||
|
edges:
|
||||||
|
- to: brig
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 2
|
||||||
|
- node: brig
|
||||||
|
entity: BrigTimerElectronics
|
||||||
|
edges:
|
||||||
|
- to: signal
|
||||||
|
steps:
|
||||||
|
- tool: Screwing
|
||||||
|
doAfter: 2
|
||||||
@@ -677,3 +677,57 @@
|
|||||||
canBuildInImpassable: true
|
canBuildInImpassable: true
|
||||||
conditions:
|
conditions:
|
||||||
- !type:WallmountCondition {}
|
- !type:WallmountCondition {}
|
||||||
|
|
||||||
|
# TIMERS
|
||||||
|
- type: construction
|
||||||
|
name: signal timer
|
||||||
|
id: SignalTimer
|
||||||
|
graph: Timer
|
||||||
|
startNode: start
|
||||||
|
targetNode: signal
|
||||||
|
category: construction-category-utilities
|
||||||
|
description: "A wallmounted timer for sending timed signals to things."
|
||||||
|
icon:
|
||||||
|
sprite: Structures/Wallmounts/switch.rsi
|
||||||
|
state: on
|
||||||
|
objectType: Structure
|
||||||
|
placementMode: SnapgridCenter
|
||||||
|
canBuildInImpassable: true
|
||||||
|
conditions:
|
||||||
|
- !type:WallmountCondition
|
||||||
|
|
||||||
|
- type: construction
|
||||||
|
name: screen timer
|
||||||
|
id: ScreenTimer
|
||||||
|
graph: Timer
|
||||||
|
startNode: start
|
||||||
|
targetNode: screen
|
||||||
|
category: construction-category-utilities
|
||||||
|
description: "A wallmounted timer for sending timed signals to things. This one has a screen for displaying text."
|
||||||
|
icon:
|
||||||
|
sprite: Structures/Wallmounts/textscreen.rsi
|
||||||
|
state: textscreen
|
||||||
|
objectType: Structure
|
||||||
|
canRotate: false
|
||||||
|
placementMode: SnapgridCenter
|
||||||
|
canBuildInImpassable: true
|
||||||
|
conditions:
|
||||||
|
- !type:WallmountCondition
|
||||||
|
|
||||||
|
- type: construction
|
||||||
|
name: brig timer
|
||||||
|
id: BrigTimer
|
||||||
|
graph: Timer
|
||||||
|
startNode: start
|
||||||
|
targetNode: brig
|
||||||
|
category: construction-category-utilities
|
||||||
|
description: "A wallmounted timer for sending timed signals to things. This one has a screen for displaying text and requires security access to use."
|
||||||
|
icon:
|
||||||
|
sprite: Structures/Wallmounts/textscreen.rsi
|
||||||
|
state: textscreen
|
||||||
|
objectType: Structure
|
||||||
|
canRotate: false
|
||||||
|
placementMode: SnapgridCenter
|
||||||
|
canBuildInImpassable: true
|
||||||
|
conditions:
|
||||||
|
- !type:WallmountCondition
|
||||||
|
|||||||
@@ -46,6 +46,14 @@
|
|||||||
Steel: 50
|
Steel: 50
|
||||||
Plastic: 50
|
Plastic: 50
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: SignalTimerElectronics
|
||||||
|
result: SignalTimerElectronics
|
||||||
|
completetime: 2
|
||||||
|
materials:
|
||||||
|
Steel: 50
|
||||||
|
Plastic: 50
|
||||||
|
|
||||||
- type: latheRecipe
|
- type: latheRecipe
|
||||||
id: CloningPodMachineCircuitboard
|
id: CloningPodMachineCircuitboard
|
||||||
result: CloningPodMachineCircuitboard
|
result: CloningPodMachineCircuitboard
|
||||||
|
|||||||
@@ -679,6 +679,15 @@
|
|||||||
- type: Tag
|
- type: Tag
|
||||||
id: Taser
|
id: Taser
|
||||||
|
|
||||||
|
- type: Tag
|
||||||
|
id: TimerBrigElectronics
|
||||||
|
|
||||||
|
- type: Tag
|
||||||
|
id: TimerScreenElectronics
|
||||||
|
|
||||||
|
- type: Tag
|
||||||
|
id: TimerSignalElectronics
|
||||||
|
|
||||||
- type: Tag
|
- type: Tag
|
||||||
id: Trash
|
id: Trash
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user