Merge branch 'master' into replace-sounds-with-sound-specifier
This commit is contained in:
@@ -23,7 +23,7 @@
|
||||
- type: entity
|
||||
parent: ClothingHeadBase
|
||||
id: ClothingHeadHatBeretEngineering
|
||||
name: engineering beret
|
||||
name: engineering beret
|
||||
description: A beret with the engineering insignia emblazoned on it. For engineers that are more inclined towards style than safety.
|
||||
components:
|
||||
- type: Sprite
|
||||
@@ -360,3 +360,14 @@
|
||||
sprite: Clothing/Head/Hats/xmascrown.rsi
|
||||
- type: Clothing
|
||||
sprite: Clothing/Head/Hats/xmascrown.rsi
|
||||
|
||||
- type: entity
|
||||
parent: ClothingHeadBase
|
||||
id: ClothingHeadHatTrucker
|
||||
name: truckers hat
|
||||
description: Formerly Chucks, this hat is yours now.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Clothing/Head/Hats/truckershat.rsi
|
||||
- type: Clothing
|
||||
sprite: Clothing/Head/Hats/truckershat.rsi
|
||||
|
||||
@@ -571,3 +571,14 @@
|
||||
sprite: Clothing/Uniforms/Jumpsuit/rainbow.rsi
|
||||
- type: Clothing
|
||||
sprite: Clothing/Uniforms/Jumpsuit/rainbow.rsi
|
||||
|
||||
- type: entity
|
||||
parent: ClothingUniformBase
|
||||
id: ClothingUniformOveralls
|
||||
name: overalls
|
||||
description: Great for working outdoors.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Clothing/Uniforms/Jumpsuit/overalls.rsi
|
||||
- type: Clothing
|
||||
sprite: Clothing/Uniforms/Jumpsuit/overalls.rsi
|
||||
|
||||
@@ -4,5 +4,4 @@
|
||||
abstract: true
|
||||
components:
|
||||
- type: Sprite
|
||||
- type: Physics
|
||||
- type: AnimationPlayer
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
currentTemperature: 310.15
|
||||
specificHeat: 42
|
||||
tempDamageCoefficient: 0.1
|
||||
- type: Metabolism
|
||||
- type: Respirator
|
||||
metabolismHeat: 5000
|
||||
radiatedHeat: 400
|
||||
implicitHeatRegulation: 5000
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
0: !type:NormalMobState {}
|
||||
150: !type:CriticalMobState {}
|
||||
200: !type:DeadMobState {}
|
||||
- type: Metabolism
|
||||
- type: Respirator
|
||||
- type: UnarmedCombat
|
||||
range: 1.5
|
||||
arcwidth: 0
|
||||
|
||||
@@ -168,7 +168,7 @@
|
||||
preset: HumanPreset
|
||||
- type: Damageable
|
||||
damageContainer: biologicalDamageContainer
|
||||
- type: Metabolism
|
||||
- type: Respirator
|
||||
metabolismHeat: 5000
|
||||
radiatedHeat: 400
|
||||
implicitHeatRegulation: 5000
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
- type: Body
|
||||
template: HumanoidTemplate
|
||||
preset: VoxPreset
|
||||
- type: Metabolism
|
||||
- type: Respirator
|
||||
needsGases:
|
||||
Nitrogen: 0.00060763888
|
||||
producesGases:
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
reagents:
|
||||
- ReagentId: Nutriment
|
||||
Quantity: 20
|
||||
trash: BowlBigTrash
|
||||
- type: Sprite
|
||||
sprite: Objects/Consumable/Food/bowl.rsi
|
||||
netsync: false
|
||||
|
||||
@@ -28,3 +28,32 @@
|
||||
Amount: 2
|
||||
DefaultPrototype: Beaker
|
||||
ExamineName: Glass Beaker
|
||||
|
||||
- type: entity
|
||||
id: CloningPodMachineCircuitboard
|
||||
parent: BaseMachineCircuitboard
|
||||
name: Cloning Pod (Machine Board)
|
||||
components:
|
||||
- type: MachineBoard
|
||||
prototype: CloningPod
|
||||
requirements:
|
||||
ScanningModule: 2
|
||||
Manipulator: 2
|
||||
materialRequirements:
|
||||
Glass: 1
|
||||
Cable: 1
|
||||
|
||||
- type: entity
|
||||
id: MedicalScannerMachineCircuitboard
|
||||
parent: BaseMachineCircuitboard
|
||||
name: Medical Scanner (Machine Board)
|
||||
components:
|
||||
- type: MachineBoard
|
||||
prototype: MedicalScanner
|
||||
requirements:
|
||||
ScanningModule: 1
|
||||
Manipulator: 1
|
||||
Laser: 1
|
||||
materialRequirements:
|
||||
Glass: 1
|
||||
Cable: 1
|
||||
|
||||
@@ -92,6 +92,16 @@
|
||||
- plasma
|
||||
- plasma_2
|
||||
- plasma_3
|
||||
- type: SolutionContainer
|
||||
caps: 1
|
||||
contents:
|
||||
reagents:
|
||||
- ReagentId: Plasma
|
||||
Quantity: 10
|
||||
- type: Tag
|
||||
tags:
|
||||
- Grindable
|
||||
- Sheet
|
||||
|
||||
- type: entity
|
||||
parent: SheetPlasma
|
||||
|
||||
@@ -38,16 +38,16 @@
|
||||
- SmallImpassable
|
||||
- type: Door
|
||||
board: DoorElectronics
|
||||
openSound:
|
||||
path: /Audio/Machines/airlock_open.ogg
|
||||
closeSound:
|
||||
path: /Audio/Machines/airlock_close.ogg
|
||||
denySound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
- type: Airlock
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: AirlockVisualizer
|
||||
open_sound:
|
||||
path: /Audio/Machines/airlock_open.ogg
|
||||
close_sound:
|
||||
path: /Audio/Machines/airlock_close.ogg
|
||||
deny_sound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
- type: WiresVisualizer
|
||||
- type: ApcPowerReceiver
|
||||
- type: Wires
|
||||
|
||||
@@ -2,19 +2,19 @@
|
||||
parent: Airlock
|
||||
id: AirlockExternal
|
||||
suffix: External
|
||||
description: "It opens, it closes, it might crush you, and there might be only space behind it.\nHas to be manually activated."
|
||||
description: It opens, it closes, it might crush you, and there might be only space behind it. Has to be manually activated.
|
||||
components:
|
||||
- type: Door
|
||||
bumpOpen: false
|
||||
openSound:
|
||||
path: /Audio/Machines/airlock_ext_open.ogg
|
||||
closeSound:
|
||||
path: /Audio/Machines/airlock_ext_close.ogg
|
||||
denySound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
- type: Sprite
|
||||
sprite: Structures/Doors/Airlocks/Standard/external.rsi
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: AirlockVisualizer
|
||||
open_sound:
|
||||
path: /Audio/Machines/airlock_ext_open.ogg
|
||||
close_sound:
|
||||
path: /Audio/Machines/airlock_ext_close.ogg
|
||||
deny_sound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
- type: WiresVisualizer
|
||||
|
||||
@@ -54,17 +54,17 @@
|
||||
startOpen: true
|
||||
bumpOpen: false
|
||||
inhibitCrush: false
|
||||
openSound:
|
||||
path: /Audio/Machines/airlock_open.ogg
|
||||
closeSound:
|
||||
path: /Audio/Machines/airlock_close.ogg
|
||||
denySound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
- type: Firelock
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: AirlockVisualizer
|
||||
open_sound:
|
||||
path: /Audio/Machines/airlock_open.ogg
|
||||
close_sound:
|
||||
path: /Audio/Machines/airlock_close.ogg
|
||||
deny_sound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
animation_time: 0.6
|
||||
animationTime: 0.6
|
||||
- type: WiresVisualizer
|
||||
- type: Wires
|
||||
BoardName: "Firelock Control"
|
||||
@@ -113,7 +113,7 @@
|
||||
fixtures:
|
||||
- shape:
|
||||
!type:PhysShapeRect
|
||||
bounds: "0.49,-0.49,-0.49,-0.2" # don't want this colliding with walls or they won't close
|
||||
bounds: "-0.2,-0.49,-0.49,0.49" # don't want this colliding with walls or they won't close
|
||||
mask:
|
||||
- MobImpassable
|
||||
layer:
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
- type: entity
|
||||
id: WindoorAssembly
|
||||
name: windoor assembly
|
||||
description: It opens, it closes, and you can see through it!
|
||||
parent: BaseStructure
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Sprite
|
||||
netsync: false
|
||||
drawdepth: FloorObjects
|
||||
sprite: Structures/Doors/Windoors/windoor.rsi
|
||||
layers:
|
||||
- state: assembly
|
||||
- type: Physics
|
||||
fixtures:
|
||||
- shape:
|
||||
!type:PhysShapeAabb
|
||||
bounds: "-0.2,-0.49,-0.49,0.49"
|
||||
mass: 30
|
||||
mask:
|
||||
- Impassable
|
||||
- VaultImpassable
|
||||
- type: Anchorable
|
||||
- type: Pullable
|
||||
- type: Rotatable
|
||||
- type: Damageable
|
||||
resistances: metallicResistances
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 300
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: ["Destruction"]
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
SheetSteel1:
|
||||
min: 1
|
||||
max: 3
|
||||
- type: Construction
|
||||
graph: windoor
|
||||
node: assembly
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
|
||||
- type: entity
|
||||
id: WindoorAssemblySecure
|
||||
name: secure windoor assembly
|
||||
description: It opens, it closes, and you can see through it! This one looks tough.
|
||||
parent: WindoorAssembly
|
||||
components:
|
||||
- type: Sprite
|
||||
netsync: false
|
||||
drawdepth: Mobs
|
||||
sprite: Structures/Doors/Windoors/windoor.rsi
|
||||
layers:
|
||||
- state: secure_underlay
|
||||
- state: assembly
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 600
|
||||
behaviors:
|
||||
- !type:DoActsBehavior
|
||||
acts: ["Destruction"]
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
SheetPlasteel1:
|
||||
min: 1
|
||||
max: 2
|
||||
- type: Construction
|
||||
graph: windoor
|
||||
node: assemblySecure
|
||||
|
||||
135
Resources/Prototypes/Entities/Structures/Doors/Windoors/base.yml
Normal file
135
Resources/Prototypes/Entities/Structures/Doors/Windoors/base.yml
Normal file
@@ -0,0 +1,135 @@
|
||||
- type: entity
|
||||
id: BaseWindoor
|
||||
parent: BaseStructure
|
||||
abstract: true
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Physics
|
||||
fixtures:
|
||||
- shape:
|
||||
!type:PhysShapeAabb
|
||||
bounds: "-0.2,-0.49,-0.49,0.49"
|
||||
mass: 50
|
||||
layer:
|
||||
- Impassable
|
||||
- MobImpassable
|
||||
- VaultImpassable
|
||||
- SmallImpassable
|
||||
mask:
|
||||
- VaultImpassable
|
||||
- type: Sprite
|
||||
netsync: false
|
||||
drawdepth: FloorObjects
|
||||
sprite: Structures/Doors/Windoors/windoor.rsi
|
||||
layers:
|
||||
- state: closed
|
||||
map: ["enum.DoorVisualLayers.Base"]
|
||||
- state: closed_unlit
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseUnlit"]
|
||||
- state: welded
|
||||
map: ["enum.DoorVisualLayers.BaseWelded"]
|
||||
- state: bolted_unlit
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseBolted"]
|
||||
- state: panel_open
|
||||
map: ["enum.WiresVisualLayers.MaintenancePanel"]
|
||||
- type: ApcPowerReceiver
|
||||
- type: Damageable
|
||||
resistances: glassResistances
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 200
|
||||
behaviors:
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
ShardGlass:
|
||||
min: 1
|
||||
max: 2
|
||||
SheetSteel1:
|
||||
min: 2
|
||||
max: 4
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- type: AccessReader
|
||||
- type: Airlock
|
||||
openPanelVisible: true
|
||||
- type: Door
|
||||
weldable: false
|
||||
openSound:
|
||||
path: /Audio/Machines/windoor_open.ogg
|
||||
closeSound:
|
||||
path: /Audio/Machines/windoor_open.ogg
|
||||
denySound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
- type: Wires
|
||||
BoardName: "Windoor Control"
|
||||
LayoutId: Airlock
|
||||
- type: UserInterface
|
||||
interfaces:
|
||||
- key: enum.WiresUiKey.Key
|
||||
type: WiresBoundUserInterface
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: AirlockVisualizer
|
||||
animationTime: 0.9
|
||||
denyAnimationTime: 0.4
|
||||
animatedPanel: false
|
||||
openUnlitVisible: true
|
||||
- type: WiresVisualizer
|
||||
- type: Construction
|
||||
graph: windoor
|
||||
node: windoor
|
||||
|
||||
- type: entity
|
||||
id: BaseSecureWindoor
|
||||
parent: BaseWindoor
|
||||
abstract: true
|
||||
components:
|
||||
- type: Airtight
|
||||
fixVacuum: true
|
||||
noAirWhenFullyAirBlocked: false
|
||||
airBlockedDirection:
|
||||
- South
|
||||
- type: Sprite
|
||||
netsync: false
|
||||
drawdepth: FloorObjects
|
||||
sprite: Structures/Doors/Windoors/windoor.rsi
|
||||
layers:
|
||||
- state: secure_underlay
|
||||
- state: closed
|
||||
map: [ "enum.DoorVisualLayers.Base" ]
|
||||
- state: closed_unlit
|
||||
shader: unshaded
|
||||
map: [ "enum.DoorVisualLayers.BaseUnlit" ]
|
||||
- state: welded
|
||||
map: [ "enum.DoorVisualLayers.BaseWelded" ]
|
||||
- state: bolted_unlit
|
||||
shader: unshaded
|
||||
map: [ "enum.DoorVisualLayers.BaseBolted" ]
|
||||
- state: panel_open
|
||||
map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
|
||||
visible: false
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 400
|
||||
behaviors:
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
ShardGlass:
|
||||
min: 1
|
||||
max: 2
|
||||
SheetPlasteel1:
|
||||
min: 1
|
||||
max: 2
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- type: Construction
|
||||
graph: windoor
|
||||
node: windoorSecure
|
||||
@@ -0,0 +1,66 @@
|
||||
- type: entity
|
||||
id: Windoor
|
||||
parent: BaseWindoor
|
||||
name: windoor
|
||||
description: It's a window and a sliding door. Wow!
|
||||
|
||||
- type: entity
|
||||
id: WindoorSecure
|
||||
parent: BaseSecureWindoor
|
||||
name: secure windoor
|
||||
description: It's a sturdy window and a sliding door. Wow!
|
||||
|
||||
# TODO remove these with parameterized prototypes/whatever we end up doing
|
||||
# Bar windoor
|
||||
- type: entity
|
||||
parent: Windoor
|
||||
id: WindoorBarLocked
|
||||
suffix: Bar, Locked
|
||||
components:
|
||||
- type: AccessReader
|
||||
access: [["Bar"]]
|
||||
|
||||
# Chemistry windoor
|
||||
- type: entity
|
||||
parent: WindoorSecure
|
||||
id: WindoorMedicalLocked
|
||||
suffix: Medical, Locked
|
||||
components:
|
||||
- type: AccessReader
|
||||
access: [["Medical"]]
|
||||
|
||||
# Science windoor
|
||||
- type: entity
|
||||
parent: WindoorSecure
|
||||
id: WindoorScienceLocked
|
||||
suffix: Science, Locked
|
||||
components:
|
||||
- type: AccessReader
|
||||
access: [["Research"]]
|
||||
|
||||
# HOP's office windoor
|
||||
- type: entity
|
||||
parent: WindoorSecure
|
||||
id: WindoorCommandLocked
|
||||
suffix: Command, Locked
|
||||
components:
|
||||
- type: AccessReader
|
||||
access: [["Command"]]
|
||||
|
||||
# Cargo windoor
|
||||
- type: entity
|
||||
parent: Windoor
|
||||
id: WindoorCargoLocked
|
||||
suffix: Cargo, Locked
|
||||
components:
|
||||
- type: AccessReader
|
||||
access: [["Cargo"]]
|
||||
|
||||
# Security windoor
|
||||
- type: entity
|
||||
parent: WindoorSecure
|
||||
id: WindoorSecurityLocked
|
||||
suffix: Security, Locked
|
||||
components:
|
||||
- type: AccessReader
|
||||
access: [["Security"]]
|
||||
@@ -23,6 +23,25 @@
|
||||
- Opaque
|
||||
mask:
|
||||
- MobMask
|
||||
- type: Construction
|
||||
graph: machine
|
||||
node: machine
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 100
|
||||
behaviors:
|
||||
- !type:ChangeConstructionNodeBehavior
|
||||
node: machineFrame
|
||||
- !type:DoActsBehavior
|
||||
acts: ["Destruction"]
|
||||
- type: Machine
|
||||
board: CloningPodMachineCircuitboard
|
||||
- type: MaterialStorage
|
||||
- type: Wires
|
||||
BoardName: "CloningPod"
|
||||
LayoutId: CloningPod
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: CloningPodVisualizer
|
||||
|
||||
@@ -25,6 +25,9 @@
|
||||
- shape:
|
||||
!type:PhysShapeAabb
|
||||
bounds: "-1.5,-1.5,1.5,1.5"
|
||||
mass: 500
|
||||
mask:
|
||||
- Impassable
|
||||
layer:
|
||||
- Opaque
|
||||
- Impassable
|
||||
|
||||
@@ -166,6 +166,8 @@
|
||||
- FirelockElectronics
|
||||
- DoorElectronics
|
||||
- APCElectronics
|
||||
- CloningPodMachineCircuitboard
|
||||
- MedicalScannerMachineCircuitboard
|
||||
- Bucket
|
||||
- MopItem
|
||||
- SprayBottle
|
||||
|
||||
@@ -14,6 +14,25 @@
|
||||
map: ["enum.MedicalScannerVisualLayers.Machine"]
|
||||
- state: idle_unlit
|
||||
map: ["enum.MedicalScannerVisualLayers.Terminal"]
|
||||
- type: Construction
|
||||
graph: machine
|
||||
node: machine
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 100
|
||||
behaviors:
|
||||
- !type:ChangeConstructionNodeBehavior
|
||||
node: machineFrame
|
||||
- !type:DoActsBehavior
|
||||
acts: ["Destruction"]
|
||||
- type: Machine
|
||||
board: MedicalScannerMachineCircuitboard
|
||||
- type: MaterialStorage
|
||||
- type: Wires
|
||||
BoardName: "MedicalScanner"
|
||||
LayoutId: MedicalScanner
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: MedicalScannerVisualizer
|
||||
|
||||
@@ -33,11 +33,14 @@
|
||||
state: pipeStraight
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: pumpPressure
|
||||
map: [ "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer", "enum.PressurePumpVisualizer+Layers.Enabled" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: PressurePumpVisualizer
|
||||
disabledState: pumpPressure
|
||||
enabledState: pumpPressureOn
|
||||
- type: GasPressurePump
|
||||
|
||||
@@ -57,6 +60,12 @@
|
||||
state: pipeStraight
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: pumpVolume
|
||||
map: [ "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasVolumePump
|
||||
|
||||
- type: entity
|
||||
@@ -75,6 +84,12 @@
|
||||
state: pipeStraight
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: pumpPassiveGate
|
||||
map: [ "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasPassiveGate
|
||||
|
||||
- type: entity
|
||||
@@ -94,6 +109,12 @@
|
||||
state: pipeStraight
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: pumpPassiveGate
|
||||
map: [ "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasValve
|
||||
- type: NodeContainer
|
||||
nodes:
|
||||
@@ -118,6 +139,12 @@
|
||||
state: pipeHalf
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: gasCanisterPort
|
||||
map: [ "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasPort
|
||||
- type: NodeContainer
|
||||
nodes:
|
||||
@@ -142,9 +169,10 @@
|
||||
state: pipeStraight
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: vent_off
|
||||
map: ["enum.VentVisualLayers.Vent"]
|
||||
map: [ "enum.VentVisualLayers.Vent", "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: VentPumpVisualizer
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
- type: NodeContainer
|
||||
- type: AtmosUnsafeUnanchor
|
||||
- type: AtmosPipeColor
|
||||
- type: SubFloorHide
|
||||
|
||||
#Note: The PipeDirection of the PipeNode should be the south-facing version, because the entity starts at an angle of 0 (south)
|
||||
|
||||
|
||||
@@ -38,6 +38,15 @@
|
||||
state: pipeTJunction
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: gasFilter
|
||||
map: [ "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer", "enum.GasFilterVisualizer+Layers.Enabled" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasFilterVisualizer
|
||||
disabledState: gasFilter
|
||||
enabledState: gasFilterOn
|
||||
- type: GasFilter
|
||||
|
||||
- type: entity
|
||||
@@ -57,6 +66,12 @@
|
||||
state: pipeTJunction
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: gasFilter
|
||||
map: [ "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasMixer
|
||||
inletOne: inlet
|
||||
inletTwo: filter
|
||||
|
||||
@@ -29,9 +29,10 @@
|
||||
state: pipeHalf
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: vent_off
|
||||
map: ["enum.VentVisualLayers.Vent"]
|
||||
map: [ "enum.VentVisualLayers.Vent", "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: VentPumpVisualizer
|
||||
@@ -54,8 +55,10 @@
|
||||
state: pipeHalf
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: vent_off
|
||||
map: [ "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasPassiveVent
|
||||
@@ -76,9 +79,10 @@
|
||||
state: pipeHalf
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- state: scrub_off
|
||||
map: ["enum.ScrubberVisualLayers.Scrubber"]
|
||||
map: [ "enum.ScrubberVisualLayers.Scrubber", "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: ScrubberVisualizer
|
||||
@@ -93,18 +97,24 @@
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
- type: GasOutletInjector
|
||||
|
||||
# TODO ATMOS: Actual sprite for this.
|
||||
- type: Sprite
|
||||
netsync: false
|
||||
layers:
|
||||
- state: pipeHalf
|
||||
sprite: Structures/Piping/Atmospherics/pipe.rsi
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe", "enum.SubFloorShowLayerVisualizer+Layers.FirstLayer" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: SubFloorShowLayerVisualizer
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasOutletInjector
|
||||
|
||||
- type: entity
|
||||
parent: GasUnaryBase
|
||||
id: GasThermoMachineBase
|
||||
parent: BaseMachinePowered
|
||||
id: BaseGasThermoMachine
|
||||
name: thermomachine
|
||||
description: Heats or cools gas in connected pipes.
|
||||
abstract: true
|
||||
@@ -117,10 +127,19 @@
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: GasThermoMachine
|
||||
- type: AtmosPipeColor
|
||||
- type: AtmosDevice
|
||||
- type: NodeContainer
|
||||
nodes:
|
||||
pipe:
|
||||
!type:PipeNode
|
||||
nodeGroupID: Pipe
|
||||
pipeDirection: South
|
||||
|
||||
- type: entity
|
||||
parent: GasThermoMachineBase
|
||||
parent: BaseGasThermoMachine
|
||||
id: GasThermoMachineFreezer
|
||||
name: freezer
|
||||
placement:
|
||||
@@ -129,18 +148,22 @@
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: freezer_off
|
||||
map: [ "enum.ThermoMachineVisualizer+Layers.Enabled" ]
|
||||
- state: pipe
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: ThermoMachineVisualizer
|
||||
disabledState: freezer_off
|
||||
enabledState: freezer_on
|
||||
- type: GasThermoMachine
|
||||
mode: Freezer
|
||||
minTemperature: 73.15
|
||||
|
||||
- type: entity
|
||||
parent: GasThermoMachineBase
|
||||
parent: BaseGasThermoMachine
|
||||
id: GasThermoMachineHeater
|
||||
name: heater
|
||||
placement:
|
||||
@@ -149,11 +172,15 @@
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: heater_off
|
||||
map: [ "enum.ThermoMachineVisualizer+Layers.Enabled" ]
|
||||
- state: pipe
|
||||
map: [ "enum.PipeColorVisualizer+Layers.Pipe" ]
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: PipeConnectorVisualizer
|
||||
- type: PipeColorVisualizer
|
||||
- type: ThermoMachineVisualizer
|
||||
disabledState: heater_off
|
||||
enabledState: heater_on
|
||||
- type: GasThermoMachine
|
||||
mode: Heater
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
- type: entity
|
||||
id: ContainmentFieldGenerator
|
||||
name: containment field generator
|
||||
description: A machine that generates a containment field when powered by an emitter.\nKeeps the Singularity docile.
|
||||
description: A machine that generates a containment field when powered by an emitter. Keeps the Singularity docile.
|
||||
placement:
|
||||
mode: SnapgridCenter
|
||||
components:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
- type: entity
|
||||
id: Singularity
|
||||
name: gravitational singularity
|
||||
description: A mesmerizing swirl of darkness that sucks in everything.\nIf it's moving towards you, run.
|
||||
description: A mesmerizing swirl of darkness that sucks in everything. If it's moving towards you, run.
|
||||
components:
|
||||
- type: Clickable
|
||||
- type: Physics
|
||||
|
||||
@@ -1,73 +0,0 @@
|
||||
- type: entity
|
||||
abstract: true
|
||||
id: GasCanister
|
||||
name: gas canister
|
||||
description: A canister that can contain any type of gas. It can be attached to connector ports using a wrench.
|
||||
parent: BaseStructureDynamic
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Sprite
|
||||
netsync: false
|
||||
sprite: Structures/Storage/canister.rsi
|
||||
state: grey
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: GasPortableVisualizer
|
||||
stateConnected: can-connector
|
||||
- type: GasCanisterVisualizer
|
||||
insertedTankState: can-open
|
||||
pressureStates:
|
||||
- can-o0
|
||||
- can-o1
|
||||
- can-o2
|
||||
- can-o3
|
||||
- type: UserInterface
|
||||
interfaces:
|
||||
- key: enum.GasCanisterUiKey.Key
|
||||
type: GasCanisterBoundUserInterface
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 300
|
||||
behaviors:
|
||||
- !type:PlaySoundBehavior
|
||||
sound:
|
||||
path: /Audio/Effects/metalbreak.ogg
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
GasCanisterBrokenBase:
|
||||
min: 1
|
||||
max: 1
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- type: Damageable
|
||||
resistances: metallicResistances
|
||||
- type: Physics
|
||||
bodyType: Dynamic
|
||||
fixtures:
|
||||
- shape:
|
||||
!type:PhysShapeAabb
|
||||
bounds: "-0.25,-0.25,0.25,0.25"
|
||||
mass: 25
|
||||
mask:
|
||||
- MobImpassable
|
||||
layer:
|
||||
- Opaque
|
||||
- MobImpassable
|
||||
- SmallImpassable
|
||||
- VaultImpassable
|
||||
- type: AtmosDevice
|
||||
requireAnchored: false
|
||||
- type: ContainerContainer
|
||||
containers:
|
||||
GasCanisterTankHolder: !type:ContainerSlot {}
|
||||
- type: NodeContainer
|
||||
nodes:
|
||||
port:
|
||||
!type:PortablePipeNode
|
||||
nodeGroupID: Pipe
|
||||
rotationsEnabled: false
|
||||
volume: 1
|
||||
- type: GasPortable
|
||||
- type: GasCanister
|
||||
@@ -1,3 +1,77 @@
|
||||
- type: entity
|
||||
abstract: true
|
||||
id: GasCanister
|
||||
name: gas canister
|
||||
description: A canister that can contain any type of gas. It can be attached to connector ports using a wrench.
|
||||
parent: BaseStructureDynamic
|
||||
components:
|
||||
- type: InteractionOutline
|
||||
- type: Sprite
|
||||
netsync: false
|
||||
sprite: Structures/Storage/canister.rsi
|
||||
state: grey
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: GasPortableVisualizer
|
||||
stateConnected: can-connector
|
||||
- type: GasCanisterVisualizer
|
||||
insertedTankState: can-open
|
||||
pressureStates:
|
||||
- can-o0
|
||||
- can-o1
|
||||
- can-o2
|
||||
- can-o3
|
||||
- type: UserInterface
|
||||
interfaces:
|
||||
- key: enum.GasCanisterUiKey.Key
|
||||
type: GasCanisterBoundUserInterface
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
!type:DamageTrigger
|
||||
damage: 300
|
||||
behaviors:
|
||||
- !type:PlaySoundBehavior
|
||||
sound: /Audio/Effects/metalbreak.ogg
|
||||
- !type:SpawnEntitiesBehavior
|
||||
spawn:
|
||||
GasCanisterBrokenBase:
|
||||
min: 1
|
||||
max: 1
|
||||
- !type:DoActsBehavior
|
||||
acts: [ "Destruction" ]
|
||||
- type: Damageable
|
||||
resistances: metallicResistances
|
||||
- type: Physics
|
||||
bodyType: Dynamic
|
||||
fixtures:
|
||||
- shape:
|
||||
!type:PhysShapeAabb
|
||||
bounds: "-0.25,-0.25,0.25,0.25"
|
||||
mass: 25
|
||||
mask:
|
||||
- MobImpassable
|
||||
layer:
|
||||
- Opaque
|
||||
- MobImpassable
|
||||
- SmallImpassable
|
||||
- VaultImpassable
|
||||
- type: AtmosDevice
|
||||
requireAnchored: false
|
||||
joinSystem: true
|
||||
- type: ContainerContainer
|
||||
containers:
|
||||
GasCanisterTankHolder: !type:ContainerSlot {}
|
||||
- type: NodeContainer
|
||||
nodes:
|
||||
port:
|
||||
!type:PortablePipeNode
|
||||
nodeGroupID: Pipe
|
||||
rotationsEnabled: false
|
||||
volume: 1
|
||||
- type: GasPortable
|
||||
- type: GasCanister
|
||||
|
||||
- type: entity
|
||||
parent: GasCanister
|
||||
id: StorageCanister
|
||||
|
||||
@@ -103,3 +103,16 @@
|
||||
visuals:
|
||||
- type: StorageVisualizer
|
||||
state: bio_jan
|
||||
|
||||
# Maintenance closet
|
||||
- type: entity
|
||||
id: ClosetMaintenance
|
||||
name: maintenance closet
|
||||
parent: ClosetBase
|
||||
description: It's a storage unit.
|
||||
components:
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: StorageVisualizer
|
||||
state_open: generic_open
|
||||
state_closed: generic_door
|
||||
|
||||
@@ -56,6 +56,18 @@
|
||||
name: morgue tray
|
||||
description: If you lay down to have a rest on this, you'll soon have a problem.
|
||||
components:
|
||||
- type: Physics
|
||||
bodyType: Static
|
||||
fixtures:
|
||||
- shape:
|
||||
!type:PhysShapeAabb
|
||||
bounds: "-0.5, -0.5, 0.5, 0.5"
|
||||
mass: 25
|
||||
mask:
|
||||
- Impassable
|
||||
- MobImpassable
|
||||
- VaultImpassable
|
||||
- SmallImpassable
|
||||
- type: Sprite
|
||||
netsync: false
|
||||
sprite: Structures/Storage/morgue.rsi
|
||||
|
||||
Reference in New Issue
Block a user