Portable scrubbers (#9417)

This commit is contained in:
Rane
2022-07-15 08:46:30 -04:00
committed by GitHub
parent f16de2186e
commit 188934a748
23 changed files with 481 additions and 24 deletions

View File

@@ -265,6 +265,7 @@
- IndustrialEngineering
unlockedRecipes:
- ThermomachineFreezerMachineCircuitBoard
- PortableScrubberMachineCircuitBoard
# Avionics Circuitry Technology Tree

View File

@@ -156,6 +156,21 @@
graph: ThermomachineBoard
node: heater
- type: entity
id: PortableScrubberMachineCircuitBoard
parent: BaseMachineCircuitboard
name: portable scrubber machine board
description: A PCB for a portable scrubber.
components:
- type: MachineBoard
prototype: PortableScrubber
requirements:
MatterBin: 3
Laser: 2
ScanningModule: 1
materialRequirements:
Cable: 5
- type: entity
id: CloningPodMachineCircuitboard
parent: BaseMachineCircuitboard
@@ -396,7 +411,7 @@
materialRequirements:
Glass: 2
Cable: 2
- type: entity
id: EmitterCircuitboard
parent: BaseMachineCircuitboard

View File

@@ -240,6 +240,7 @@
- SMESMachineCircuitboard
- SubstationMachineCircuitboard
- ThermomachineFreezerMachineCircuitBoard
- PortableScrubberMachineCircuitBoard
- CloningPodMachineCircuitboard
- MedicalScannerMachineCircuitboard
- CrewMonitoringComputerCircuitboard

View File

@@ -0,0 +1,90 @@
- type: entity
id: PortableScrubber
parent: BaseStructureDynamic
name: portable scrubber
description: It scrubs, portably!
components:
- type: Transform
noRot: true
- type: InteractionOutline
- type: Physics
bodyType: Dynamic
- type: Fixtures
fixtures:
- shape:
!type:PhysShapeCircle
radius: 0.4
mass: 50
mask:
- MachineMask
layer:
- MachineLayer
- type: Sprite
netsync: false
sprite: Structures/Piping/Atmospherics/Portable/portable_scrubber.rsi
layers:
- state: icon
map: ["enum.PortableScrubberVisualLayers.IsRunning"]
- state: unlit
shader: unshaded
map: ["enum.PowerDeviceVisualLayers.Powered"]
- state: draining
shader: unshaded
visible: false
map: ["enum.PortableScrubberVisualLayers.IsDraining"]
- type: Pullable
- type: AtmosDevice
joinSystem: true
- type: PortableScrubber
gasMixture:
volume: 1250
- type: NodeContainer
nodes:
port:
!type:PortablePipeNode
nodeGroupID: Pipe
rotationsEnabled: false
volume: 1
- type: ApcPowerReceiver
powerLoad: 2000
- type: ExtensionCableReceiver
- type: Appearance
visuals:
- type: PowerDeviceVisualizer
- type: PortableScrubberVisuals
idleState: icon
runningState: icon-running
readyState: unlit
fullState: unlit-full
- type: AmbientSound
enabled: false
volume: -5
range: 5
sound:
path: /Audio/Ambience/Objects/portable_scrubber.ogg
- type: Machine
board: PortableScrubberMachineCircuitBoard
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Metallic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 300
behaviors:
- !type:PlaySoundBehavior
sound:
path: /Audio/Effects/metalbreak.ogg
- !type:SpawnEntitiesBehavior
spawn:
SheetSteel1:
min: 1
max: 3
SheetGlass1:
min: 1
max: 3
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: CollideOnAnchor
enable: true

View File

@@ -54,6 +54,16 @@
Glass: 900
Gold: 50
- type: latheRecipe
id: PortableScrubberMachineCircuitBoard
icon: Objects/Misc/module.rsi/id_mod.png
result: PortableScrubberMachineCircuitBoard
completetime: 4
materials:
Steel: 150
Glass: 900
Gold: 50
- type: latheRecipe
id: MedicalScannerMachineCircuitboard
icon: Objects/Misc/module.rsi/id_mod.png
@@ -357,7 +367,7 @@
materials:
Steel: 100
Glass: 900
- type: latheRecipe
id: EmitterCircuitboard
icon: Objects/Misc/module.rsi/id_mod.png