- type: entity
id: LockerCaptainFilled
- suffix: Filled
+ suffix: Filled, AntiqueLaser
parent: LockerCaptain
components:
- type: StorageFill
- id: JetpackCaptainFilled
- id: MedalCase
+- type: entity
+ id: LockerCaptainFilledNoLaser
+ suffix: Filled
+ parent: LockerCaptain
+ components:
+ - type: StorageFill
+ contents:
+ - id: ClothingOuterArmorCaptainCarapace
+ - id: NukeDisk
+ - id: PinpointerNuclear
+ - id: CaptainIDCard
+ - id: WeaponDisabler
+ - id: CommsComputerCircuitboard
+ - id: ClothingHeadsetAltCommand
+ - id: SpaceCash1000
+ - id: PlushieNuke
+ prob: 0.1
+ - id: CigarGoldCase
+ prob: 0.25
+ - id: ClothingBeltSheathFilled
+ - id: DoorRemoteCommand
+ - id: RubberStampCaptain
+ - id: JetpackCaptainFilled
+ - id: MedalCase
+
- type: entity
id: LockerHeadOfPersonnelFilled
suffix: Filled
--- /dev/null
+- type: entity
+ id: GlassBoxLaser
+ name: glass box
+ description: A sturdy showcase for an expensive exhibit.
+ parent: BaseStructureDynamic
+ placement:
+ mode: SnapgridCenter
+ components:
+ - type: Anchorable
+ delay: 4
+ - type: Transform
+ anchored: true
+ - type: Damageable
+ damageContainer: Inorganic
+ damageModifierSet: Glass
+ - type: MeleeSound
+ soundGroups:
+ Brute:
+ collection: GlassSmash
+ - type: Physics
+ bodyType: Static
+ - type: Clickable
+ - type: InteractionOutline
+ - type: Sprite
+ sprite: Structures/Storage/glassbox.rsi
+ layers:
+ - state: glassbox
+ - state: caplaser
+ map: ["enum.ItemCabinetVisualLayers.ContainsItem"]
+ visible: true
+ - state: glass
+ map: ["enum.ItemCabinetVisualLayers.Door"]
+ - type: ItemCabinet
+ cabinetSlot:
+ ejectOnInteract: true
+ whitelist:
+ tags:
+ - WeaponAntiqueLaser
+ doorSound:
+ path: /Audio/Machines/machine_switch.ogg
+ openState: glass-up
+ closedState: glass
+ - type: Lock
+ - type: AccessReader
+ access: [["Captain"]]
+ - type: ItemSlots
+ - type: ContainerContainer
+ containers:
+ ItemCabinet: !type:ContainerSlot
+ - type: Repairable
+ - type: Appearance
+ - type: DamageVisuals
+ thresholds: [4, 8, 12]
+ damageDivisor: 7.555
+ trackAllDamage: true
+ damageOverlay:
+ sprite: Structures/Storage/glassbox.rsi
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 150
+ behaviors:
+ - !type:EmptyAllContainersBehaviour
+ - !type:PlaySoundBehavior
+ sound:
+ collection: WindowShatter
+ - !type:SpawnEntitiesBehavior
+ spawn:
+ ShardGlassReinforced:
+ min: 1
+ max: 1
+ GlassBoxLaserBroken:
+ min: 1
+ max: 1
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+
+- type: entity
+ id: GlassBoxLaserOpen
+ parent: GlassBoxLaser
+ suffix: Open
+ components:
+ - type: ItemCabinet
+ opened: true
+ doorSound:
+ path: /Audio/Machines/machine_switch.ogg
+ openState: glass-up
+ closedState: glass
+
+- type: entity
+ id: GlassBoxLaserFilled
+ parent: GlassBoxLaser
+ suffix: Filled
+ components:
+ - type: ItemCabinet
+ cabinetSlot:
+ startingItem: WeaponAntiqueLaser
+ ejectOnInteract: true
+ whitelist:
+ tags:
+ - WeaponAntiqueLaser
+ doorSound:
+ path: /Audio/Machines/machine_switch.ogg
+ openState: glass-up
+ closedState: glass
+
+- type: entity
+ id: GlassBoxLaserFilledOpen
+ parent: GlassBoxLaserFilled
+ suffix: Filled, Open
+ components:
+ - type: ItemCabinet
+ opened: true
+ doorSound:
+ path: /Audio/Machines/machine_switch.ogg
+ openState: glass-up
+ closedState: glass
+
+- type: entity
+ id: GlassBoxLaserBroken
+ name: broken glass box
+ description: A broken showcase for a stolen expensive exhibit.
+ parent: BaseStructureDynamic
+ suffix: Broken
+ placement:
+ mode: SnapgridCenter
+ components:
+ - type: Transform
+ anchored: true
+ - type: Physics
+ bodyType: Static
+ - type: Sprite
+ sprite: Structures/Storage/glassbox.rsi
+ layers:
+ - state: glassbox
+ - state: glass-4
+ - type: Clickable
+ - type: InteractionOutline
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from tgstation https://github.com/tgstation/tgstation/commit/0129a094635aac51e00fdc7aa3b4248affc1f49d Sprite modified and updated by Nimfar11 (Github)",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "glass"
+ },
+ {
+ "name": "DamageOverlay_4"
+ },
+ {
+ "name": "DamageOverlay_8"
+ },
+ {
+ "name": "DamageOverlay_12"
+ },
+ {
+ "name": "glass-4"
+ },
+ {
+ "name": "glass-up"
+ },
+ {
+ "name": "locked"
+ },
+ {
+ "name": "caplaser"
+ },
+ {
+ "name": "unlocked"
+ },
+ {
+ "name": "glassbox"
+ },
+ {
+ "name": "glassbox-empty-open"
+ },
+ {
+ "name": "glassbox-filled-closed"
+ },
+ {
+ "name": "glassbox-filled-open"
+ }
+ ]
+}
\ No newline at end of file