Universal weldable component (#7955)
* Weldable component for door * Content update * Examine message * Universal visualizer * Small fix * Entity storage * Content * Fixed test * Update Content.Shared/Storage/SharedStorageComponent.cs Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> * Fixed loc string * Add public API to change welding time Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
This commit is contained in:
@@ -153,7 +153,6 @@
|
||||
netsync: false
|
||||
- type: EntityStorage
|
||||
Capacity: 8
|
||||
CanWeldShut: false
|
||||
- type: PlaceableSurface
|
||||
placeCentered: true
|
||||
- type: Item
|
||||
|
||||
@@ -39,7 +39,6 @@
|
||||
mask:
|
||||
- Impassable
|
||||
- type: BodyBagEntityStorage
|
||||
CanWeldShut: false
|
||||
Capacity: 1
|
||||
IsCollidableWhenOpen: true
|
||||
closeSound:
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -42,7 +42,7 @@
|
||||
state: artifact_container_icon
|
||||
- type: ArtifactStorage
|
||||
Capacity: 1
|
||||
CanWeldShut: true
|
||||
- type: Weldable
|
||||
- type: SuppressArtifactContainer
|
||||
- type: PlaceableSurface
|
||||
- type: Damageable
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseUnlit"]
|
||||
- state: welded
|
||||
map: ["enum.DoorVisualLayers.BaseWelded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: bolted_unlit
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseBolted"]
|
||||
@@ -48,6 +48,9 @@
|
||||
path: /Audio/Machines/airlock_close.ogg
|
||||
denySound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
- type: Weldable
|
||||
fuel: 3
|
||||
time: 3
|
||||
- type: Airlock
|
||||
- type: Appearance
|
||||
visuals:
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseUnlit"]
|
||||
- state: welded
|
||||
map: ["enum.DoorVisualLayers.BaseWelded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: bolted_unlit
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseBolted"]
|
||||
@@ -71,7 +71,7 @@
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseUnlit"]
|
||||
- state: welded
|
||||
map: ["enum.DoorVisualLayers.BaseWelded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: bolted_unlit
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseBolted"]
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseUnlit"]
|
||||
- state: welded
|
||||
map: ["enum.DoorVisualLayers.BaseWelded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: bolted_unlit
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseBolted"]
|
||||
@@ -73,6 +73,9 @@
|
||||
path: /Audio/Machines/airlock_close.ogg
|
||||
denySound:
|
||||
path: /Audio/Machines/airlock_deny.ogg
|
||||
- type: Weldable
|
||||
fuel: 3
|
||||
time: 3
|
||||
- type: Firelock
|
||||
- type: Appearance
|
||||
visuals:
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
- type: Door
|
||||
bumpOpen: false
|
||||
clickOpen: true
|
||||
weldable: false
|
||||
canCrush: false
|
||||
closeTimeOne: 0.2
|
||||
closeTimeTwo: 0.6
|
||||
@@ -89,7 +88,6 @@
|
||||
- type: Door
|
||||
bumpOpen: false
|
||||
clickOpen: true
|
||||
weldable: false
|
||||
closeTimeOne: 0.2
|
||||
closeTimeTwo: 0.6
|
||||
openTimeOne: 0.6
|
||||
|
||||
@@ -41,6 +41,9 @@
|
||||
path: /Audio/Machines/blastdoor.ogg
|
||||
closeSound:
|
||||
path: /Audio/Machines/blastdoor.ogg
|
||||
- type: Weldable
|
||||
fuel: 3
|
||||
time: 3
|
||||
- type: Appearance
|
||||
visuals:
|
||||
- type: AirlockVisualizer
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseUnlit"]
|
||||
- state: welded
|
||||
map: ["enum.DoorVisualLayers.BaseWelded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: bolted_unlit
|
||||
shader: unshaded
|
||||
map: ["enum.DoorVisualLayers.BaseBolted"]
|
||||
@@ -75,7 +75,6 @@
|
||||
safety: false
|
||||
- type: Door
|
||||
canCrush: false
|
||||
weldable: false
|
||||
board: DoorElectronics
|
||||
openSound:
|
||||
path: /Audio/Machines/windoor_open.ogg
|
||||
@@ -123,7 +122,7 @@
|
||||
shader: unshaded
|
||||
map: [ "enum.DoorVisualLayers.BaseUnlit" ]
|
||||
- state: welded
|
||||
map: [ "enum.DoorVisualLayers.BaseWelded" ]
|
||||
map: [ "enum.WeldableLayers.BaseWelded" ]
|
||||
- state: bolted_unlit
|
||||
shader: unshaded
|
||||
map: [ "enum.DoorVisualLayers.BaseBolted" ]
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
shader: unshaded
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Destructible
|
||||
thresholds:
|
||||
- trigger:
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: MovedByPressure
|
||||
- type: DamageOnHighSpeedImpact
|
||||
damage:
|
||||
@@ -41,6 +41,7 @@
|
||||
- MobImpassable
|
||||
- SmallImpassable
|
||||
- type: EntityStorage
|
||||
- type: Weldable
|
||||
- type: PlaceableSurface
|
||||
placeCentered: true
|
||||
- type: Damageable
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: InteractionOutline
|
||||
- type: Physics
|
||||
- type: Fixtures
|
||||
@@ -34,7 +34,7 @@
|
||||
- SmallImpassable
|
||||
- type: EntityStorage
|
||||
Capacity: 500
|
||||
CanWeldShut: true
|
||||
- type: Weldable
|
||||
- type: PlaceableSurface
|
||||
- type: Damageable
|
||||
damageContainer: Inorganic
|
||||
@@ -79,7 +79,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: InteractionOutline
|
||||
- type: Physics
|
||||
- type: Fixtures
|
||||
@@ -97,7 +97,7 @@
|
||||
- SmallImpassable
|
||||
- type: EntityStorage
|
||||
Capacity: 500
|
||||
CanWeldShut: true
|
||||
- type: Weldable
|
||||
- type: PlaceableSurface
|
||||
- type: Damageable
|
||||
damageContainer: Inorganic
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/generic.rsi
|
||||
state: crate_icon
|
||||
@@ -38,7 +38,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/plastic.rsi
|
||||
state: plasticcrate_icon
|
||||
@@ -64,7 +64,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/freezer.rsi
|
||||
state: freezer_icon
|
||||
@@ -90,7 +90,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/hydro.rsi
|
||||
state: hydrocrate_icon
|
||||
@@ -116,7 +116,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/medical.rsi
|
||||
state: medicalcrate_icon
|
||||
@@ -143,7 +143,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/radiation.rsi
|
||||
state: radiationcrate_icon
|
||||
@@ -169,7 +169,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/o2.rsi
|
||||
state: o2crate_icon
|
||||
@@ -195,7 +195,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/electricalcrate.rsi
|
||||
state: electricalcrate_icon
|
||||
@@ -221,7 +221,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/engicrate.rsi
|
||||
state: engicrate_icon
|
||||
@@ -247,7 +247,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/scicrate.rsi
|
||||
state: scicrate_icon
|
||||
@@ -273,7 +273,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- type: Icon
|
||||
sprite: Structures/Storage/Crates/surgerycrate.rsi
|
||||
state: surgerycrate_icon
|
||||
@@ -304,7 +304,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -333,7 +333,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -362,7 +362,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -390,7 +390,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -419,7 +419,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -448,7 +448,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -476,7 +476,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -505,7 +505,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -560,7 +560,7 @@
|
||||
map: ["enum.StorageVisualLayers.Door"]
|
||||
- state: welded
|
||||
visible: false
|
||||
map: ["enum.StorageVisualLayers.Welded"]
|
||||
map: ["enum.WeldableLayers.BaseWelded"]
|
||||
- state: locked
|
||||
map: ["enum.StorageVisualLayers.Lock"]
|
||||
shader: unshaded
|
||||
@@ -580,7 +580,6 @@
|
||||
components:
|
||||
- type: EntityStorage
|
||||
Capacity: 500
|
||||
CanWeldShut: false
|
||||
- type: Sprite
|
||||
sprite: Structures/Storage/Crates/livestock.rsi
|
||||
layers:
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
- VaultImpassable
|
||||
- SmallImpassable
|
||||
- type: MorgueEntityStorage
|
||||
CanWeldShut: false
|
||||
IsCollidableWhenOpen: true
|
||||
Capacity: 1
|
||||
closeSound:
|
||||
@@ -116,7 +115,6 @@
|
||||
- VaultImpassable
|
||||
- SmallImpassable
|
||||
- type: CrematoriumEntityStorage
|
||||
CanWeldShut: false
|
||||
IsCollidableWhenOpen: true
|
||||
Capacity: 1
|
||||
closeSound:
|
||||
|
||||
Reference in New Issue
Block a user