diff --git a/Resources/Prototypes/Entities/Structures/Walls/base_structurewalls.yml b/Resources/Prototypes/Entities/Structures/Walls/base_structurewalls.yml index f5a855f5cd..ebc0785bf5 100644 --- a/Resources/Prototypes/Entities/Structures/Walls/base_structurewalls.yml +++ b/Resources/Prototypes/Entities/Structures/Walls/base_structurewalls.yml @@ -32,6 +32,8 @@ - Impassable - VaultImpassable - SmallImpassable + mask: + - Impassable - type: Occluder sizeX: 32 sizeY: 32 diff --git a/Resources/Prototypes/Entities/Structures/Walls/walls.yml b/Resources/Prototypes/Entities/Structures/Walls/walls.yml index 5f68c28c3b..eb978ac692 100644 --- a/Resources/Prototypes/Entities/Structures/Walls/walls.yml +++ b/Resources/Prototypes/Entities/Structures/Walls/walls.yml @@ -462,6 +462,97 @@ key: walls base: silver +- type: entity + id: WallShuttleDiagonal + name: shuttle wall + suffix: diagonal + description: Keeps the air in and the greytide out. + placement: + mode: SnapgridCenter + snap: + - Wall + components: + - type: Transform + anchored: true + - type: Clickable + - type: Tag + tags: + - Wall + - type: Sprite + netsync: false + drawdepth: Walls + # TODO: Icon smoothing support + sprite: Structures/Walls/shuttle_diagonal.rsi + state: state0 + - type: Icon + sprite: Structures/Walls/shuttle_diagonal.rsi + state: state0 + - type: Damageable + damageContainer: Inorganic + damageModifierSet: Metallic + - type: Physics + bodyType: Static + - type: Pullable + - type: Fixtures + fixtures: + - shape: + !type:PolygonShape + vertices: + - "-0.5,-0.5" + - "0.5,0.5" + - "0.5,-0.5" + layer: + - Opaque + - Impassable + - MobImpassable + - VaultImpassable + - SmallImpassable + mask: + - Impassable + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 300 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Effects/metalbreak.ogg + - !type:DoActsBehavior + acts: ["Destruction"] + destroySound: + path: /Audio/Effects/metalbreak.ogg + +- type: entity + parent: WallBase + id: WallShuttle + name: shuttle wall + components: + - type: Tag + tags: + - Wall + - RCDDeconstructWhitelist + - type: Sprite + sprite: Structures/Walls/shuttle.rsi + - type: Icon + sprite: Structures/Walls/shuttle.rsi + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 500 + behaviors: + - !type:PlaySoundBehavior + sound: + path: /Audio/Effects/metalbreak.ogg + - !type:DoActsBehavior + acts: ["Destruction"] + destroySound: + path: /Audio/Effects/metalbreak.ogg + - type: IconSmooth + key: walls + base: state + - type: entity parent: WallBase id: WallSolid diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/full.png b/Resources/Textures/Structures/Walls/shuttle.rsi/full.png new file mode 100644 index 0000000000..ac0e4364fc Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/full.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/meta.json b/Resources/Textures/Structures/Walls/shuttle.rsi/meta.json new file mode 100644 index 0000000000..97ca2aa3b0 --- /dev/null +++ b/Resources/Textures/Structures/Walls/shuttle.rsi/meta.json @@ -0,0 +1,46 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "https://github.com/tgstation/tgstation/blob/9ddb8cf084e292571d4e9c79745db25befbd82fe/icons/turf/walls/shuttle_wall.dmi", + "states": [ + { + "name": "full" + }, + { + "name": "state0", + "directions": 4 + }, + { + "name": "state1", + "directions": 4 + }, + { + "name": "state2", + "directions": 4 + }, + { + "name": "state3", + "directions": 4 + }, + { + "name": "state4", + "directions": 4 + }, + { + "name": "state5", + "directions": 4 + }, + { + "name": "state6", + "directions": 4 + }, + { + "name": "state7", + "directions": 4 + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/state0.png b/Resources/Textures/Structures/Walls/shuttle.rsi/state0.png new file mode 100644 index 0000000000..7ef2d4afca Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/state0.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/state1.png b/Resources/Textures/Structures/Walls/shuttle.rsi/state1.png new file mode 100644 index 0000000000..203350b21f Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/state1.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/state2.png b/Resources/Textures/Structures/Walls/shuttle.rsi/state2.png new file mode 100644 index 0000000000..7ef2d4afca Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/state2.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/state3.png b/Resources/Textures/Structures/Walls/shuttle.rsi/state3.png new file mode 100644 index 0000000000..d10265c038 Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/state3.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/state4.png b/Resources/Textures/Structures/Walls/shuttle.rsi/state4.png new file mode 100644 index 0000000000..8d27b810d5 Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/state4.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/state5.png b/Resources/Textures/Structures/Walls/shuttle.rsi/state5.png new file mode 100644 index 0000000000..bdd945cb65 Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/state5.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/state6.png b/Resources/Textures/Structures/Walls/shuttle.rsi/state6.png new file mode 100644 index 0000000000..6d1eac9bc9 Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/state6.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle.rsi/state7.png b/Resources/Textures/Structures/Walls/shuttle.rsi/state7.png new file mode 100644 index 0000000000..7a0cceae85 Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle.rsi/state7.png differ diff --git a/Resources/Textures/Structures/Walls/shuttle_diagonal.rsi/meta.json b/Resources/Textures/Structures/Walls/shuttle_diagonal.rsi/meta.json new file mode 100644 index 0000000000..d031322d2d --- /dev/null +++ b/Resources/Textures/Structures/Walls/shuttle_diagonal.rsi/meta.json @@ -0,0 +1,14 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "https://github.com/tgstation/tgstation/blob/9ddb8cf084e292571d4e9c79745db25befbd82fe/icons/turf/walls/shuttle_wall.dmi", + "states": [ + { + "name": "state0" + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Structures/Walls/shuttle_diagonal.rsi/state0.png b/Resources/Textures/Structures/Walls/shuttle_diagonal.rsi/state0.png new file mode 100644 index 0000000000..8bb85c85cf Binary files /dev/null and b/Resources/Textures/Structures/Walls/shuttle_diagonal.rsi/state0.png differ