Add entity prototype save test (#10274)

This commit is contained in:
Leon Friedrich
2022-08-17 12:47:58 +12:00
committed by GitHub
parent ad67a8508a
commit 93584f21db
104 changed files with 813 additions and 144 deletions

View File

@@ -10,6 +10,11 @@
components:
- type: Damageable
damageContainer: Biological
- type: BodyPart
- type: ContainerContainer
containers:
bodypart: !type:Container
ents: []
# For primates mainly
- type: entity

View File

@@ -8,6 +8,11 @@
components:
- type: Damageable
damageContainer: Biological
- type: BodyPart
- type: ContainerContainer
containers:
bodypart: !type:Container
ents: []
- type: entity
id: TorsoHuman

View File

@@ -8,6 +8,11 @@
components:
- type: Damageable
damageContainer: Biological
- type: BodyPart
- type: ContainerContainer
containers:
bodypart: !type:Container
ents: []
- type: entity
id: TorsoReptilian

View File

@@ -6,6 +6,11 @@
components:
- type: Damageable
damageContainer: Inorganic
- type: BodyPart
- type: ContainerContainer
containers:
bodypart: !type:Container
ents: []
- type: entity
id: LeftArmBorg

View File

@@ -7,6 +7,11 @@
components:
- type: Damageable
damageContainer: Biological
- type: BodyPart
- type: ContainerContainer
containers:
bodypart: !type:Container
ents: []
- type: entity
id: TorsoSkeleton

View File

@@ -7,6 +7,11 @@
components:
- type: Damageable
damageContainer: Biological
- type: BodyPart
- type: ContainerContainer
containers:
bodypart: !type:Container
ents: []
- type: entity
id: TorsoSlime

View File

@@ -8,6 +8,11 @@
components:
- type: Damageable
damageContainer: Biological
- type: BodyPart
- type: ContainerContainer
containers:
bodypart: !type:Container
ents: []
- type: entity
id: TorsoVox

View File

@@ -367,10 +367,22 @@
- id: MagazineShotgunIncendiary
amount: 6
# base BallisticAmmoProvider boxes
- type: entity
parent: BoxCardboard
id: BoxAmmoProvider
abstract: true
components:
- type: BallisticAmmoProvider
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
storagebase: !type:Container
# Shotgun Shells
- type: entity
name: box of shotgun beanbag cartridges
parent: BoxCardboard
parent: BoxAmmoProvider
id: BoxBeanbag
description: A box full of beanbag shots, designed for riot shotguns.
components:
@@ -384,7 +396,7 @@
- type: entity
name: box of shotgun lethal cartridges
parent: BoxCardboard
parent: BoxAmmoProvider
id: BoxLethalshot
description: A box full of lethal pellet shots, designed for riot shotguns.
components:
@@ -398,7 +410,7 @@
- type: entity
name: box of shotgun slug cartridges
parent: BoxCardboard
parent: BoxAmmoProvider
id: BoxShotgunSlug
description: A box full of shotgun slugs, designed for riot shotguns.
components:
@@ -412,7 +424,7 @@
- type: entity
name: box of shotgun flare cartridges
parent: BoxCardboard
parent: BoxAmmoProvider
id: BoxShotgunFlare
description: A box full of shotgun flare cartridges, designed for riot shotguns.
components:
@@ -426,7 +438,7 @@
- type: entity
name: box of shotgun incendiary cartridges
parent: BoxCardboard
parent: BoxAmmoProvider
id: BoxShotgunIncendiary
description: A box full of shotgun incendiary cartridges, designed for riot shotguns.
components:
@@ -440,7 +452,7 @@
- type: entity
name: box of shotgun practice cartridges
parent: BoxCardboard
parent: BoxAmmoProvider
id: BoxShotgunPractice
description: A box full of shotgun practice cartridges, designed for riot shotguns.
components:
@@ -454,7 +466,7 @@
- type: entity
name: box of tranquilizer cartridges
parent: BoxCardboard
parent: BoxAmmoProvider
id: BoxShellTranquilizer
description: A box full of tranquilizer cartridges, designed for riot shotguns.
components:

View File

@@ -15,6 +15,10 @@
- back
- type: Storage
capacity: 100
- type: ContainerContainer
containers:
storagebase: !type:Container
ents: []
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key

View File

@@ -15,6 +15,10 @@
- back
- type: Storage
capacity: 120
- type: ContainerContainer
containers:
storagebase: !type:Container
ents: []
- type: ClothingSpeedModifier
walkModifier: 1
sprintModifier: 0.9

View File

@@ -15,6 +15,10 @@
- back
- type: Storage
capacity: 100
- type: ContainerContainer
containers:
storagebase: !type:Container
ents: []
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key

View File

@@ -20,6 +20,10 @@
capacity: 40
equipSound:
path: /Audio/Items/belt_equip.ogg
- type: ContainerContainer
containers:
storagebase: !type:Container
ents: []
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key

View File

@@ -221,6 +221,10 @@
Heat: 0.65
Radiation: 1
- type: IdentityBlocker
- type: ItemSlots
- type: ContainerContainer
containers:
cell_slot: !type:ContainerSlot {}
- type: entity
parent: ClothingHeadLightBase

View File

@@ -30,6 +30,10 @@
components:
- type: Storage
capacity: 10
- type: ContainerContainer
containers:
storagebase: !type:Container
ents: []
- type: UserInterface
interfaces:
- key: enum.StorageUiKey.Key
@@ -62,6 +66,9 @@
- type: DiseaseProtection
protection: 0.05
- type: ToggleableClothing
- type: ContainerContainer
containers:
toggleable-clothing: !type:ContainerSlot {}
- type: entity
abstract: true

View File

@@ -35,6 +35,9 @@
coefficient: 0.5
- type: ToggleableClothing
clothingPrototype: ClothingHeadHelmetEVA
- type: ContainerContainer
containers:
toggleable-clothing: !type:ContainerSlot {}
- type: entity
parent: ClothingOuterBaseLarge

View File

@@ -8,6 +8,8 @@
- type: Sprite
drawdepth: FloorObjects
- type: SolutionContainerManager
solutions:
puddle: {}
- type: Puddle
spillSound:
path: /Audio/Effects/Fluids/splat.ogg

View File

@@ -8,6 +8,7 @@
- state: blue
- texture: Mobs/Species/Human/parts.rsi/full.png
- state: ai
- type: Timer
- type: TimedSpawner
prototypes:
- MobSpirate
@@ -27,6 +28,7 @@
- state: blue
- texture: Mobs/Aliens/Xenos/burrower.rsi/crit.png
- state: ai
- type: Timer
- type: TimedSpawner
prototypes:
- MobXeno
@@ -45,6 +47,7 @@
- state: blue
- texture: Mobs/Animals/mouse.rsi/icon-2.png
- state: timed
- type: Timer
- type: TimedSpawner
prototypes:
- MobMouse

View File

@@ -51,7 +51,7 @@
- type: entity
parent: BaseMobHuman
suffix: Dead
save: true
save: false # mobs are currently not saveable.
id: SalvageHumanCorpse
name: unidentified human
description: We barely knew ye.

View File

@@ -4,6 +4,7 @@
name: GuardianBase
id: MobGuardianBase
description: guardian
save: false
components:
- type: GhostTakeoverAvailable
makeSentient: true

View File

@@ -22,6 +22,8 @@
solution: drink
- type: RefillableSolution
solution: drink
- type: DrainableSolution
solution: drink
- type: UserInterface
interfaces:
- key: enum.TransferAmountUiKey.Key

View File

@@ -27,6 +27,12 @@
- state: icon
map: ["enum.DrinkCanVisualLayers.Icon"]
netsync: false
- type: FitsInDispenser
solution: drink
- type: DrawableSolution
solution: drink
- type: RefillableSolution
solution: drink
- type: DrainableSolution
solution: drink
- type: Appearance

View File

@@ -15,6 +15,8 @@
solution: drink
- type: RefillableSolution
solution: drink
- type: DrainableSolution
solution: drink
- type: SolutionTransfer
canChangeTransferAmount: true
maxTransferAmount: 10

View File

@@ -16,6 +16,8 @@
solution: drink
- type: RefillableSolution
solution: drink
- type: DrainableSolution
solution: drink
- type: SolutionTransfer
canChangeTransferAmount: true
- type: Spillable

View File

@@ -19,6 +19,14 @@
isOpen: true
- type: Spillable
solution: drink
- type: FitsInDispenser
solution: drink
- type: DrawableSolution
solution: drink
- type: RefillableSolution
solution: drink
- type: DrainableSolution
solution: drink
- type: UserInterface
interfaces:
- key: enum.TransferAmountUiKey.Key

View File

@@ -11,6 +11,7 @@
components:
- type: Drink
solution: food
refillable: false
openSounds:
collection: packetOpenSounds
- type: DrawableSolution
@@ -19,7 +20,9 @@
solution: food
- type: DrainableSolution
solution: food
# Note NOT refillable
# Note NOT refillable.
# It be a shame if it turned out ALL drinks were ALWAYS refillable.... ffs.
# Well its fixed now, but I want to share my pain.
- type: SolutionContainerManager
solutions:
food:
@@ -331,6 +334,10 @@
solution: food
openSounds:
collection: pop
- type: RefillableSolution
solution: food
- type: DrainableSolution
solution: food
- type: SolutionContainerManager
solutions:
food:
@@ -478,6 +485,10 @@
solution: food
openSounds:
collection: pop
- type: RefillableSolution
solution: food
- type: DrainableSolution
solution: food
- type: SolutionContainerManager
solutions:
food:

View File

@@ -8,6 +8,10 @@
- type: ItemCooldown
- type: UseDelay
delay: 1.0
- type: ItemSlots
- type: ContainerContainer
containers:
cell_slot: !type:ContainerSlot {}
- type: PowerCellSlot
cellSlot:
startingItem: PowerCellMedium

View File

@@ -48,6 +48,10 @@
- type: StaticPrice
price: 50000 # YOU STOLE A NUCLEAR FISSION EXPLOSIVE?!
- type: CargoSellBlacklist
- type: ItemSlots
- type: ContainerContainer
containers:
Nuke: !type:ContainerSlot
- type: entity
parent: NuclearBomb

View File

@@ -76,6 +76,11 @@
enum.ChemicalPayloadFilledSlots.Left: payload-chemical-left
enum.ChemicalPayloadFilledSlots.Right: payload-chemical-right
enum.ChemicalPayloadFilledSlots.Both: payload-chemical-armed
- type: ItemSlots
- type: ContainerContainer
containers:
BeakerSlotA: !type:ContainerSlot
BeakerSlotB: !type:ContainerSlot
- type: entity
name: flash payload

View File

@@ -17,6 +17,11 @@
state: pda
- type: Item
size: 10
- type: ContainerContainer
containers:
PDA-id: !type:ContainerSlot {}
PDA-pen: !type:ContainerSlot {}
- type: ItemSlots
- type: Clothing
quickEquip: false
slots:

View File

@@ -147,7 +147,7 @@
state: toms
- type: entity
parent: BasePlaceableInstrument
parent: [ BasePlaceableInstrument, ConstructibleMachine]
id: DawInstrument
name: digital audio workstation
description: Cutting edge music technology, straight from the 90s.
@@ -161,9 +161,6 @@
map: ["enum.WiresVisualLayers.MaintenancePanel"]
- type: Appearance
- type: WiresVisuals
- type: Construction
graph: Machine
node: machine
- type: Wires
BoardName: "DawInstrument"
LayoutId: DawInstrument

View File

@@ -491,6 +491,10 @@
capacity: 1
soundInsert:
path: /Audio/Weapons/drawbow2.ogg
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []
- type: entity
parent: BaseItem
@@ -530,6 +534,10 @@
autoCycle: true
soundInsert:
path: /Audio/Weapons/Guns/MagIn/revolver_magin.ogg
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []
- type: entity
parent: BaseItem

View File

@@ -12,3 +12,6 @@
- type: Storage
capacity: 30
size: 10
- type: ContainerContainer
containers:
storagebase: !type:Container

View File

@@ -7,6 +7,7 @@
- type: HandheldLight
addPrefix: true
- type: PowerCellSlot
- type: ItemSlots
- type: ContainerContainer
containers:
cell_slot: !type:ContainerSlot
@@ -16,6 +17,7 @@
- type: Item
sprite: Objects/Misc/Lights/lights.rsi
size: 20
heldPrefix: off
- type: PointLight
netsync: false
enabled: false

View File

@@ -67,6 +67,11 @@
False: {visible: false}
- type: Pullable
- type: AntiRottingContainer
- type: ItemSlots
- type: ContainerContainer
containers:
entity_storage: !type:Container
paper_label: !type:ContainerSlot
- type: entity
id: BodyBag_Folded

View File

@@ -67,3 +67,8 @@
- type: StorageVisualizer
state_open: artifact_container_open
state_closed: artifact_container_door
- type: ItemSlots
- type: ContainerContainer
containers:
entity_storage: !type:Container
paper_label: !type:ContainerSlot

View File

@@ -31,6 +31,7 @@
- type: ContainerContainer
containers:
cell_slot: !type:ContainerSlot
- type: ItemSlots
- type: Sprite
sprite: Objects/Tools/flashlight.rsi
netsync: false

View File

@@ -30,6 +30,10 @@
- type: PowerCellSlot
cellSlot:
startingItem: PowerCellMedium
- type: ItemSlots
- type: ContainerContainer
containers:
cell_slot: !type:ContainerSlot {}
- type: entity
name: extra-bright lantern

View File

@@ -19,3 +19,7 @@
steps: 2
zeroVisible: false
- type: Appearance
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []

View File

@@ -11,6 +11,10 @@
capacity: 30
- type: Sprite
netsync: false
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []
# Boxes
- type: entity

View File

@@ -11,6 +11,10 @@
capacity: 6
- type: Sprite
netsync: false
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []
- type: entity
id: SpeedLoaderMagnum

View File

@@ -12,6 +12,10 @@
- type: Sprite
netsync: false
sprite: Objects/Weapons/Guns/Ammunition/SpeedLoaders/Pistol/pistol_speed_loader.rsi
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []
- type: entity
id: SpeedLoaderPistol

View File

@@ -22,3 +22,7 @@
steps: 6
zeroVisible: false
- type: Appearance
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []

View File

@@ -21,6 +21,10 @@
steps: 7
zeroVisible: false
- type: Appearance
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []
- type: entity
id: SpeedLoaderCap

View File

@@ -44,3 +44,7 @@
steps: 4
zeroVisible: true
- type: Appearance
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []

View File

@@ -37,14 +37,24 @@
angularDamping: 0
- type: Fixtures
fixtures:
- shape:
- id: projectile
shape:
!type:PhysShapeAabb
bounds: "-0.1,-0.1,0.1,0.1"
hard: false
id: projectile
mask:
- Impassable
- BulletImpassable
- &flybyfixture
id: fly-by
shape: !type:PhysShapeCircle
radius: 1.5
layer:
- Impassable
- MidImpassable
- HighImpassable
- LowImpassable
hard: False
- type: Projectile
impactEffect: BulletImpactEffect
damage:
@@ -76,6 +86,7 @@
mask:
- Impassable
- BulletImpassable
- *flybyfixture
- type: entity
id: BaseBulletHighVelocity
@@ -142,6 +153,7 @@
mask:
- Impassable
- BulletImpassable
- *flybyfixture
- type: Ammo
- type: StaminaDamageOnCollide
damage: 30
@@ -178,6 +190,7 @@
mask:
- Impassable
- Opaque
- *flybyfixture
- type: Projectile
# soundHit: Waiting on serv3
damage:

View File

@@ -17,12 +17,17 @@
- SemiAuto
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/revolver.ogg
- type: ContainerContainer
containers:
revolver-ammo: !type:Container
- type: RevolverAmmoProvider
whitelist:
tags:
- CartridgeMagnum
proto: CartridgeMagnum
capacity: 7
chambers: [ True, True, True, True, True, True, True ]
ammoSlots: [ null, null, null, null, null, null, null ]
soundEject:
path: /Audio/Weapons/Guns/MagOut/revolver_magout.ogg
soundInsert:
@@ -46,6 +51,8 @@
sprite: Objects/Weapons/Guns/Revolvers/deckard.rsi
- type: RevolverAmmoProvider
capacity: 5
chambers: [ True, True, True, True, True ]
ammoSlots: [ null, null, null, null, null ]
- type: MagazineVisuals
magState: mag
steps: 4
@@ -64,6 +71,8 @@
sprite: Objects/Weapons/Guns/Revolvers/inspector.rsi
- type: RevolverAmmoProvider
capacity: 6
chambers: [ True, True, True, True, True, True ]
ammoSlots: [ null, null, null, null, null, null ]
- type: entity
name: Mateba
@@ -75,8 +84,6 @@
sprite: Objects/Weapons/Guns/Revolvers/mateba.rsi
- type: Item
sprite: Objects/Weapons/Guns/Revolvers/mateba.rsi
- type: RevolverAmmoProvider
capacity: 7
- type: Gun
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/mateba.ogg
@@ -104,5 +111,10 @@
sprite: Objects/Weapons/Guns/Revolvers/pirate_revolver.rsi
- type: Gun
fireRate: 1
- type: ContainerContainer
containers:
revolver-ammo: !type:Container
- type: RevolverAmmoProvider
capacity: 5
chambers: [ True, True, True, True, True ]
ammoSlots: [ null, null, null, null, null ]

View File

@@ -31,6 +31,10 @@
proto: ShellShotgun
soundInsert:
path: /Audio/Weapons/Guns/MagIn/shotgun_insert.ogg
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []
- type: entity
name: Bulldog

View File

@@ -27,6 +27,10 @@
whitelist:
tags:
- CartridgeLightRifle
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []
- type: entity
name: Kardashev-Mosin

View File

@@ -27,3 +27,7 @@
capacity: 1
soundInsert:
path: /Audio/Weapons/Guns/MagIn/shotgun_insert.ogg
- type: ContainerContainer
containers:
ballistic-ammo: !type:Container
ents: []

View File

@@ -22,6 +22,7 @@
- type: Physics
bodyType: Dynamic
fixedRotation: false
canCollide: false # most entities start asleep.
- type: Fixtures
fixtures:
- shape:
@@ -48,4 +49,8 @@
interfaces:
- key: enum.StorageUiKey.Key
type: StorageBoundUserInterface
- type: ContainerContainer
containers:
storagebase: !type:Container
ents: []

View File

@@ -1,6 +1,7 @@
- type: entity
abstract: true
id: ReagentDispenserBase
parent: ConstructibleMachine
placement:
mode: SnapgridCenter
components:
@@ -52,3 +53,9 @@
whitelist:
components:
- FitsInDispenser
- type: ItemSlots
- type: ContainerContainer
containers:
machine_board: !type:Container
machine_parts: !type:Container
ReagentDispenser-beaker: !type:ContainerSlot

View File

@@ -12,9 +12,6 @@
emagPack: ChemDispenserEmaggedInventory
- type: ApcPowerReceiver
- type: ExtensionCableReceiver
- type: Construction
graph: Machine
node: machine
- type: Destructible
thresholds:
- trigger:

View File

@@ -85,10 +85,14 @@
interfaces:
- key: enum.WiresUiKey.Key
type: WiresBoundUserInterface
- type: Physics
canCollide: false
- type: Airtight
fixVacuum: true
airBlocked: false
noAirWhenFullyAirBlocked: true
- type: Occluder
enabled: false
- type: Construction
graph: Firelock
node: Firelock
@@ -126,6 +130,7 @@
sprite: Structures/Doors/edge_door_hazard.rsi
- type: Airtight
fixVacuum: true
airBlocked: false
noAirWhenFullyAirBlocked: false
airBlockedDirection:
- South
@@ -143,3 +148,5 @@
enabled: false
- type: Door
occludes: false
- type: Physics
canCollide: false

View File

@@ -33,3 +33,9 @@
components:
- type: Door
state: Open
- type: Occluder
enabled: false
- type: Physics
canCollide: false
- type: Airtight
airBlocked: false

View File

@@ -66,6 +66,11 @@
key: walls
mode: NoSprite
- type: DoorSignalControl
- type: SignalReceiver
inputs:
Open: []
Close: []
Toggle: []
- type: InteractionPopup
interactSuccessString: comp-window-knock
messagePerceivedByOthers: comp-window-knock
@@ -127,6 +132,12 @@
- type: Construction
graph: Shutters
node: ShuttersRadiation
- type: Occluder
enabled: false
- type: Physics
canCollide: false
- type: Airtight
airBlocked: false
- type: entity
id: ShuttersWindow
@@ -154,6 +165,10 @@
- type: Construction
graph: Shutters
node: ShuttersWindow
- type: Physics
canCollide: false
- type: Airtight
airBlocked: false
# Frame for construction
- type: entity

View File

@@ -25,6 +25,9 @@
- type: PottedPlantHide
- type: SecretStash
secretPartName: the plant
- type: ContainerContainer
containers:
stash: !type:ContainerSlot {}
- type: Pullable
- type: Damageable
damageContainer: Inorganic # The pot. Not the plant. Or is it plastic?

View File

@@ -18,6 +18,9 @@
- type: Toilet
- type: SecretStash
secretPartName: the toilet cistern
- type: ContainerContainer
containers:
stash: !type:ContainerSlot {}
- type: SolutionContainerManager
solutions:
toilet:
@@ -28,6 +31,7 @@
graph: Toilet
node: toilet
- type: Appearance
- type: entity
id: ToiletDirtyWater
parent: ToiletEmpty

View File

@@ -49,3 +49,7 @@
- type: EmitSoundOnUIOpen
sound:
collection: Keyboard
- type: ContainerContainer
containers:
board: !type:Container
ents: []

View File

@@ -382,6 +382,12 @@
- type: Tag
tags:
- EmagImmune
- type: ItemSlots
- type: ContainerContainer
containers:
board: !type:Container
IdCardConsole-privilegedId: !type:ContainerSlot
IdCardConsole-targetId: !type:ContainerSlot
- type: entity
parent: BaseComputer

View File

@@ -43,3 +43,19 @@
- type: ApcPowerReceiver
powerLoad: 1000
- type: ExtensionCableReceiver
- type: entity
abstract: true
id: ConstructibleMachine
components:
- type: Machine
- type: ContainerContainer
containers:
machine_board: !type:Container
machine_parts: !type:Container
- type: Construction
graph: Machine
node: machine
containers:
- machine_parts
- machine_board

View File

@@ -1,6 +1,6 @@
- type: entity
id: chem_master
parent: BaseMachinePowered
parent: [ BaseMachinePowered, ConstructibleMachine ]
name: ChemMaster 4000
description: An industrial grade chemical manipulator with pill and bottle production included.
placement:
@@ -60,7 +60,12 @@
- type: Machine
board: ChemMasterMachineCircuitboard
- type: MaterialStorage
- type: Construction
graph: Machine
node: machine
- type: ContainerContainer
containers:
machine_board: !type:Container
machine_parts: !type:Container
ChemMaster-beaker: !type:ContainerSlot
- type: ItemSlots
- type: SolutionContainerManager
solutions:
buffer: {}

View File

@@ -1,6 +1,6 @@
- type: entity
id: CloningPod
parent: BaseMachinePowered
parent: [ BaseMachinePowered, ConstructibleMachine ]
name: cloning pod
description: A Cloning Pod. 50% reliable.
components:
@@ -25,9 +25,6 @@
- MachineMask
layer:
- MachineLayer
- type: Construction
graph: Machine
node: machine
- type: Destructible
thresholds:
- trigger:

View File

@@ -1,5 +1,5 @@
- type: entity
parent: BaseMachinePowered
parent: [ BaseMachinePowered, ConstructibleMachine ]
id: Autolathe
name: autolathe
description: It produces items using metal and glass.
@@ -34,9 +34,6 @@
- MachineMask
layer:
- MachineLayer
- type: Construction
graph: Machine
node: machine
- type: Destructible
thresholds:
- trigger:
@@ -86,7 +83,7 @@
- Ingot
- type: entity
parent: BaseMachinePowered
parent: [ BaseMachinePowered, ConstructibleMachine ]
id: Protolathe
name: protolathe
description: Converts raw materials into useful objects.
@@ -122,9 +119,6 @@
layer:
- MachineLayer
- type: ResearchClient
- type: Construction
graph: Machine
node: machine
- type: Destructible
thresholds:
- trigger:

View File

@@ -1,6 +1,6 @@
- type: entity
id: MedicalScanner
parent: BaseMachinePowered
parent: [ BaseMachinePowered, ConstructibleMachine ]
name: medical scanner
description: A bulky medical scanner.
components:
@@ -28,9 +28,6 @@
- MachineMask
layer:
- MachineLayer
- type: Construction
graph: Machine
node: machine
- type: Destructible
thresholds:
- trigger:

View File

@@ -42,3 +42,8 @@
drawdepth: SmallObjects
- type: ApcPowerReceiver
powerLoad: 300
- type: ItemSlots
- type: ContainerContainer
containers:
ReagentGrinder-reagentContainerContainer: !type:ContainerSlot
ReagentGrinder-entityContainerContainer: !type:Container

View File

@@ -1,6 +1,6 @@
- type: entity
abstract: true
parent: BaseMachinePowered
parent: [ BaseMachinePowered, ConstructibleMachine ]
id: SurveillanceCameraRouterBase
name: camera router
description: A surveillance camera router. It routes. Perhaps.
@@ -14,9 +14,6 @@
interfaces:
- key: enum.SurveillanceCameraSetupUiKey.Router
type: SurveillanceCameraSetupBoundUi
- type: Construction
graph: Machine
node: machine
- type: Machine
board: SurveillanceCameraRouterCircuitboard
- type: Sprite
@@ -105,7 +102,7 @@
subnetFrequency: SurveillanceCameraGeneral
- type: entity
parent: BaseMachinePowered
parent: [ BaseMachinePowered, ConstructibleMachine ]
id: SurveillanceCameraWirelessRouterBase
name: wireless camera router
description: A wireless surveillance camera router. It routes. Perhaps.
@@ -120,9 +117,6 @@
interfaces:
- key: enum.SurveillanceCameraSetupUiKey.Router
type: SurveillanceCameraSetupBoundUi
- type: Construction
graph: Machine
node: machine
- type: Machine
board: SurveillanceCameraWirelessRouterCircuitboard
- type: Sprite

View File

@@ -1,13 +1,10 @@
- type: entity
abstract: true
parent: BaseStructureDynamic
parent: [ BaseStructureDynamic, ConstructibleMachine ]
id: SurveillanceWirelessCameraBase
name: wireless camera
description: A camera. It's watching you. Kinda.
components:
- type: Construction
graph: Machine
node: machine
- type: InteractionOutline
- type: Eye
- type: WirelessNetworkConnection

View File

@@ -9,6 +9,7 @@
- type: Clickable
- type: InteractionOutline
- type: Physics
- type: Fixtures
- type: Transform
anchored: true
- type: Damageable

View File

@@ -15,6 +15,7 @@
damageContainer: Inorganic
damageModifierSet: Metallic
- type: SubFloorHide
- type: CollideOnAnchor
- type: PipeAppearance
- type: Anchorable
- type: Rotatable

View File

@@ -15,6 +15,7 @@
!type:PipeNode
nodeGroupID: Pipe
pipeDirection: South
- type: CollideOnAnchor
- type: entity
parent: GasUnaryBase
@@ -184,7 +185,7 @@
- enum.LightLayers.Unshaded
- type: entity
parent: BaseMachinePowered
parent: [ BaseMachinePowered, ConstructibleMachine ]
id: BaseGasThermoMachine
name: thermomachine
abstract: true
@@ -207,9 +208,6 @@
- type: ActivatableUI
inHandsOnly: false
key: enum.ThermomachineUiKey.Key
- type: Construction
graph: Machine
node: machine
- type: Wires
BoardName: "Thermomachine"
LayoutId: Thermomachine
@@ -244,10 +242,6 @@
mode: Freezer
- type: Machine
board: ThermomachineFreezerMachineCircuitBoard
- type: ContainerContainer
containers:
machine_parts: !type:Container
machine_board: !type:Container
- type: entity
parent: BaseGasThermoMachine
@@ -273,7 +267,3 @@
mode: Heater
- type: Machine
board: ThermomachineHeaterMachineCircuitBoard
- type: ContainerContainer
containers:
machine_parts: !type:Container
machine_board: !type:Container

View File

@@ -49,6 +49,11 @@
node: broken
- type: Rotatable
- type: Pullable
- type: CollideOnAnchor
- type: ContainerContainer
containers:
disposal-tube: !type:Container
ents: []
- type: entity
id: DisposalHolder

View File

@@ -70,6 +70,10 @@
interfaces:
- key: enum.DisposalUnitUiKey.Key
type: DisposalUnitBoundUserInterface
- type: ContainerContainer
containers:
disposal-unit: !type:Container
ents: []
- type: entity
id: DisposalUnit

View File

@@ -1,6 +1,7 @@
- type: entity
id: Emitter
name: emitter
parent: ConstructibleMachine
description: A heavy duty industrial laser. Shoots non-stop when turned on.
placement:
mode: SnapgridCenter
@@ -70,8 +71,5 @@
locked: false
- type: AccessReader
access: [[ "Engineering" ]]
- type: Construction
graph: Machine
node: machine
- type: Machine
board: EmitterCircuitboard

View File

@@ -151,7 +151,7 @@
supplyRate: 3000
- type: entity
parent: BaseGenerator
parent: [ BaseGenerator, ConstructibleMachine ]
id: GeneratorPlasma
suffix: Plasma, 5kW
components:
@@ -160,21 +160,14 @@
- type: Sprite
sprite: Structures/Power/Generation/portable_generator.rsi
state: portgen0_1
- type: Construction
graph: Machine
node: machine
- type: Wires
BoardName: "GeneratorPlasma"
LayoutId: GeneratorPlasma
- type: Machine
board: GeneratorPlasmaMachineCircuitboard
- type: ContainerContainer
containers:
machine_parts: !type:Container
machine_board: !type:Container
- type: entity
parent: BaseGenerator
parent: [ BaseGenerator, ConstructibleMachine ]
id: GeneratorUranium
suffix: Uranium, 15kW
components:
@@ -183,18 +176,11 @@
- type: Sprite
sprite: Structures/Power/Generation/portable_generator.rsi
state: portgen1_1
- type: Construction
graph: Machine
node: machine
- type: Wires
BoardName: "GeneratorUranium"
LayoutId: GeneratorUranium
- type: Machine
board: GeneratorUraniumMachineCircuitboard
- type: ContainerContainer
containers:
machine_parts: !type:Container
machine_board: !type:Container
- type: entity
parent: BaseGeneratorWallmount

View File

@@ -26,6 +26,7 @@
- !type:DoActsBehavior
acts: ["Destruction"]
- type: SubFloorHide
- type: CollideOnAnchor
- type: AmbientSound
enabled: false # Leaving as false because 90% of them are set to this.
- type: Appearance

View File

@@ -38,6 +38,10 @@
- MachineMask
layer:
- HighImpassable
- type: ItemSlots
- type: ContainerContainer
containers:
charger-slot: !type:ContainerSlot
- type: entity
name: recharger

View File

@@ -2,7 +2,7 @@
- type: entity
abstract: true
id: BaseSMES
parent: BaseMachine
parent: [ BaseMachine, ConstructibleMachine ]
name: SMES
description: A high-capacity superconducting magnetic energy storage (SMES) unit.
placement:
@@ -51,18 +51,11 @@
energy: 1.6
color: "#c9c042"
castShadows: false
- type: Construction
graph: Machine
node: machine
- type: Wires
BoardName: "SMES"
LayoutId: SMES
- type: Machine
board: SMESMachineCircuitboard
- type: ContainerContainer
containers:
machine_parts: !type:Container
machine_board: !type:Container
- type: StationInfiniteBatteryTarget
# SMES' in use

View File

@@ -2,7 +2,7 @@
- type: entity
abstract: true
id: BaseSubstation
parent: BaseMachine
parent: [ BaseMachine, ConstructibleMachine ]
name: substation
description: Reduces the voltage of electricity put into it.
placement:
@@ -43,9 +43,6 @@
maxChargeRate: 5000
supplyRampTolerance: 5000
supplyRampRate: 1000
- type: Construction
graph: Machine
node: machine
- type: Destructible
thresholds:
- trigger:
@@ -73,10 +70,6 @@
LayoutId: Substation
- type: Machine
board: SubstationMachineCircuitboard
- type: ContainerContainer
containers:
machine_parts: !type:Container
machine_board: !type:Container
- type: StationInfiniteBatteryTarget
# Compact Wall Substation Base

View File

@@ -34,6 +34,7 @@
capacity: 500
- type: Weldable
- type: PlaceableSurface
isPlaceable: false # defaults to closed.
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Metallic
@@ -61,6 +62,7 @@
containers:
entity_storage: !type:Container
paper_label: !type:ContainerSlot
- type: ItemSlots
- type: entity
id: CrateBaseSecure
@@ -97,6 +99,7 @@
capacity: 500
- type: Weldable
- type: PlaceableSurface
isPlaceable: false # defaults to closed.
- type: Damageable
damageContainer: Inorganic
damageModifierSet: StrongMetallic
@@ -123,3 +126,10 @@
- type: Construction
graph: CrateSecure
node: cratesecure
containers:
- entity_storage
- type: ContainerContainer
containers:
entity_storage: !type:Container
paper_label: !type:ContainerSlot
- type: ItemSlots

View File

@@ -23,7 +23,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: entity
id: CratePlastic
@@ -50,6 +51,8 @@
- type: Construction
graph: CratePlastic
node: crateplastic
containers:
- entity_storage
- type: entity
id: CrateFreezer
@@ -76,6 +79,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: AntiRottingContainer
- type: entity
@@ -103,6 +108,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: entity
id: CrateMedical
@@ -129,6 +136,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: entity
id: CrateRadiation
@@ -156,6 +165,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: entity
id: CrateInternals
@@ -182,6 +193,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: entity
id: CrateElectrical
@@ -208,6 +221,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: entity
id: CrateEngineering
@@ -234,6 +249,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: entity
id: CrateScience
@@ -260,6 +277,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
- type: entity
id: CrateSurgery
@@ -286,6 +305,8 @@
- type: Construction
graph: CrateGenericSteel
node: crategenericsteel
containers:
- entity_storage
# Secure Crates
@@ -629,4 +650,6 @@
- type: Construction
graph: CrateLivestock
node: cratelivestock
containers:
- entity_storage

View File

@@ -31,6 +31,10 @@
- type: ItemCabinetVisuals
openState: open
closedState: closed
- type: ItemSlots
- type: ContainerContainer
containers:
ItemCabinet: !type:ContainerSlot
placement:
mode: SnapgridCenter

View File

@@ -35,6 +35,10 @@
closedState: glass
- type: AccessReader
access: [["Atmospherics"]]
- type: ItemSlots
- type: ContainerContainer
containers:
ItemCabinet: !type:ContainerSlot
placement:
mode: SnapgridCenter

View File

@@ -22,6 +22,11 @@
- type: Construction
graph: SignalSwitchGraph
node: SignalSwitchNode
- type: Fixtures
- type: SignalTransmitter
outputs:
On: []
Off: []
- type: entity
id: SignalButton
@@ -49,6 +54,10 @@
- type: Construction
graph: SignalButtonGraph
node: SignalButtonNode
- type: Fixtures
- type: SignalTransmitter
outputs:
Pressed: []
- type: entity
id: ApcNetSwitch
@@ -79,6 +88,7 @@
- type: Construction
graph: LightSwitchGraph
node: LightSwitchNode
- type: Fixtures
- type: entity
id: TwoWayLever
@@ -120,3 +130,9 @@
- type: Construction
graph: LeverGraph
node: LeverNode
- type: Fixtures
- type: SignalTransmitter
outputs:
Left: []
Right: []
Middle: []

View File

@@ -1,6 +1,6 @@
- type: entity
name: hydroponics tray
parent: hydroponicsSoil
parent: [ hydroponicsSoil, ConstructibleMachine]
id: hydroponicsTray
description: An interstellar-grade space farmplot allowing for rapid growth and selective breeding of crops. Just... keep in mind the space weeds.
components:
@@ -66,9 +66,6 @@
False: { visible: false }
- type: PlantHolder
drawWarnings: true
- type: Construction
graph: Machine
node: machine
- type: Destructible
thresholds:
- trigger: