Rollerbeds (#5681)

This commit is contained in:
metalgearsloth
2021-12-29 15:57:20 +11:00
committed by GitHub
parent 0bab6ecb71
commit e5e144d99c
40 changed files with 627 additions and 53 deletions

View File

@@ -9,6 +9,7 @@
sprite: Objects/Specific/Medical/Morgue/bodybags.rsi
layers:
- state: bag
map: ["enum.FoldableVisualLayers.Base"]
- state: open_overlay
map: ["enum.StorageVisualLayers.Door"]
- state: label_overlay
@@ -27,13 +28,18 @@
!type:PhysShapeAabb
bounds: "-0.5,-0.45,0.5,0.1"
mass: 5
mask:
- Impassable
- SmallImpassable
- type: BodyBagEntityStorage
CanWeldShut: false
Capacity: 1
IsCollidableWhenOpen: true
closeSound:
path: /Audio/Misc/zip.ogg
openSound:
path: /Audio/Misc/zip.ogg
- type: Foldable
- type: PaperLabel
labelSlot:
insertVerbText: Attach Label
@@ -45,20 +51,20 @@
visuals:
- type: StorageVisualizer
state_open: open_overlay
state_closed: bag
- type: FoldableVisualizer
key: bag
- type: BodyBagVisualizer
- type: Pullable
- type: entity
id: BodyBag_Item
id: BodyBag_Folded
name: body bag
description: A plastic bag designed for the storage and transportation of cadavers.
parent: BaseItem
parent: BodyBag_Container
suffix: Folded
components:
- type: Sprite
netsync: false
sprite: Objects/Specific/Medical/Morgue/bodybags.rsi
state: item
- type: Foldable
folded: true
# - type: BodyBagItem #TODO: we need some kind of generic placable, like thus:
# - type: Placeable
# prototype: someId

View File

@@ -24,6 +24,7 @@
noRot: true
- type: Strap
position: Stand
buckleOffset: "0,0.15"
- type: Pullable
- type: Damageable
damageContainer: Inorganic

View File

@@ -0,0 +1,94 @@
- type: entity
id: RollerBed
parent: BaseItem
name: rollerbed
description: Used to carry patients around without damaging them.
components:
- type: Transform
noRot: true
- type: Item
size: 5
- type: Sprite
sprite: Structures/Furniture/rollerbeds.rsi
netsync: false
noRot: true
layers:
- state: rollerbed
map: ["enum.FoldableVisualLayers.Base"]
- type: MovedByPressure
- type: DamageOnHighSpeedImpact
soundHit: /Audio/Effects/bang.ogg
- type: InteractionOutline
- type: Physics
- type: Fixtures
fixtures:
- shape:
!type:PhysShapeCircle
radius: 0.35
mass: 30
mask:
- Impassable
- SmallImpassable
layer:
- Opaque
- type: Damageable
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- !type:SpawnEntitiesBehavior
spawn:
SheetSteel1:
min: 1
max: 1
- type: Pullable
- type: Strap
position: Down
rotation: -90
buckleOffset: "0,0.15"
unbuckleOffset: "0,0.15"
- type: Foldable
- type: Appearance
visuals:
- type: FoldableVisualizer
key: rollerbed
- type: RollerbedVisualizer
key: rollerbed
- type: entity
id: CheapRollerBed
name: rollerbed
parent: RollerBed
description: A run-down rollerbed. Used to carry patients around.
components:
- type: Sprite
layers:
- state: cheap_rollerbed
map: [ "enum.FoldableVisualLayers.Base" ]
- type: Appearance
visuals:
- type: FoldableVisualizer
key: cheap_rollerbed
- type: RollerbedVisualizer
key: cheap_rollerbed
- type: entity
id: EmergencyRollerBed
name: rollerbed
parent: RollerBed
description: A robust looking rollerbed used for emergencies.
components:
- type: Sprite
layers:
- state: emergency_rollerbed
map: [ "enum.FoldableVisualLayers.Base" ]
- type: Appearance
visuals:
- type: FoldableVisualizer
key: emergency_rollerbed
- type: RollerbedVisualizer
key: emergency_rollerbed

View File

@@ -8,6 +8,9 @@
visuals:
- type: StorageVisualizer
state: cabinet
state_open: cabinet_open
state_closed: cabinet_door
- type: AccessReader
access: [["Bar"]]
- type: EntityStorage
@@ -26,6 +29,8 @@
visuals:
- type: StorageVisualizer
state: qm
state_open: qm_open
state_closed: qm_door
- type: AccessReader
access: [["Cargo"]] # TODO access [["Quartermaster"]]
@@ -39,6 +44,8 @@
visuals:
- type: StorageVisualizer
state: cap
state_open: cap_open
state_closed: cap_door
- type: AccessReader
access: [["Captain"]]
@@ -51,6 +58,8 @@
visuals:
- type: StorageVisualizer
state: hop
state_open: hop_open
state_closed: hop_door
- type: AccessReader
access: [["HeadOfPersonnel"]]
@@ -64,6 +73,8 @@
visuals:
- type: StorageVisualizer
state: ce
state_open: ce_open
state_closed: ce_door
- type: AccessReader
access: [ [ "Engineering", "Command" ] ]
@@ -77,6 +88,7 @@
visuals:
- type: StorageVisualizer
state: eng
state_open: eng_open
state_closed: eng_elec_door
- type: AccessReader
access: [ [ "Engineering" ] ]
@@ -91,6 +103,7 @@
visuals:
- type: StorageVisualizer
state: eng
state_open: eng_open
state_closed: eng_weld_door
- type: AccessReader
access: [ [ "Engineering" ] ]
@@ -105,6 +118,8 @@
visuals:
- type: StorageVisualizer
state: atmos
state_open: atmos_open
state_closed: atmos_door
- type: AccessReader
access: [ [ "Engineering" ] ]
@@ -118,6 +133,8 @@
visuals:
- type: StorageVisualizer
state: eng_secure
state_open: eng_secure_open
state_closed: eng_secure_door
- type: AccessReader
access: [ [ "Engineering" ] ]
@@ -131,6 +148,8 @@
visuals:
- type: StorageVisualizer
state: freezer
state_open: freezer_open
state_closed: freezer_door
- type: AccessReader
access: [ [ "Service" ] ]
@@ -144,6 +163,8 @@
visuals:
- type: StorageVisualizer
state: hydro
state_open: hydro_open
state_closed: hydro_door
- type: AccessReader
access: [ [ "Service" ] ]
@@ -158,6 +179,8 @@
visuals:
- type: StorageVisualizer
state: med
state_open: med_open
state_closed: med_door
- type: AccessReader
access: [ [ "Medical" ] ]
@@ -171,6 +194,8 @@
visuals:
- type: StorageVisualizer
state: med_secure
state_open: med_secure_open
state_closed: med_secure_door
- type: AccessReader
access: [ [ "Medical" ] ]
@@ -184,6 +209,7 @@
visuals:
- type: StorageVisualizer
state: med
state_open: med_open
state_closed: chemical_door
- type: AccessReader
access: [ [ "Chemistry" ] ]
@@ -198,6 +224,8 @@
visuals:
- type: StorageVisualizer
state: cmo
state_open: cmo_open
state_closed: cmo_door
- type: AccessReader
access: [ [ "Medical", "Command" ] ]
@@ -211,6 +239,8 @@
visuals:
- type: StorageVisualizer
state: rd
state_open: rd_open
state_closed: rd_door
- type: AccessReader
access: [ [ "Research", "Command" ] ]
@@ -223,6 +253,8 @@
visuals:
- type: StorageVisualizer
state: science
state_open: science_open
state_closed: science_door
- type: AccessReader
access: [ [ "Research" ] ]
@@ -236,6 +268,8 @@
visuals:
- type: StorageVisualizer
state: hos
state_open: hos_open
state_closed: hos_door
- type: AccessReader
access: [["Security", "Command"]]
@@ -249,6 +283,8 @@
visuals:
- type: StorageVisualizer
state: warden
state_open: warden_open
state_closed: warden_door
- type: AccessReader
access: [["Security", "Armory"]] # TODO access [["Brig"]]
@@ -262,6 +298,8 @@
visuals:
- type: StorageVisualizer
state: sec
state_open: sec_open
state_closed: sec_door
- type: AccessReader
access: [["Security"]]
@@ -286,3 +324,5 @@
visuals:
- type: StorageVisualizer
state: syndicate
state_open: syndicate_open
state_closed: syndicate_door

View File

@@ -65,5 +65,6 @@
- type: Appearance
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: generic_door

View File

@@ -9,6 +9,7 @@
visuals:
- type: StorageVisualizer
state: eng
state_open: eng_open
state_closed: eng_tool_door
# Radiation suit closet
@@ -22,6 +23,7 @@
visuals:
- type: StorageVisualizer
state: eng
state_open: eng_open
state_closed: eng_rad_door
# Emergency closet
@@ -35,6 +37,8 @@
visuals:
- type: StorageVisualizer
state: emergency
state_open: emergency_open
state_closed: emergency_door
# Fire safety closet
- type: entity
@@ -47,6 +51,8 @@
visuals:
- type: StorageVisualizer
state: fire
state_open: fire_open
state_closed: fire_door
# EOD closet
- type: entity
@@ -59,6 +65,8 @@
visuals:
- type: StorageVisualizer
state: bomb
state_open: bomb_open
state_closed: bomb_door
# Biohazard
@@ -73,6 +81,8 @@
visuals:
- type: StorageVisualizer
state: bio
state_open: bio_sec_open
false: bio_sec_door
# Virology variant
- type: entity
@@ -83,6 +93,8 @@
visuals:
- type: StorageVisualizer
state: bio_viro
state_open: bio_viro_open
state_closed: bio_viro_door
# Security variant
- type: entity
@@ -93,6 +105,8 @@
visuals:
- type: StorageVisualizer
state: bio_sec
state_open: bio_sec_open
state_closed: bio_sec_door
# Janitor variant
- type: entity
@@ -103,11 +117,13 @@
visuals:
- type: StorageVisualizer
state: bio_jan
state_open: bio_jan_open
state_closed: bio_jan_door
# Maintenance closet
- type: entity
id: ClosetMaintenance
name: maintenance closet
name: maintenance closet
parent: ClosetBase
description: It's a storage unit.
components:

View File

@@ -17,6 +17,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: blue_door
# Pink wardrobe
@@ -29,6 +30,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: pink_door
# Black wardrobe
@@ -41,6 +43,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: black_door
# Green wardrobe
@@ -53,6 +56,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: green_door
# Prison wardrobe
@@ -65,6 +69,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: orange_door
# Yellow wardrobe
@@ -77,6 +82,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: yellow_door
# White wardrobe
@@ -89,6 +95,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: white_door
# Grey wardrobe
@@ -101,6 +108,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: grey_door
# Mixed wardrobe
@@ -113,6 +121,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: mixed_door
# Jobs
@@ -126,6 +135,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: red_door
- type: entity
@@ -137,6 +147,7 @@
visuals:
- type: StorageVisualizer
state: generic
state_open: generic_open
state_closed: atmos_wardrobe_door
- type: entity