From 14074a2ff3cdf2cf6596f1b18fb7c13e1e3c158a Mon Sep 17 00:00:00 2001 From: Cuir <123379145+Cu1r@users.noreply.github.com> Date: Fri, 23 May 2025 05:03:36 -0400 Subject: [PATCH] Window improvements (#1292) * Added stone brick and marble brick windows to the crafting menu proper. Sanitized capitalization of construction graph ids and nodes (but not entities). Sanitized stone and marble structure descriptions. * Windows that are built with frames now leave those frames behind when you smash them instead of disintegrating entirely. * Syntax error because entity id * wooden windows * Added a base window frame as well as a wooden window frame and its broken variant. Frames can be vaulted through, and the broken glass variant will deal slash damage and a short stun upon entering. Wooden windows now deconstruct and shatter into both types of frames, which can also be deconstructed. Fixed an issue with window collisions when connected across tiles. Gave wooden windows their own prototype file and construction graph. * stonevrick windows * Added functionality to stone window frame types. Fixed an issue where shattered windows weren't triggering unless they were flammable. * some parenting work * fix fixtures --------- Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com> Co-authored-by: Ed --- .../Entities/Structures/Walls/stonebrick.yml | 24 +-- .../Structures/Windows/marblebrick.yml | 81 +++++++++ .../Entities/Structures/Windows/misc.yml | 33 ++++ .../Structures/Windows/stonebrick.yml | 81 +++++++++ .../Entities/Structures/Windows/windows.yml | 156 ++++++++---------- .../Entities/Structures/Windows/wooden.yml | 82 +++++++++ .../Structures/Walls/wall_stonebrick.yml | 22 +-- .../Walls/wall_stonebrick_marble.yml | 16 +- .../Graphs/Structures/Walls/wall_wooden.yml | 10 +- .../Structures/Walls/window_stonebrick.yml | 58 +++++++ .../Walls/window_stonebrick_marble.yml | 58 +++++++ .../Graphs/Structures/Walls/window_wooden.yml | 58 +++++++ .../_CP14/Recipes/Construction/walls.yml | 46 +++++- .../marble_bricks_window_broken.rsi/full.png | Bin 0 -> 1436 bytes .../marble_bricks_window_broken.rsi/meta.json | 46 ++++++ .../window0.png | Bin 0 -> 1855 bytes .../window1.png | Bin 0 -> 1565 bytes .../window2.png | Bin 0 -> 1827 bytes .../window3.png | Bin 0 -> 1549 bytes .../window4.png | Bin 0 -> 1614 bytes .../window5.png | Bin 0 -> 1188 bytes .../window6.png | Bin 0 -> 1545 bytes .../window7.png | Bin 0 -> 715 bytes .../marble_bricks_window_frame.rsi/full.png | Bin 0 -> 1185 bytes .../marble_bricks_window_frame.rsi/meta.json | 46 ++++++ .../window0.png | Bin 0 -> 1525 bytes .../window1.png | Bin 0 -> 1194 bytes .../window2.png | Bin 0 -> 1525 bytes .../window3.png | Bin 0 -> 1201 bytes .../window4.png | Bin 0 -> 1200 bytes .../window5.png | Bin 0 -> 771 bytes .../window6.png | Bin 0 -> 1182 bytes .../window7.png | Bin 0 -> 125 bytes .../stone_bricks_window_broken.rsi/full.png | Bin 0 -> 1403 bytes .../stone_bricks_window_broken.rsi/meta.json | 46 ++++++ .../window0.png | Bin 0 -> 1868 bytes .../window1.png | Bin 0 -> 1604 bytes .../window2.png | Bin 0 -> 1853 bytes .../window3.png | Bin 0 -> 1565 bytes .../window4.png | Bin 0 -> 1625 bytes .../window5.png | Bin 0 -> 1146 bytes .../window6.png | Bin 0 -> 1578 bytes .../window7.png | Bin 0 -> 715 bytes .../stone_bricks_window_frame.rsi/full.png | Bin 0 -> 1127 bytes .../stone_bricks_window_frame.rsi/meta.json | 46 ++++++ .../stone_bricks_window_frame.rsi/window0.png | Bin 0 -> 1546 bytes .../stone_bricks_window_frame.rsi/window1.png | Bin 0 -> 1186 bytes .../stone_bricks_window_frame.rsi/window2.png | Bin 0 -> 1546 bytes .../stone_bricks_window_frame.rsi/window3.png | Bin 0 -> 1192 bytes .../stone_bricks_window_frame.rsi/window4.png | Bin 0 -> 1211 bytes .../stone_bricks_window_frame.rsi/window5.png | Bin 0 -> 726 bytes .../stone_bricks_window_frame.rsi/window6.png | Bin 0 -> 1203 bytes .../stone_bricks_window_frame.rsi/window7.png | Bin 0 -> 125 bytes .../Windows/wooden_window_broken.rsi/full.png | Bin 0 -> 1084 bytes .../wooden_window_broken.rsi/meta.json | 46 ++++++ .../wooden_window_broken.rsi/window0.png | Bin 0 -> 1539 bytes .../wooden_window_broken.rsi/window1.png | Bin 0 -> 1195 bytes .../wooden_window_broken.rsi/window2.png | Bin 0 -> 1493 bytes .../wooden_window_broken.rsi/window3.png | Bin 0 -> 1109 bytes .../wooden_window_broken.rsi/window4.png | Bin 0 -> 1231 bytes .../wooden_window_broken.rsi/window5.png | Bin 0 -> 959 bytes .../wooden_window_broken.rsi/window6.png | Bin 0 -> 1095 bytes .../wooden_window_broken.rsi/window7.png | Bin 0 -> 715 bytes .../Windows/wooden_window_frame.rsi/full.png | Bin 0 -> 799 bytes .../Windows/wooden_window_frame.rsi/meta.json | 46 ++++++ .../wooden_window_frame.rsi/window0.png | Bin 0 -> 1176 bytes .../wooden_window_frame.rsi/window1.png | Bin 0 -> 803 bytes .../wooden_window_frame.rsi/window2.png | Bin 0 -> 1176 bytes .../wooden_window_frame.rsi/window3.png | Bin 0 -> 782 bytes .../wooden_window_frame.rsi/window4.png | Bin 0 -> 806 bytes .../wooden_window_frame.rsi/window5.png | Bin 0 -> 597 bytes .../wooden_window_frame.rsi/window6.png | Bin 0 -> 755 bytes .../wooden_window_frame.rsi/window7.png | Bin 0 -> 125 bytes 73 files changed, 863 insertions(+), 138 deletions(-) create mode 100644 Resources/Prototypes/_CP14/Entities/Structures/Windows/marblebrick.yml create mode 100644 Resources/Prototypes/_CP14/Entities/Structures/Windows/misc.yml create mode 100644 Resources/Prototypes/_CP14/Entities/Structures/Windows/stonebrick.yml create mode 100644 Resources/Prototypes/_CP14/Entities/Structures/Windows/wooden.yml create mode 100644 Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_stonebrick.yml create mode 100644 Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_stonebrick_marble.yml create mode 100644 Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_wooden.yml create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/full.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/meta.json create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window0.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window1.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window2.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window3.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window4.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window5.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window6.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window7.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/full.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/meta.json create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window0.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window1.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window2.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window3.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window4.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window5.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window6.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window7.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/full.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/meta.json create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window0.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window1.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window2.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window3.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window4.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window5.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window6.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window7.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/full.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/meta.json create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window0.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window1.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window2.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window3.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window4.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window5.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window6.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window7.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/full.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/meta.json create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window0.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window1.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window2.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window3.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window4.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window5.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window6.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window7.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/full.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/meta.json create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window0.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window1.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window2.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window3.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window4.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window5.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window6.png create mode 100644 Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window7.png diff --git a/Resources/Prototypes/_CP14/Entities/Structures/Walls/stonebrick.yml b/Resources/Prototypes/_CP14/Entities/Structures/Walls/stonebrick.yml index 03b78a1f7e..3f466bc5a5 100644 --- a/Resources/Prototypes/_CP14/Entities/Structures/Walls/stonebrick.yml +++ b/Resources/Prototypes/_CP14/Entities/Structures/Walls/stonebrick.yml @@ -1,8 +1,8 @@ -# Stonebrick +# Stone brick - type: entity id: CP14WallFrameStonebrick - name: stonebrick wall base + name: stone brick wall base parent: CP14BaseWallFrame components: - type: Sprite @@ -12,8 +12,8 @@ sprite: _CP14/Structures/Walls/bricks_stone_wall.rsi state: frame - type: Construction - graph: CP14WallStonebrick - node: CP14WallFrameStonebrick + graph: CP14WallStoneBrick + node: CP14WallFrameStoneBrick - type: Damageable damageContainer: StructuralInorganic damageModifierSet: CP14RockStructural @@ -38,7 +38,7 @@ - type: entity id: CP14WallStonebrick - name: stonebrick wall + name: stone brick wall parent: CP14BaseWall components: - type: Sprite @@ -48,8 +48,8 @@ - type: IconSmooth base: stonebricks - type: Construction - graph: CP14WallStonebrick - node: CP14WallStonebrick + graph: CP14WallStoneBrick + node: CP14WallStoneBrick - type: Damageable damageContainer: StructuralInorganic damageModifierSet: CP14RockStructural @@ -65,7 +65,7 @@ min: 1 max: 2 - !type:ChangeConstructionNodeBehavior - node: CP14WallFrameStonebrick + node: CP14WallFrameStoneBrick - !type:PlaySoundBehavior sound: path: /Audio/Effects/break_stone.ogg @@ -79,7 +79,7 @@ - type: entity id: CP14WallFrameMarblebrick - name: marblebrick wall base + name: marble brick wall base parent: CP14BaseWallFrame components: - type: Sprite @@ -90,7 +90,7 @@ state: frame - type: Construction graph: CP14WallMarbleBrick - node: CP14WallFrameMarblebrick + node: CP14WallFrameMarbleBrick - type: Damageable damageContainer: StructuralInorganic damageModifierSet: CP14RockStructural @@ -144,7 +144,7 @@ min: 1 max: 2 - !type:ChangeConstructionNodeBehavior - node: CP14WallFrameMarblebrick + node: CP14WallFrameMarbleBrick - !type:DoActsBehavior acts: [ "Destruction" ] - type: Construction @@ -154,7 +154,7 @@ - type: entity id: CP14WallStonebrickOld - name: old stonebrick wall + name: old stone brick wall parent: CP14BaseWall components: - type: Sprite diff --git a/Resources/Prototypes/_CP14/Entities/Structures/Windows/marblebrick.yml b/Resources/Prototypes/_CP14/Entities/Structures/Windows/marblebrick.yml new file mode 100644 index 0000000000..fc2374ecfd --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Structures/Windows/marblebrick.yml @@ -0,0 +1,81 @@ +- type: entity + id: CP14WindowMarbleBrick + parent: CP14WindowBase + name: marble brick window + description: A marble brick wall with a glass window in it. + components: + - type: Sprite + sprite: _CP14/Structures/Windows/marble_bricks_window.rsi + - type: Icon + sprite: _CP14/Structures/Windows/marble_bricks_window.rsi + state: full + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: WindowShatter + - !type:SpawnEntitiesBehavior + spawn: + CP14GlassShard: + min: 1 + max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:ChangeConstructionNodeBehavior + node: CP14WindowMarbleBrickBroken + - type: Construction + graph: CP14WindowMarbleBrick + node: CP14WindowMarbleBrick + +- type: entity + id: CP14WindowFrameMarbleBrick + name: marble brick window frame + parent: CP14BaseWindowFrame + components: + - type: Sprite + sprite: _CP14/Structures/Windows/marble_bricks_window_frame.rsi + - type: Icon + sprite: _CP14/Structures/Windows/marble_bricks_window_frame.rsi + - type: Damageable + damageContainer: StructuralInorganic + damageModifierSet: CP14RockStructural + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:SpawnEntitiesBehavior + spawn: + CP14MarbleBlock1: + min: 1 + max: 2 + - !type:PlaySoundBehavior + sound: + path: /Audio/Effects/break_stone.ogg + params: + volume: -6 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: Construction + graph: CP14WindowMarbleBrick + node: CP14WindowFrameMarbleBrick + +- type: entity + id: CP14WindowMarbleBrickBroken + name: shattered marble brick window + parent: + - CP14BaseWindowFrameBroken + - CP14WindowFrameMarbleBrick + components: + - type: Sprite + sprite: _CP14/Structures/Windows/marble_bricks_window_broken.rsi + - type: Icon + sprite: _CP14/Structures/Windows/marble_bricks_window_broken.rsi + - type: Construction + graph: CP14WindowMarbleBrick + node: CP14WindowMarbleBrickBroken \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Structures/Windows/misc.yml b/Resources/Prototypes/_CP14/Entities/Structures/Windows/misc.yml new file mode 100644 index 0000000000..0973380cc3 --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Structures/Windows/misc.yml @@ -0,0 +1,33 @@ +- type: entity + id: CP14WindowIceBlock + parent: CP14WindowBase + name: ice block + description: Smooth and translucent ice. + components: + - type: Sprite + sprite: _CP14/Structures/Windows/ice_block.rsi + - type: Icon + sprite: _CP14/Structures/Windows/ice_block.rsi + state: full + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 15 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: WindowShatter + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: MeleeSound + soundGroups: + Brute: + collection: GlassSmash + - type: InteractionPopup + interactSuccessString: popup-cp14crystal-ding + messagePerceivedByOthers: popup-cp14crystal-ding + interactSuccessSound: + collection: CP14CrystalDings + params: + variation: 0.03 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Structures/Windows/stonebrick.yml b/Resources/Prototypes/_CP14/Entities/Structures/Windows/stonebrick.yml new file mode 100644 index 0000000000..7169d46c63 --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Structures/Windows/stonebrick.yml @@ -0,0 +1,81 @@ +- type: entity + id: CP14WindowStoneBrick + parent: CP14WindowBase + name: stone brick window + description: A stone brick wall with a glass window in it. + components: + - type: Sprite + sprite: _CP14/Structures/Windows/stone_bricks_window.rsi + - type: Icon + sprite: _CP14/Structures/Windows/stone_bricks_window.rsi + state: full + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: WindowShatter + - !type:SpawnEntitiesBehavior + spawn: + CP14GlassShard: + min: 1 + max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:ChangeConstructionNodeBehavior + node: CP14WindowStoneBrickBroken + - type: Construction + graph: CP14WindowStoneBrick + node: CP14WindowStoneBrick + +- type: entity + id: CP14WindowFrameStoneBrick + name: stone brick window frame + parent: CP14BaseWindowFrame + components: + - type: Sprite + sprite: _CP14/Structures/Windows/stone_bricks_window_frame.rsi + - type: Icon + sprite: _CP14/Structures/Windows/stone_bricks_window_frame.rsi + - type: Damageable + damageContainer: StructuralInorganic + damageModifierSet: CP14RockStructural + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:SpawnEntitiesBehavior + spawn: + CP14StoneBlock1: + min: 1 + max: 2 + - !type:PlaySoundBehavior + sound: + path: /Audio/Effects/break_stone.ogg + params: + volume: -6 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: Construction + graph: CP14WindowStoneBrick + node: CP14WindowFrameStoneBrick + +- type: entity + id: CP14WindowStoneBrickBroken + name: shattered stone brick window + parent: + - CP14BaseWindowFrameBroken + - CP14WindowFrameStoneBrick + components: + - type: Sprite + sprite: _CP14/Structures/Windows/stone_bricks_window_broken.rsi + - type: Icon + sprite: _CP14/Structures/Windows/stone_bricks_window_broken.rsi + - type: Construction + graph: CP14WindowStoneBrick + node: CP14WindowStoneBrickBroken diff --git a/Resources/Prototypes/_CP14/Entities/Structures/Windows/windows.yml b/Resources/Prototypes/_CP14/Entities/Structures/Windows/windows.yml index 1c10ff1956..d8d78e412e 100644 --- a/Resources/Prototypes/_CP14/Entities/Structures/Windows/windows.yml +++ b/Resources/Prototypes/_CP14/Entities/Structures/Windows/windows.yml @@ -13,6 +13,16 @@ base: window - type: PlacementReplacement key: walls + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeAabb + bounds: "-0.5,-0.5,0.5,0.5" + mask: + - FullTileMask + layer: + - GlassLayer - type: Damageable damageContainer: Inorganic damageModifierSet: Glass @@ -27,97 +37,73 @@ collection: WindowShatter - !type:DoActsBehavior acts: [ "Destruction" ] - - trigger: - !type:DamageTrigger - damage: 50 - behaviors: - - !type:PlaySoundBehavior - sound: - collection: WindowShatter - - !type:SpawnEntitiesBehavior - spawn: - CP14GlassShard: - min: 1 - max: 2 - - !type:DoActsBehavior - acts: [ "Destruction" ] - type: entity - id: CP14WindowStoneBrick - parent: CP14WindowBase - name: stone brick window - description: A stone brick wall with a glass window in it. + id: CP14BaseWindowFrame + categories: [ ForkFiltered ] + parent: BaseStructure + abstract: true + description: Provides a nice breeze. The gap looks big enough to climb through. + placement: + mode: SnapgridCenter + snap: + - Window components: - type: Sprite - sprite: _CP14/Structures/Windows/stone_bricks_window.rsi + drawdepth: Mobs - type: Icon - sprite: _CP14/Structures/Windows/stone_bricks_window.rsi state: full - - type: Construction - graph: CP14WallStonebrick - node: CP14WallStonebrick + - type: IconSmooth + key: CP14window + base: window + - type: PlacementReplacement + key: walls + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeAabb + bounds: "-0.5,-0.5,0.5,0.5" + mask: + - FullTileMask + layer: + - HalfWallLayer + - type: Appearance + - type: Climbable - type: entity - id: CP14WindowMarbleBrick - parent: CP14WindowBase - name: marble brick window - description: A stone brick wall with a glass window in it. + id: CP14BaseWindowFrameBroken + parent: CP14BaseWindowFrame + abstract: true + description: Broken window. You can get in, but the sharp splinters will tear your skin. components: - - type: Sprite - sprite: _CP14/Structures/Windows/marble_bricks_window.rsi - - type: Icon - sprite: _CP14/Structures/Windows/marble_bricks_window.rsi - state: full - - type: Construction - graph: CP14WallMarbleBrick - node: CP14WindowMarbleBrick - -- type: entity - id: CP14WindowWooden - parent: - - CP14WindowBase - - CP14BaseFlammable - name: wooden window - description: A wooden wall with a glass window in it. - components: - - type: Sprite - sprite: _CP14/Structures/Windows/wooden_window.rsi - - type: Icon - sprite: _CP14/Structures/Windows/wooden_window.rsi - - type: Construction - graph: CP14WallWooden - node: CP14WindowWooden - -- type: entity - id: CP14WindowIceBlock - parent: CP14WindowBase - name: ice block - description: Smooth and translucent ice. - components: - - type: Sprite - sprite: _CP14/Structures/Windows/ice_block.rsi - - type: Icon - sprite: _CP14/Structures/Windows/ice_block.rsi - state: full - - type: Destructible - thresholds: - - trigger: - !type:DamageTrigger - damage: 15 - behaviors: - - !type:PlaySoundBehavior - sound: - collection: WindowShatter - - !type:DoActsBehavior - acts: [ "Destruction" ] - - type: MeleeSound - soundGroups: - Brute: - collection: GlassSmash - - type: InteractionPopup - interactSuccessString: popup-cp14crystal-ding - messagePerceivedByOthers: popup-cp14crystal-ding - interactSuccessSound: - collection: CP14CrystalDings - params: - variation: 0.03 \ No newline at end of file + - type: StepTrigger + requiredTriggeredSpeed: 0 + intersectRatio: 0.2 + - type: Slippery + slipSound: + collection: GlassCrack + slipData: + launchForwardsMultiplier: 0 + - type: TriggerOnStepTrigger + - type: DamageUserOnTrigger + damage: + types: + Slash: 10 + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeAabb + bounds: "-0.5,-0.5,0.5,0.5" + mask: + - FullTileMask + layer: + - HalfWallLayer + slips: # For stun & damage + shape: + !type:PhysShapeAabb + bounds: "-0.3,-0.3,0.3,0.3" + hard: false + mask: + - FullTileLayer diff --git a/Resources/Prototypes/_CP14/Entities/Structures/Windows/wooden.yml b/Resources/Prototypes/_CP14/Entities/Structures/Windows/wooden.yml new file mode 100644 index 0000000000..1516c41fc1 --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Structures/Windows/wooden.yml @@ -0,0 +1,82 @@ +- type: entity + id: CP14WindowWooden + parent: + - CP14WindowBase + - CP14BaseFlammable + name: wooden window + description: A wooden wall with a glass window in it. + components: + - type: Sprite + sprite: _CP14/Structures/Windows/wooden_window.rsi + - type: Icon + sprite: _CP14/Structures/Windows/wooden_window.rsi + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: WindowShatter + - !type:SpawnEntitiesBehavior + spawn: + CP14GlassShard: + min: 1 + max: 2 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - !type:ChangeConstructionNodeBehavior + node: CP14WindowWoodenBroken + - type: Construction + graph: CP14WindowWooden + node: CP14WindowWooden + +- type: entity + id: CP14WindowFrameWooden + name: wooden window frame + parent: + - CP14BaseWindowFrame + - CP14BaseFlammable + components: + - type: Sprite + sprite: _CP14/Structures/Windows/wooden_window_frame.rsi + - type: Icon + sprite: _CP14/Structures/Windows/wooden_window_frame.rsi + - type: Damageable + damageContainer: StructuralInorganic + damageModifierSet: CP14WoodStructural + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 50 + behaviors: + - !type:SpawnEntitiesBehavior + spawn: + CP14WoodenPlanks1: + min: 1 + max: 2 + - !type:PlaySoundBehavior + sound: + collection: WoodDestroy + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: Construction + graph: CP14WindowWooden + node: CP14WindowFrameWooden + +- type: entity + id: CP14WindowWoodenBroken + name: shattered wooden window + parent: + - CP14BaseWindowFrameBroken + - CP14WindowFrameWooden + components: + - type: Sprite + sprite: _CP14/Structures/Windows/wooden_window_broken.rsi + - type: Icon + sprite: _CP14/Structures/Windows/wooden_window_broken.rsi + - type: Construction + graph: CP14WindowWooden + node: CP14WindowWoodenBroken \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_stonebrick.yml b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_stonebrick.yml index 41545a4a52..a34be6a09c 100644 --- a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_stonebrick.yml +++ b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_stonebrick.yml @@ -1,10 +1,10 @@ - type: constructionGraph - id: CP14WallStonebrick + id: CP14WallStoneBrick start: start graph: - node: start edges: - - to: CP14WallFrameStonebrick + - to: CP14WallFrameStoneBrick completed: - !type:SnapToGrid southRotation: true @@ -13,7 +13,7 @@ amount: 2 doAfter: 2 - - node: CP14WallFrameStonebrick + - node: CP14WallFrameStoneBrick entity: CP14WallFrameStonebrick edges: - to: start @@ -25,28 +25,20 @@ steps: - tool: Prying doAfter: 2 - - to: CP14WallStonebrick + - to: CP14WallStoneBrick steps: - material: CP14Stone amount: 2 doAfter: 2 - - to: CP14WindowStoneBrick - steps: - - material: CP14GlassSheet - amount: 2 - doAfter: 2 - - node: CP14WallStonebrick + - node: CP14WallStoneBrick entity: CP14WallStonebrick edges: - - to: CP14WallFrameStonebrick + - to: CP14WallFrameStoneBrick steps: - tool: CP14Hammering doAfter: 2 completed: - !type:SpawnPrototype prototype: CP14StoneBlock1 - amount: 2 - - - node: CP14WindowStoneBrick - entity: CP14WindowStoneBrick \ No newline at end of file + amount: 2 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_stonebrick_marble.yml b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_stonebrick_marble.yml index 63af925959..15819ac750 100644 --- a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_stonebrick_marble.yml +++ b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_stonebrick_marble.yml @@ -4,7 +4,7 @@ graph: - node: start edges: - - to: CP14WallFrameMarblebrick + - to: CP14WallFrameMarbleBrick completed: - !type:SnapToGrid southRotation: true @@ -13,7 +13,7 @@ amount: 2 doAfter: 2 - - node: CP14WallFrameMarblebrick + - node: CP14WallFrameMarbleBrick entity: CP14WallFrameMarblebrick edges: - to: start @@ -30,23 +30,15 @@ - material: CP14MarbleStone amount: 2 doAfter: 2 - - to: CP14WindowMarbleBrick - steps: - - material: CP14GlassSheet - amount: 2 - doAfter: 2 - node: CP14WallMarbleBrick entity: CP14WallMarbleBrick edges: - - to: CP14WallFrameMarblebrick + - to: CP14WallFrameMarbleBrick steps: - tool: CP14Hammering doAfter: 2 completed: - !type:SpawnPrototype prototype: CP14MarbleBlock1 - amount: 2 - - - node: CP14WindowMarbleBrick - entity: CP14WindowMarbleBrick \ No newline at end of file + amount: 2 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_wooden.yml b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_wooden.yml index f0d93457a2..26cc901679 100644 --- a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_wooden.yml +++ b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/wall_wooden.yml @@ -30,11 +30,6 @@ - material: CP14WoodenPlanks amount: 2 doAfter: 2 - - to: CP14WindowWooden - steps: - - material: CP14GlassSheet - amount: 2 - doAfter: 2 - node: CP14WallWooden entity: CP14WallWooden @@ -46,7 +41,4 @@ completed: - !type:SpawnPrototype prototype: CP14WoodenPlanks1 - amount: 2 - - - node: CP14WindowWooden - entity: CP14WindowWooden \ No newline at end of file + amount: 2 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_stonebrick.yml b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_stonebrick.yml new file mode 100644 index 0000000000..aeb49f48e4 --- /dev/null +++ b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_stonebrick.yml @@ -0,0 +1,58 @@ +- type: constructionGraph + id: CP14WindowStoneBrick + start: start + graph: + - node: start + edges: + - to: CP14WindowFrameStoneBrick + completed: + - !type:SnapToGrid + southRotation: true + steps: + - material: CP14Stone + amount: 2 + doAfter: 2 + + - node: CP14WindowFrameStoneBrick + entity: CP14WindowFrameStoneBrick + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: CP14StoneBlock1 + amount: 2 + - !type:DeleteEntity {} + steps: + - tool: Prying + doAfter: 2 + - to: CP14WindowStoneBrick + steps: + - material: CP14GlassSheet + amount: 2 + doAfter: 2 + + - node: CP14WindowStoneBrick + entity: CP14WindowStoneBrick + edges: + - to: CP14WindowFrameStoneBrick + steps: + - tool: Screwing + doAfter: 1 + - tool: Anchoring + doAfter: 2 + completed: + - !type:SpawnPrototype + prototype: CP14GlassSheet1 + amount: 2 + + - node: CP14WindowStoneBrickBroken + entity: CP14WindowStoneBrickBroken + edges: + - to: CP14WindowFrameStoneBrick + steps: + - tool: Anchoring + doAfter: 2 + completed: + - !type:SpawnPrototype + prototype: CP14GlassShard + amount: 1 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_stonebrick_marble.yml b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_stonebrick_marble.yml new file mode 100644 index 0000000000..d1f816dc93 --- /dev/null +++ b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_stonebrick_marble.yml @@ -0,0 +1,58 @@ +- type: constructionGraph + id: CP14WindowMarbleBrick + start: start + graph: + - node: start + edges: + - to: CP14WindowFrameMarbleBrick + completed: + - !type:SnapToGrid + southRotation: true + steps: + - material: CP14MarbleStone + amount: 2 + doAfter: 2 + + - node: CP14WindowFrameMarbleBrick + entity: CP14WindowFrameMarbleBrick + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: CP14MarbleBlock1 + amount: 2 + - !type:DeleteEntity {} + steps: + - tool: Prying + doAfter: 2 + - to: CP14WindowMarbleBrick + steps: + - material: CP14GlassSheet + amount: 2 + doAfter: 2 + + - node: CP14WindowMarbleBrick + entity: CP14WindowMarbleBrick + edges: + - to: CP14WindowFrameMarbleBrick + steps: + - tool: Screwing + doAfter: 1 + - tool: Anchoring + doAfter: 2 + completed: + - !type:SpawnPrototype + prototype: CP14GlassSheet1 + amount: 2 + + - node: CP14WindowMarbleBrickBroken + entity: CP14WindowMarbleBrickBroken + edges: + - to: CP14WindowFrameMarbleBrick + steps: + - tool: Anchoring + doAfter: 2 + completed: + - !type:SpawnPrototype + prototype: CP14GlassShard + amount: 1 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_wooden.yml b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_wooden.yml new file mode 100644 index 0000000000..c4c6a7ec01 --- /dev/null +++ b/Resources/Prototypes/_CP14/Recipes/Construction/Graphs/Structures/Walls/window_wooden.yml @@ -0,0 +1,58 @@ +- type: constructionGraph + id: CP14WindowWooden + start: start + graph: + - node: start + edges: + - to: CP14WindowFrameWooden + completed: + - !type:SnapToGrid + southRotation: true + steps: + - material: CP14WoodenPlanks + amount: 2 + doAfter: 2 + + - node: CP14WindowFrameWooden + entity: CP14WindowFrameWooden + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: CP14WoodenPlanks1 + amount: 2 + - !type:DeleteEntity {} + steps: + - tool: Prying + doAfter: 2 + - to: CP14WindowWooden + steps: + - material: CP14GlassSheet + amount: 2 + doAfter: 2 + + - node: CP14WindowWooden + entity: CP14WindowWooden + edges: + - to: CP14WindowFrameWooden + steps: + - tool: Screwing + doAfter: 1 + - tool: Anchoring + doAfter: 2 + completed: + - !type:SpawnPrototype + prototype: CP14GlassSheet1 + amount: 2 + + - node: CP14WindowWoodenBroken + entity: CP14WindowWoodenBroken + edges: + - to: CP14WindowFrameWooden + steps: + - tool: Anchoring + doAfter: 2 + completed: + - !type:SpawnPrototype + prototype: CP14GlassShard + amount: 1 \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Recipes/Construction/walls.yml b/Resources/Prototypes/_CP14/Recipes/Construction/walls.yml index b1d074d473..41cdb72648 100644 --- a/Resources/Prototypes/_CP14/Recipes/Construction/walls.yml +++ b/Resources/Prototypes/_CP14/Recipes/Construction/walls.yml @@ -57,7 +57,7 @@ name: wooden window description: A wooden wall with a glass window in it. id: CP14WindowWooden - graph: CP14WallWooden + graph: CP14WindowWooden startNode: start targetNode: CP14WindowWooden category: construction-category-structures @@ -90,12 +90,12 @@ - type: construction crystallPunkAllowed: true - name: stonebrick wall + name: stone brick wall description: Sturdy enough to cover you from threats or cold winds. - id: CP14WallStonebrick - graph: CP14WallStonebrick + id: CP14WallStoneBrick + graph: CP14WallStoneBrick startNode: start - targetNode: CP14WallStonebrick + targetNode: CP14WallStoneBrick category: construction-category-structures icon: sprite: _CP14/Structures/Walls/bricks_stone_wall.rsi @@ -106,6 +106,24 @@ conditions: - !type:TileNotBlocked +- type: construction + crystallPunkAllowed: true + name: stone brick window + description: A stone brick wall with a glass window in it. + id: CP14WindowStoneBrick + graph: CP14WindowStoneBrick + startNode: start + targetNode: CP14WindowStoneBrick + category: construction-category-structures + icon: + sprite: _CP14/Structures/Windows/stone_bricks_window.rsi + state: full + objectType: Structure + placementMode: SnapgridCenter + canBuildInImpassable: false + conditions: + - !type:TileNotBlocked + - type: construction crystallPunkAllowed: true name: marble brick wall @@ -121,5 +139,23 @@ objectType: Structure placementMode: SnapgridCenter canBuildInImpassable: false + conditions: + - !type:TileNotBlocked + +- type: construction + crystallPunkAllowed: true + name: marble brick window + description: A marble brick wall with a glass window in it. + id: CP14WindowMarbleBrick + graph: CP14WindowMarbleBrick + startNode: start + targetNode: CP14WindowMarbleBrick + category: construction-category-structures + icon: + sprite: _CP14/Structures/Windows/marble_bricks_window.rsi + state: full + objectType: Structure + placementMode: SnapgridCenter + canBuildInImpassable: false conditions: - !type:TileNotBlocked \ No newline at end of file diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/full.png b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/full.png new file mode 100644 index 0000000000000000000000000000000000000000..bca921a94985af5640d229e64ed3837709b5e593 GIT binary patch literal 1436 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 P00000NkvXXu0mjfb2HQ~ literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window2.png b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window2.png new file mode 100644 index 0000000000000000000000000000000000000000..8608c39b26f60245d4300c258c44de10b701a1ba GIT binary patch literal 1827 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window7.png b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_broken.rsi/window7.png new file mode 100644 index 0000000000000000000000000000000000000000..4611cb315c8930cbea5a40f57dd763711e16f759 GIT binary patch literal 715 zcmeAS@N?(olHy`uVBq!ia0vp^4nW+%!3HFEH|A#nDaPU;cPEB*=VV?oFfg@xx;TbZ z%y~PHf=h%+@QGa&XI44duAOC2oQ<=J9(N{{F&<6 z4w8>vWUpMZ&SR?3kxe(}ew%pzzxJoo#uJr1I07~U`FmX|Uwu?fp3*k2|MuZ4yG$R- zefan7m(iBE?uSnWA2Ln3;&#pdo-+q0V^rLPOB;SicPS_yDBtj@O`S-Ix(O{b-U*bdFAf_cI>-9Fc_%%%V*B!w1@xs)E z?$ck({7+v0F-7Jc>oT)tw~lV#Z*RBuf1B!z)W)T4s}qEniZ2D0WtxU@8>H39?w|hp z?K-t1S&aKOdunz9C3OYOc3Ucjgj*cR_kuNs(CG2A&KiU-^BShJ|^B%HA{aLy)yXB-oQ)6uP!rvw>wz% zC|K9W$LwGcb4*skmhv@X31@|C>#J)!--%71EB(ebV)q`e(`#ljtc|df-_E|Zcm0vl zjI4LhCzeRhSre$)cE;?Wq2Ltf1;1Urg2SJFSynC8W47a1NmWfw)0Vhk&*q2aopb-y z{atze6z`?m$xHGkt~7S;FPNy=y4bH{iPM7RuhW;XocJQ*q{iZPisxahizinAe?(Q6 zg0jQD_$4O$+BuAvrc6ni@>&iU=>Iprhf~U@@OvW%1&IAX@CW+^$;c@#Z?^sg@jYGrT-G@yGywp98axgF literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/full.png b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/full.png new file mode 100644 index 0000000000000000000000000000000000000000..2b8f7f1bd023df1b323a1d37e3036f77a8c8c232 GIT binary patch literal 1185 zcmV;S1YY}zP)Px(TS-JgRA_TD3S9z$EbR~|F(I7-ok~cSftBBn_2LPn}jn8gK8PY?WU*GvkDr`2|Awhn2apy}I#g|e1()imDo<4b$Nz}&h{f|En0N|$| zzMDvXePeUL`PH=@Xla;ExVm^b)w-p6S&}yE3orEc7mX}%M#5&JJ@TBR@OnL^%_tWMf7w!UJ%Pyd^oiO! z%PL~Qn#Ze`uY)k8R7vS^nusQ)%-wtU2dir%cQAT z73&+D1Jf`^e7m)j0_bB9FT>0A8uGe%){=2zP_f{kCX&l0$;7RXlb0O$tI-U(aCgta?w%964|u(v zoJ;DUM#=cX!y9`iBnzB|A0OoYv+9zNZERmkhE_73b+8#c@AK zL}`(BZP#|>OUs7jVE<5=glYIg74l&JFfhOu9(FqEh)5y$;`iT_jR1lpKQ{?^V=@V% z9e0+_f+jBl;*!Bz+&4VTKuIm|=z)X5jb_ha;`|8%~7A00000NkvXXu0mjf1v4-O literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/meta.json b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/meta.json new file mode 100644 index 0000000000..be52cde95e --- /dev/null +++ b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/meta.json @@ -0,0 +1,46 @@ +{ + "version": 1, + "license": "All right reserved", + "copyright": "By jaraten(discord)", + "size": { + "x": 32, + "y": 64 + }, + "states": [ + { + "name": "full" + }, + { + "name": "window0", + "directions": 4 + }, + { + "name": "window1", + "directions": 4 + }, + { + "name": "window2", + "directions": 4 + }, + { + "name": "window3", + "directions": 4 + }, + { + "name": "window4", + "directions": 4 + }, + { + "name": "window5", + "directions": 4 + }, + { + "name": "window6", + "directions": 4 + }, + { + "name": "window7", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window0.png b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window0.png new file mode 100644 index 0000000000000000000000000000000000000000..f2741b90cee3c1b9aec181baeed43e91853f683b GIT binary patch literal 1525 zcmVPx)uSrBfRCt{2ojqtAM-<2Z4yke%b_?lHh|9Y}Ck{0-M4-~fxH4R&5F7+4k}_o= zO-K_+V+f>43WKo;F)0K|kzkT0=HP^-CLE_jx<&|$Ik{M&UA32Dd3U3|y^q~D-Z!_J zUt`~XFrK$F@6CJj=J^JM`Si0d2LRv)-q^ij!JYa3lSeEt%Q!mj0RXz~9=mNL1ONclO4!+MyNA!ec!2-fhXBG3PkL4d zMhHOdBu$0&dTr)={r(xdZE*ppbKi9w6bmkX{^{x1{bIq5)e~IA1wg1@b6&;v^|#*- zcA4$I!+f93JeqzIAKv_c-M+X0{J_&Pm(wCH0AQp9Tg`(+^V~Z>XSZ#H0DyRNmjy-$ zV5PK#mC_P6w>A>Jmy3lEnY}b7j#i2s#03D1Izmg~EHOd=uHy`KK)2mPV|!;X%RK55 zlo0};&by8SKk#ttqgylI2`(=4p#!2{vRH7hOod4!LDvXi`O-;gZ0`*2+`T>g-D)1N z{dq2#nnCqzO4e*osLs< z(Q8?+`{Q5>fWp^67@+V24@bwnu_5jU-q^Dypv4TT%8ve2H#O*fR4JMOTL6DQ|7Yx) zA9!QCJjH^G{k?r|bJ}4GptiP#@4oqJZd)Gp2X>!5=Kd2{u&qGS&~&ljj!g+k#A1Rb zbRG~80O>AY3gjyb?6Uo~MN^0M(?;3#}BBPM^1d zm=es56-e34}b3^`J!nhn-Grj9>lgYO1R#3eaM)SS%Kc#bU8oEEdc4gq^2L=l_XGbpWCVAn5nP z=L*vi7dqolbpYsIG(Q*!cZW^c8)Qd?)fCuLX&J8LU~_9@EI-(FoMG~0wNl3Y#yxJ+ zTF^2A)D&3y`|JK2blW{tE9Kan zOgc0PXmW`3CKKu~?udG&Dj1YhtG|AdQGQt<2<*~#PS$qUgL2UEiQn#FT1(55nF3ye{X-{y|fsi1J>)cVNg}A zKcJ2bszIQ3J{L7b3Drl4t3RLyQR$uzzrqLs{M&2|Lu6Ec;OMw_C2TgWHUS4CrU0EH zi`F5aYwBhTUDt&XBOrQ;jE>gEd5^lCC~*OBYK!HftS)Cb>nN)$J^}z-DXg9~;sW3} zKRT45xB#T1LgE5Ym0(;&nrY;sq$V&L%1HwvI!2E%Rv^vSOmk>6iuednJAN&#z_nL` zYAu1Jm1S~a27yr>0g0%vxDw=;G96}6TmZ!B$*WYg2)Kv~zz;keb~>p#lM6E_tpvqK zfLcf3+HQ@hLYOD<63E&AFQ67wNm7d-7tWBHTM#NlFE+hCiu4N7VzF2(7K_DVu~;k? b%i{7s{eI;U)xy{q00000NkvXXu0mjfnuEp0 literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window1.png b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window1.png new file mode 100644 index 0000000000000000000000000000000000000000..a8001063788e4ef04d18662b11d3dc0ae35f09ba GIT binary patch literal 1194 zcmV;b1XcTqP)Px(WJyFpRCt{2oWDyPK@`WohE%x=yM-?17imtpJ(g=C7)YtuTU`hN|BOJIkS35u z2&B;>AhEHs7i|Iu7w{U9JJD-Iu()gXaM$)y$XjPuqjxv!zVUpY=JwY(&f7O{-n=(E zV_;^nveZjn%jfLac@X-s>vRqPn;UCmI`u!+DVzrRoQ)v#qsA4zLhQb6Spb0TtsT65 z_XYsqce?<9gZ-9v{pGU>AUGSqMTO zwq>F0xwk&AKC`#q)UIEv|D-|E1|<8x3U!r{vH|l8bFn`C``3@Y8}#|>_ui&v{f{)u zv-0BQGwr{@E&%oItE!z9>|H=-C?nzNz%Brex30o2fcb^F=y-c;XP~kp;RyNNF2b|( zp~|M=2(cSM0LVRk0^nvJ;I3fT0N_%UgV4ufWvO?YAkwrO>;g!tzgsFr8gW~>k+1>H zM&ru4>hAte8@NXgK@dg*?Rda-F}*?1ozLr{JqpY(%%N7TM_yTSXi~j33T4srwq;>+ zV@>y8&_Y`PjxzxOn4T&`zlTSyD9%UM0ifOPM8~#eMP)hBc7>@?lg@Z_Om8|Fw4{LN+64LgRsyT;V|=BgmBvPQsEIa!Vx?y#i)tXE>^lp)CND#`Ixe z(SVcVQ-o*dLnlSkMB4@o+K*|W)5-CvZq=#4G7JWxZ-fB^7(Bsz&Nd9^T1Pa_0D z5ClOG1VIo4K^T29U7)mBS?Wp&yF!!ka>E1dus=^YW>C}YL>9B4=`bU5vvh=kdBaTS;iPZ zfI$Pwo@dLwis!tfPm)Okg45p_FXtz74RqF$7r=^P#o2XFZIWR&1s$-OO z_h8>cB%iafy0Q*{XBC+d8c_5KY#}ms4FC|E8D{-46}twgYHwRs=32lm0HD9m?e7XB z1OV{uCt!pP;G7~Gp#jurjzFmq0-#}#BTmRJ0DAk>_^h2Fb^!pFyUlRS2iOG=gg(li z`>-cNt1Iiq1xf@#5ClOG1VIo4K@bE%5ClOG1VIo4K^PtW0Uij)F^dThTL1t607*qo IM6N<$f(@h@p#T5? literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window2.png b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window2.png new file mode 100644 index 0000000000000000000000000000000000000000..f2741b90cee3c1b9aec181baeed43e91853f683b GIT binary patch literal 1525 zcmVPx)uSrBfRCt{2ojqtAM-<2Z4yke%b_?lHh|9Y}Ck{0-M4-~fxH4R&5F7+4k}_o= zO-K_+V+f>43WKo;F)0K|kzkT0=HP^-CLE_jx<&|$Ik{M&UA32Dd3U3|y^q~D-Z!_J zUt`~XFrK$F@6CJj=J^JM`Si0d2LRv)-q^ij!JYa3lSeEt%Q!mj0RXz~9=mNL1ONclO4!+MyNA!ec!2-fhXBG3PkL4d zMhHOdBu$0&dTr)={r(xdZE*ppbKi9w6bmkX{^{x1{bIq5)e~IA1wg1@b6&;v^|#*- zcA4$I!+f93JeqzIAKv_c-M+X0{J_&Pm(wCH0AQp9Tg`(+^V~Z>XSZ#H0DyRNmjy-$ zV5PK#mC_P6w>A>Jmy3lEnY}b7j#i2s#03D1Izmg~EHOd=uHy`KK)2mPV|!;X%RK55 zlo0};&by8SKk#ttqgylI2`(=4p#!2{vRH7hOod4!LDvXi`O-;gZ0`*2+`T>g-D)1N z{dq2#nnCqzO4e*osLs< z(Q8?+`{Q5>fWp^67@+V24@bwnu_5jU-q^Dypv4TT%8ve2H#O*fR4JMOTL6DQ|7Yx) zA9!QCJjH^G{k?r|bJ}4GptiP#@4oqJZd)Gp2X>!5=Kd2{u&qGS&~&ljj!g+k#A1Rb zbRG~80O>AY3gjyb?6Uo~MN^0M(?;3#}BBPM^1d zm=es56-e34}b3^`J!nhn-Grj9>lgYO1R#3eaM)SS%Kc#bU8oEEdc4gq^2L=l_XGbpWCVAn5nP z=L*vi7dqolbpYsIG(Q*!cZW^c8)Qd?)fCuLX&J8LU~_9@EI-(FoMG~0wNl3Y#yxJ+ zTF^2A)D&3y`|JK2blW{tE9Kan zOgc0PXmW`3CKKu~?udG&Dj1YhtG|AdQGQt<2<*~#PS$qUgL2UEiQn#FT1(55nF3ye{X-{y|fsi1J>)cVNg}A zKcJ2bszIQ3J{L7b3Drl4t3RLyQR$uzzrqLs{M&2|Lu6Ec;OMw_C2TgWHUS4CrU0EH zi`F5aYwBhTUDt&XBOrQ;jE>gEd5^lCC~*OBYK!HftS)Cb>nN)$J^}z-DXg9~;sW3} zKRT45xB#T1LgE5Ym0(;&nrY;sq$V&L%1HwvI!2E%Rv^vSOmk>6iuednJAN&#z_nL` zYAu1Jm1S~a27yr>0g0%vxDw=;G96}6TmZ!B$*WYg2)Kv~zz;keb~>p#lM6E_tpvqK zfLcf3+HQ@hLYOD<63E&AFQ67wNm7d-7tWBHTM#NlFE+hCiu4N7VzF2(7K_DVu~;k? b%i{7s{eI;U)xy{q00000NkvXXu0mjfnuEp0 literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window3.png b/Resources/Textures/_CP14/Structures/Windows/marble_bricks_window_frame.rsi/window3.png new file mode 100644 index 0000000000000000000000000000000000000000..b1b21eaf1779cfcd2d73f322f0c081e6189270cd GIT binary patch literal 1201 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/full.png b/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/full.png new file mode 100644 index 0000000000000000000000000000000000000000..1222cf93a8746325ad7654358e6f566929f55d9e GIT binary patch literal 1403 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 X-6XUDM}umt00000NkvXXu0mjfQw9hL literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window5.png b/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_broken.rsi/window5.png new file mode 100644 index 0000000000000000000000000000000000000000..492ae56122f63bcb93ff33a934579e4837455c04 GIT binary patch literal 1146 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/full.png b/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/full.png new file mode 100644 index 0000000000000000000000000000000000000000..664908c4f85f369b0769c8b58428be6aa975e10c GIT binary patch literal 1127 zcmV-t1ep7YP)Px(AxT6*RA_tM}QUU;yq{GI95Kzi4CjH(1KI@PjauO%0 zwId~@Oc(2NsD(Tt!z={w&DRg{ax`LxWsolEyZ@7kEu^4k;xEXN-Xm0#c@s zGR5gHKiL3WCzP5&ueU109*i*$b}O>+`8kxbj@HQmptUzRoF9Gp6&uX5k*DbH z-Kza1Y^s+{^~GCYjA7yP)05U(YYrY9e>(?&pHF_QrN1{goV)d`(g`~|cN(pu zx=>1?UFh6<`EELSVPs#fxW8Z3bvm(rCR-l!sCT*zrj< zpy2oGI#8flHVV>z^!SPQ-y6kA(y^npzklVM6t`}14amEnAdchB3lhG0$u5BLWi#C)p#c+7$cL5y`bw_b1_6CRZB%|x zl-EY&xGbbCAyC`6GE2336`pu-un%Jlv|es&c`Z{i8>LUb`u*O@!)dJZwKC#;2v@g~p@q(>^}}J6ymAek{`woIu+X{X?JD=~16p6OY#oEzq*LgesXplf zi#bs4eVW-W<8gJgzNiG}>bSaeM=0x2hqU$vhjUM zmW7=Ip|l*Z=Yi|99ZD=+?CjhLrsi>ydRr3FkDFjaE+~k$QmXL*)FgYhOP2mBgd`N9 zw491_Oq9$m2s()BqG{&b%P`jfMHhnqqh_M=5D5Wg@6VUN2d$$in`I+JuH&2NfQ=k==~LuF!82XT_(!w;6c zvi?pM|++uUM{EwPx)#7RU!RCt{2oxzJ6Hx!3|DP>v{ENDh;Sj>jn-m<%dKms9zl2c3Rtk5CE{)+*N@SN^rZ?0+1@g#}C(^0kzl&DYI9`#HpPk z1?vI;-VB6Kx58E8ga8<8W;#Fs*y-+{uQHFO1m%PP)ZiIwVmRnyyR*BpO?>rgJ#;|+ zNj6wGvlN!i1XDAB zCzjFNy)Iy6E35{i_U8H?ov~(iUBAzTrw_a(GYCx0oW9N%4f@iXLB4eZzaIRs_8{{9 z05z;lg=__ihNc@VoLdq$u@)3{Veo(j0i;%f9>_2SSqBUT$E$DBP|9)Wh!wCB5xR5l zQvm61@zN_nSL}IN$O6z!+PbKnV$tREHmH0F#4>_AD$sxcikdT}1O?n!K30@q>*G(- z57(|;ekDk;>8Gcs)b7bx*$IxvVfy5$z($9o{SYU7|X~B1qfJBf(;hp z{r5Kf#mK9(GrT%Gv(fb&Mx3Ft@ALmXwI3QcvIO|n4Kx~!6*qCjaSUPU>Hy>qK&bDRK1nK;5w<(KS*on6 z1E8*D`N5n|kH`ym-VKtY!g>m95CmYXiB6}jB}J$C!HhMtESWD4OY|249;aGi6YNuf;~F(^*~bCr=OrYt;#=g31#lTsbhQFyaj5PlhaF z+3Ar>?+gL!=LZNOG9SSeXQ=x8fH!84^ANpW-$eH$tWG~5-5!7S^)~=g2dUTVSLz>F zuOI;c-+%Wl09skCvN$0C{ZMt)4w4hT0N3G+RH1x?Ua!Bf{(v4tHR(?{A%Md_{>(yTs{Viw(M;IvqS^!$oDe|X_A8%3Kai#0 zBjrnDF-0c?kUvGHj@B;n9!(ctur7ev+G54t6V#%tF69`#iL$!ZX8@22!B$-n>jI!S zKPHMWSQmipsE~C5=t}VM!`}kB7G@Bb))BA~6}GMf$K!G7wkFJ=bpa?QlS%1X1Qe_bAeIrt$+J>} zsf8K*;KQx#^NZ&vh1%BQFE;c#0vr2kOc%mBiI+gl{$Jqr>;JOPYvmfCM*lDH&x_|X wDfH^?PgVaf;PH4o9*@W4@pwEQk7x7vAEo`#R^XD-qyPW_07*qoM6N<$f?0>#`Tzg` literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window1.png b/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window1.png new file mode 100644 index 0000000000000000000000000000000000000000..e26342f0543cdd16bc0dcd2e9f7a7c0dfd07959c GIT binary patch literal 1186 zcmV;T1YP@yP)Px(TuDShRCt{2oIz{UKorOS)fx@5b7%%jSz64dBBhrKMMS*&VLb@mq_n3VJQP}$ zB7)6=QazX;q%P5@tcP{7lh|%|chY&&?fYFe*-dtsmpAXddGj)JAZ9gM>({^YMNm1< zv$XQPItPFcNAKoL+MhSMxe0s`AkWgWb5hF6??SWygg89dL#Go00J3awO_C(W?UM^Y zN{Qs(=b*Fy6NMq-xQi$Zan$XedEGRS3qXh#KE>}LIw7JkJokG2nxk&lxP7DX(*$)J zP#^y~YN*VV4OrjUM3$WZ7>wz+`@3Uz=+Tp>{SQa)jM~3ubT=`Ji+7CwgIoam)7Mqo z7UV;~#FZ)GnLsW8il?qaE`aro&GPv0U~i&(XCe^#e0+>wzkg44Z#`<9267_^05|3b z&tX&ya8ZzJ008{>SpXQ=gVkuQf1V(kv>W6CsH?wRT7mETqi>QDd7jUP4fy`;Yvnxo z^05-`o}~@c-h*M7*}ym-a9U1p5=`gwrWkvH^^Hx$akq@h>aIzT)>JA>T`xonrt^7I zj0NC%9soefp!`gd6iJdmN?Cpn07X%h$3nEqdnqvvg;l4P+wJmLJ?VP#((}ABr{_ZF zfd(`{Wo*?kFicjCN^&l@+onx7g0TQpXY~wimYpEaQtZEeQ_%uFfl>dB3S$AN&Z@-< zU}y;I22q{oSqk$gz8Nmu4W71~rE}@spj=wPtKFAlcVabK>+4w{YBy-?1tv{R`yyy0 znb{O%(_vSHU_B+4XK5pejHWQw02Kp_i%NEUawMTaG6Wtxd<Bm3Caj2aAWw8tPIJe6)Y?)pndlqMe`Mm1>llTp9T^) z*z5HunmrZkZcts{>-C%v1c@8Wv(yO#2oMYbUj(>y(~W!}K;#9cEr_@X8kr2KtWdq~ zw~i}nuhYm7sI2LaC|k*I-!7NG|NJR%{W^VtN+SYLovNchaed9-MNMEBhG7_nVHk#C z80P9=wLob#TI(-&?gJRUD0%6Nq$WkmpsXl$VNHo7Dd%}!rG}Ui>jEf>qO2=+Avb7s z2>2pE6oz>5{F%*WM`Be2@+`&H_6~dzKp8`7tO}sMQ3}PIqIIm>0QC~Zl{A8RmX;mY z-yWfa%nOXOV~h=~2SSGjdx+!i$VF6}kkkiADFG>+s4pTlf>$yS5~Agd0R#v%APUFZ zGRqd$ZNS#{juWb{aAGg9<<9+bnjFX7iMG=+g}z1w)f|CsoDhH>7}*{kztBEZ)6 z4gi|kA#wo#!`UH43B4l%7>2~QU#23r0s0dcqGf%4KrR4aI5nmSkemC$ A*#H0l literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window2.png b/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window2.png new file mode 100644 index 0000000000000000000000000000000000000000..f884b2f1679bb207fcd47b9a31e4a8331807208a GIT binary patch literal 1546 zcmV+l2KD)gP)Px)#7RU!RCt{2oxzJ6Hx!3|DP>v{ENDh;Sj>jn-m<%dKms9zl2c3Rtk5CE{)+*N@SN^rZ?0+1@g#}C(^0kzl&DYI9`#HpPk z1?vI;-VB6Kx58E8ga8<8W;#Fs*y-+{uQHFO1m%PP)ZiIwVmRnyyR*BpO?>rgJ#;|+ zNj6wGvlN!i1XDAB zCzjFNy)Iy6E35{i_U8H?ov~(iUBAzTrw_a(GYCx0oW9N%4f@iXLB4eZzaIRs_8{{9 z05z;lg=__ihNc@VoLdq$u@)3{Veo(j0i;%f9>_2SSqBUT$E$DBP|9)Wh!wCB5xR5l zQvm61@zN_nSL}IN$O6z!+PbKnV$tREHmH0F#4>_AD$sxcikdT}1O?n!K30@q>*G(- z57(|;ekDk;>8Gcs)b7bx*$IxvVfy5$z($9o{SYU7|X~B1qfJBf(;hp z{r5Kf#mK9(GrT%Gv(fb&Mx3Ft@ALmXwI3QcvIO|n4Kx~!6*qCjaSUPU>Hy>qK&bDRK1nK;5w<(KS*on6 z1E8*D`N5n|kH`ym-VKtY!g>m95CmYXiB6}jB}J$C!HhMtESWD4OY|249;aGi6YNuf;~F(^*~bCr=OrYt;#=g31#lTsbhQFyaj5PlhaF z+3Ar>?+gL!=LZNOG9SSeXQ=x8fH!84^ANpW-$eH$tWG~5-5!7S^)~=g2dUTVSLz>F zuOI;c-+%Wl09skCvN$0C{ZMt)4w4hT0N3G+RH1x?Ua!Bf{(v4tHR(?{A%Md_{>(yTs{Viw(M;IvqS^!$oDe|X_A8%3Kai#0 zBjrnDF-0c?kUvGHj@B;n9!(ctur7ev+G54t6V#%tF69`#iL$!ZX8@22!B$-n>jI!S zKPHMWSQmipsE~C5=t}VM!`}kB7G@Bb))BA~6}GMf$K!G7wkFJ=bpa?QlS%1X1Qe_bAeIrt$+J>} zsf8K*;KQx#^NZ&vh1%BQFE;c#0vr2kOc%mBiI+gl{$Jqr>;JOPYvmfCM*lDH&x_|X wDfH^?PgVaf;PH4o9*@W4@pwEQk7x7vAEo`#R^XD-qyPW_07*qoM6N<$f?0>#`Tzg` literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window3.png b/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window3.png new file mode 100644 index 0000000000000000000000000000000000000000..217f05e1bf37c8e6e39b302409e73ce47486fad2 GIT binary patch literal 1192 zcmV;Z1XufsP)Px(Vo5|nRCt{2oX=|$K@`Wo)ff#Wb7%%j2`O$;ks|&m6cO>{#Xq)(LT^&^6VcyQX_vX!;SpqQ|oy|eCUO*D|iQQ9~uW$t$&>Hq>99Uh?F4gdggJS?M>vaX+8 z08&b*f1ks~{!b?e5QbfJf&eGo?z!b=fm{GW)NvLbL$m{Qg5bjPW|@<2*SdbI@lysx z9Z($qCVHqWln!XM@1@sDDSUeWcH#y-eg1Or<>a$f{nxCXCT4Z@w)KB_BLJmTu4}u3 zdvN-;3T|c=1DBijWxd84z-cGNN4iBb!b|D<0)6>(LpDlWgvp}u{Z&WI{Q5n96 zaX!GjAnyS`e)iMrB#yAr*&JLXh%)sCxd4jDwRO~LwF?SKBuTOuI-vMA)wi!XclW&B zKy5u3hFJ`(;{l^$dedM#pSQ)@3fzCZjWFz{URlvJnckWXW$E%l)L}cHx5Zij)oK+0 zAY~){R4Rf}3R24SdjRP7Gp9$0dipFS)~>K_RIAxcul1WQ1~04CY8un?q47WoJwQin z^)-+ME5`*nTg|3z)umu90Nq$KLL0~5k;D<+fB2Z|1!e%F_!|}00?>`sixoho2#X3) z-zRYddoR8m=57W@EoYfrdNU~3*75G`tBD)2(b*iBQ6OqFXl(_i4NccXqm*D~S&&VK zeG!85kXRB&r35m{!ny}&A7D~+u;a{=fCkAB*n08|z|f1l^h)ruho-CrV4Ac^Q7S^e z-}gchIv)Z)d4WJluJANyC8*%X@F7_ll56W&Sy@5z&RvS?b65+&C!0PCBxbPJ>rqrY z66a=6m+$p@UI>E33?^~pg#rW!hCod;aOKVFDpCLa( zq$V1vS9m4Q5(Ba=_7o}fo(LfG3S9?D$aR4E#)YUm50#M%0La{8iYc-e0s!dF6YxR@ z9337Y47+3VjOT?HJwP{_!aepv06IWI5hEZMKz5||_=6Va1-Sr#?6et*`2e{9hUPx(bxA})RCt{2oZo8{Nf5`s{u&sT49Jd(ERmbth=d?S2#1JIzWB%b;Nja5^j?C9 z2oXe7bQ4hyAMA7vj%0N~y5)hVj>&r&sX9E<&H000HlB2d9DK%8`urrrAbBe4LdNn3MZKk+14K%8`s z`L=(87y)Hj*4NZiAczq#$TAGF3|m{<bd%gO4^XX&K_Ji>P_LHAWFOa5bZ44<1 zLV&9C<9h-sf)K#CKYK|`1*r|NSA7P`y}t``FR-$@R=d5|uisENe+2R=Fvv12_IfPC z-37S-5ANT?`ol*UWEuIo-vzk<#@|130;-oFck1hx&!15??}Xe4u0MPf#FG~UK@bE%5ClOG1VIo4K@bE% z5ClOG1Yv$?ouW2*2Ee4h9hU^bbw0?2mkg1W)ir3nJN{vs)@g8s&d1W@Lc&{$jO)~A zk}N>$T__x;$Jrbaje*tz#7P%}ESviO;r2F^Qb>{o=lA|u|Euj!XhrM!cm2lgF&p5T z`_q!53!VS|XNEeR4xViM{mY$L8Y~~Itgel&GQ1nUYWovf(K=D`(xr=yz8@#uAm+Y- z?d)(UB9N!b7CH|iOWe?U1T?MtVG1UNa9jppngTceyak|2nC3Qutp(`!GrZW`Xmro} zZTf04(_lF?_22jJ9L+lMVgn`%q8+#J2@NkcAiaDAaU72>rf+zPP6z7K2gFGiKYo-r zbB6!)z83*ZrzWwVxLqzU#E~Ef!h8};9idri8&6=bBxT1F%_gZosx78eKK8l6F22@w zDa|fG6h&jFNlj_Tco zYm?*(pqjEf_C0N37hvev8BTs?M~}4Lb>1^8>;l-GQ%a%GIkX<%PuMS5e8-a51+Y5@ zRC@*^gbP~)AA1UR0s8%{8U>?QX-(c0-n@PHpsgDW#tY0s(~!Iib^+`~5XUx|eG0S* zk^6YJz%BrHaD-ie!}o;EOKSLd!NM*8a5$8kme%qydV(^7O|eJMtgs6J99;}i!afB) zZt>O?Wf!3L$JP4pf8W1tbnl69g8;CWmLJ$ZiA9U$|VqF8})FbEA8G7(wH)ef9tV002ovPDHLkV1g^DC++|M literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window5.png b/Resources/Textures/_CP14/Structures/Windows/stone_bricks_window_frame.rsi/window5.png new file mode 100644 index 0000000000000000000000000000000000000000..a42ac19bb9acc29410d51177f33050033f2535b1 GIT binary patch literal 726 zcmV;{0xA88P)Px%kV!;ARCt{2+`(%TK@%ZlNS%$f4i8T?XlwTvjX)Qx(eQV z0KirAjT$?P1bFY^+{h&M6O*W0oEu?M*O=5bJvQxL`x>t;{x^ds{G{QmjF`YVV?!Kmv2*6V+} z&}V`8pcB^sFQ#YgudsohfVloQ7!25KnUUS7a;5PK)|R7Hq9)H`ya3> zf&g0ZSARrAL_|bHL_|bHL_|bHM5Ih6dxg_;LCkZ)yO``1j=My1Kuy5VRTz)?N96m^ zM}S3-fIjpDy#Mg=@pBHFr0AQaH;>BJ=H~_IJ4Msu@;NX$H<(irs3Ty}%{O`lSoRHw z=+oe$n`g00JfhzM$8X*OSnn9OE`sy~T+U|fkiF>r1FTPrZ_B2Ef))BKaDV>?H@5+I z%Vid$fnEc0c>EO+iOl;69v#1X05*$bQ9VV|Q)EDaeT3psTJI~g?Hug)!)%@eLkMtg zRNe?kdkIVpUX;v>VESW8y!u5IK>#=$KL=oQoHmODq)nBJEP}DAO4?k3C5sV|7Q*v$ zZcl-1iXgBqgvAxX^cQ3Mg>n%Q5fKp)5fKp)5fKp)5&7Tz1#|M$Px(ZAnByRCt{2oX>02KorNn^+zBq9gvKQEETg`ks^YEh=?aI{;@qM-lV9P9y|yN zA}YGOMG+59Dx{X!v9cbrlbubo)ojANv3;M@ZrCt8-@JKm-sH_Jftc0)+IXdR1yV-P zTI0>D7x*}MyX30<6RsLM3@IZ3KoA7Z+dk#I#S)>&JFm4SX`kEzvNQoOefmZaS9oCo z_R}|lxWWqy=*Kboag5<`H|#7-+1!Wi_QZC7Vzl7IsiW$AV45Mz6749 zzdndS8U~e8E}O4}EDV}=0o0J>0#vDQ6;3T6OA~0Vi&bDBaBcy^;RwUw$cv{B5C~u* zfPx=GfHn%aYK`8|xmMeevY~x|mztD)r2&aX^YK4-Vzs|EzIy%UfC)ikkUN6S$mz%Zj*&4Y&EoL4h`v!mQ z?^85eNh?0UBt(DP0`J5AfHJN40D0je!Z4hCnV;}voetF3PY6YX-@i3Zo}}Ns---aH zQ)TQYZmgqxonaV;60c5^TZE?T3FOD<*z1WVN$O3`7E>yjxo)rzUu!y*CKn(Gf|-rf zrn6e>;(D>Rs1&4>t!})gpNUM+S{I9^_TEBZRwR32wT*K~$Sq){+bup1tR$&w0rlOx z_XqB23b_D-ip;Ql&0al9)1AtD7KK~@yK_n@WNCsloy{lg7c6bBC6NnYcMiyN1|vij zwg_$H6yyT*dU0+AlUHeV-WA@ydw<+C40;m<7NPEvd==yZ*pncNG?{z|G+82VKH$vR3&rd5AK$;#y0;A{NNxcDaQamK94MS1xdi~g&%Nmpo2&h`@!y1K zbHYR}K)G6Erq*B{QX4cHUIzs literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/full.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/full.png new file mode 100644 index 0000000000000000000000000000000000000000..1b013fe3f29adcffbef4c10f3cd410fed75e583a GIT binary patch literal 1084 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window3.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window3.png new file mode 100644 index 0000000000000000000000000000000000000000..e714b27c8977abbb70ea30f5921aa951163ad6d2 GIT binary patch literal 1109 zcmV-b1giUqP)Px(4@pEpRCt{2oWDyPK@`W|CAt?*?>G;!hzc>WNKO+l5HMJz3j|BSPW%H>AE=G7 zNdi~r4+wUFq!a5D!GK^2f2A;_Fm`f^%N^{gY>F_Oac_5T*O}S(4&SG_Wp97YcjnE^ zd-HZPfXwV<*;P6J)AzlM%K2R?C+i@ay$!?tg~($LkI%gAcE=_KT>!a2HM;?I=OWgz zxVY?N4WK^Ne`;DFi%zHTd>jxNBLjbDNLi@EMp?vE}&G1m>JjdSmJ5Zvr{cK4b=wXX|w0rFPn z%CF4F_my|1?~g7(J4}l}UI5du0N4+J&5aiTeIn#%?!{v_j??qwcTLOvlzi!=%r8_I z{rl1w>Y_-^1cC}Lrn#7)^#K$L50H`oLA6f>IJs{Bt|*{pSxy zmF5k)Q8s~zky7Y?VUA8(G5SJ#${xo*f?88WTFNI*m` zyyz4B0pf(FM2ql?K*0=@UD2hPDfjK?Z?UiQ>ggj_tOD6h z_sS58!Hu5@vH;i*fDH?v^J0{PpJ8Yl2IX{?PC|JmI5AR!ftQ_E^8#%qFg{kc!ctje z(>QIML(n!BS_Ej<^vB1_mh2PQO*$a~Ei=J`qm#DBi9(B%II%6K#bKbu8?>8lWMD*a zczotHdkW1TKtl_7G&Gc`J^N#V*e!rz7=~dOhG7_nVVIjos=}1&;9qjW=!f`I) z+3V^XdFV9Rn#g@Y0wDZ_D-)1t0i{CLn;SUJWn`2nYQAwDI?@}|nUdRa0_ZjiG6D!U zIWD?d0T}_VgANf$2$0l4(rE@HhrzI#H8Cub6d()}FJzDsAc=#dt2K}kAP&0CfTRGj z17&(zOhN!L{@3gVIL@WFKaD672?6}189pO14`3LEVHk#C7=~dOhG7_nVHk#C7=~dO bhB3)s)wFh|T2%8c00000NkvXXu0mjfosje- literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window4.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window4.png new file mode 100644 index 0000000000000000000000000000000000000000..637af259767d4ec2c8a9807b0999bf585d7ae166 GIT binary patch literal 1231 zcmV;=1Tg!FP)Px(iAh93RCt{2oX<-eK@`WIjV2l!t07RRc(CM9qb=yko(jE*cW>ffv7o2u#RT^3 zxrE#bgwXqOEPy2fS@z0C==fV(&e@4X%(*tryTOLYou5PM{rg3Bj!@_{Ia2UMQeV4E;0dav#&*LcPmu21rFr{6gmfwi z>D2u-Nsmz>aXPdBtXv-=NOuQGkpvM)g`$bj0=#+oBJi_Q6Hmi7$DPmueEE4A=(*O_ zP1vR)A+!LCvuW7<^lb>Bv*3}`{sOe~gx~*5nEv|l!}e%A2G`bI`{u9Xupc25T=N9A z_0=7>3NckH$G9g-mWo<|oc_YPKN^ogA~poi#?+|U6k0V#4-0^{7_x~(09I2ao2sBK-^zuftOOUdO|;C_e;P z0`c@F$_TJ9pNrE4mVTY&RgSBS0M)~q<+fj-H(7KgDv#4@B zOh=h`RGvv60<2DqCx%^vt28`fiqb6rptsmyyD6M8 z9jG752td%wl{{;SOQOxZ+fzyaVg=pNW12^Kw)o8C{l?C#^HCsOfK)vAUM7mrx^w{u zy$C@#IBAA%R~Z5N;Zb@4(fpSJ@H}@|Spf$2Tw%Rj$yX0+me-75J*-)JxspHsyc@bb z=*si+kml^eXUY~M_>C?-Z_1n@#HSMpIE z%qsnhk(H%6yLENb5f~x6!c5BBNzG&?oD{u&QO*r!pN|EK_aB@zVI~v4J?R$k_EomS t1@sydbPJ&&2!bF8f*=TjAP9oE@fU}@$_|iY7_$HX002ovPDHLkV1h#nH>Usq literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window5.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window5.png new file mode 100644 index 0000000000000000000000000000000000000000..155a654609ce156e021b473096dd59a50395cec0 GIT binary patch literal 959 zcmV;w13>(VP)Px&c}YY;RCt{2oWD<#K^Vs$r0|l`zG)l7AYl;)Q;3r$=)d63X1cgJle81MAjvzq zn;3!b(9P5^(`WlN^mEIhwef z{&Q`8quH+2vqr6+HA0myE&vfxrI@Fk{e$lD`bM+8zR_&!_kE_LDZZw~y7!G~6Z7X^29AQhtbb4-UKM z-hAA$)=L+{mk3b_puSxKD3lOBL=g7@r$HI+!zV;1Kq)`OT3$2)Oq7QEy8m4H0A>7s z`|pJC;{7IDy~KNf-sOwK{OutwfHV+5x&qSVxC(O3*-MLaqK=rQ2e^!%o~rgY_XQxh z0QzIAK6l4pJQ2eX@cGypg5cv%H~h!TXA9=_m9?g*4+z!+TrHj?gQ1E%6+wJ}&G=Zx zya~%Rs2i{T{M7#gl*GFLdh5s9>N?&9Fke$^^{inNqEgJ$*5|Lji|-ruY4FpRJt89O zI)DVMQ_$>8wWH4hY8i~P4kj1=Wr$q>wG;imm{URcYMg%qiI97TA0000000000 z00000000000001Nuy2y8q)B&|NOG9a)7S6L*Cwfcc7@w=2XNz60A;*Q1a+=b%=;|z z%$!*Om(j7t2bi#I)#|o>nov0{P&q9eU3~R{qY6&EIG~fZ_S@%A7D|PYW9NEBiigJA z5I6~?!U%hCbT8QU37WgeV-dou0IrB`pD8bV<4pi%q-pH`jE|ugcoD#5w9EK@a|MKi z)dNfC3b4VtTUxLtuKUI;?-x z`E#32uNR?35FY}wGu4iH?$(3sp?+)|7QTjrcn?UD!DAmAw%B7|y+K@nli+fUK17Hj zdT}(#QKgvg239LvhWkXk2dD^AGob>9@k9{_u(NlxHlRZ4LpnVZaRGEB(rQE_K(7Up zT0Luo=mk+YLDP7B+S7+a2oa(Xzy(Kg^(dYM^%Z08v>H+P0A)M?000000000000000 h00000002M;{s4_HF+A08Db)Y~002ovPDHLkV1gd^u`U1r literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window6.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window6.png new file mode 100644 index 0000000000000000000000000000000000000000..6236300f48579a5ee918d6841d35ef50596062e3 GIT binary patch literal 1095 zcmV-N1i1T&P)Px(0ZBwbRCt{2oIy_-K@`Uytztrp0ph8~gAIp@riq^HwKwD4o8cq$L;@%DP&L_e zKY-z8(xw-#y)`lMV4474OqvwE5hYMbS#7q5cIdF~F5u40d&2u&6j*&be`e;rdHZG} zfXvo<#+jLU+I!vY{)VIDTEr@qi@EL1UETJd=r%A4&t|3o0Kh7hi}FvMkP%>EZuZ`L z6W0S$@mTM76O9KTCV;?H;{k{YU=k7ni1B~b?ijaCLI6yrux~(6Z?sVCPJ9m_DS(Lp zNI+5m0Dx@XDwwcCW)6^<$T&a_g?R|T1P%eW8(dk=L}d{U4|4lD>_$}mBXP6t8_nje z!pd?c3IK5OA-9vBPxd}Lzr2Q{E0yVVH0e-?@#Qk0vnFMu> zUlkbh0Hz>W2p~6}a>E76 z1qcd+WESRT;r#MiwfT|J9tsOVX&nMxk-RTuS`xQY^ zDUNodq-0BO+)elHo(QRU3{vs`uSIzbg?hoz0(jN>2tnKp6q_W3KomAjgcjiS%NIjm zo1A?f)|_%e3-IOJkD;z>c5cI((n4qfRu@yS_wj24puZGO-XW6BTZOm(3Z_53f47r} zO_LEsX`Nthdvmu^t=V3m`Mr;g@Z#)F2KoI9o0T5H;4gx52!c$qu}PxUqLU=$$)r{Awa+a)8wLl{dhV46oMfXbu! z$O74)o literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window7.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_broken.rsi/window7.png new file mode 100644 index 0000000000000000000000000000000000000000..4611cb315c8930cbea5a40f57dd763711e16f759 GIT binary patch literal 715 zcmeAS@N?(olHy`uVBq!ia0vp^4nW+%!3HFEH|A#nDaPU;cPEB*=VV?oFfg@xx;TbZ z%y~PHf=h%+@QGa&XI44duAOC2oQ<=J9(N{{F&<6 z4w8>vWUpMZ&SR?3kxe(}ew%pzzxJoo#uJr1I07~U`FmX|Uwu?fp3*k2|MuZ4yG$R- zefan7m(iBE?uSnWA2Ln3;&#pdo-+q0V^rLPOB;SicPS_yDBtj@O`S-Ix(O{b-U*bdFAf_cI>-9Fc_%%%V*B!w1@xs)E z?$ck({7+v0F-7Jc>oT)tw~lV#Z*RBuf1B!z)W)T4s}qEniZ2D0WtxU@8>H39?w|hp z?K-t1S&aKOdunz9C3OYOc3Ucjgj*cR_kuNs(CG2A&KiU-^BShJ|^B%HA{aLy)yXB-oQ)6uP!rvw>wz% zC|K9W$LwGcb4*skmhv@X31@|C>#J)!--%71EB(ebV)q`e(`#ljtc|df-_E|Zcm0vl zjI4LhCzeRhSre$)cE;?Wq2Ltf1;1Urg2SJFSynC8W47a1NmWfw)0Vhk&*q2aopb-y z{atze6z`?m$xHGkt~7S;FPNy=y4bH{iPM7RuhW;XocJQ*q{iZPisxahizinAe?(Q6 zg0jQD_$4O$+BuAvrc6ni@>&iU=>Iprhf~U@@OvW%1&IAX@CW+^$;c@#Z?^sg@jYGrT-G@yGywp98axgF literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/full.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/full.png new file mode 100644 index 0000000000000000000000000000000000000000..ebd66f2c87c0036166ad8494c530195f316d2099 GIT binary patch literal 799 zcmV+)1K|9LP)Px%*-1n}RA_d3V$F(3<7%1~e`3slSuj0nNR#7|)42Qcz0 z*bp%G7oduznNS&m0&Yy__I?HnfTp{CmsO2|NKp8 zypfP`RXRxep6h}S(!fA8I`g7Bd&uf(NGw=|LJaV$T?PC!Y)C9Kf7eAJE0Abl-b%PC z7%)u>zHYAzzU+5S`^kmq?dz8w0Bm0TO`WLS?FGlr9^UizcC?w|ozs47r4tQ&`1nbv zvK<^HAE!aR2VeAZ4?@$j<7rqVg&Ck#NQ{9z`$PtW+puVqX7zy4`)NcwF8-OIA>qZ- zCgtk|jisJ3Nt8$v4-63V^aQ+V(LE%|C~Mu>URlpKi>OZD9)h*IJt*~lE(W4FW3Tu+ zz@jz$>-Rrv6@32aZrA`2{x-)aCqnxG;BP_zaBy@i{LGuD4}uyKive>m7M%wGK&vOR z5fNVwf5A}e0B%YQ{Ql?UDmWNkVlcd%8c?@3b2UJEs$9chbme~nRj#eNv3{X_&%~HR`7D+?E zf7w_N(m#^sVc9eU0OkwlR|N@Y>`hBCvB)aS3u(~bSPbm%wmhniy24;N6X;5Is8C~) zHqLS;AyJ;#6Rq2~LT$F8CyTbbz0kd^SfFvHWutR;5i(NQ-))8RkKe1;LEhVcNl8gb dNlD4g=RcV35O#3yQL6v|002ovPDHLkV1hsjYnK23 literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/meta.json b/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/meta.json new file mode 100644 index 0000000000..ea35331224 --- /dev/null +++ b/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/meta.json @@ -0,0 +1,46 @@ +{ + "version": 1, + "license": "All right reserved", + "copyright": "By TheShuEd(github)", + "size": { + "x": 32, + "y": 64 + }, + "states": [ + { + "name": "full" + }, + { + "name": "window0", + "directions": 4 + }, + { + "name": "window1", + "directions": 4 + }, + { + "name": "window2", + "directions": 4 + }, + { + "name": "window3", + "directions": 4 + }, + { + "name": "window4", + "directions": 4 + }, + { + "name": "window5", + "directions": 4 + }, + { + "name": "window6", + "directions": 4 + }, + { + "name": "window7", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window0.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window0.png new file mode 100644 index 0000000000000000000000000000000000000000..f71f60dd6e2d50cb694250a2411a93e51268fb70 GIT binary patch literal 1176 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 M07*qoM6N<$f-JFOpa1{> literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window4.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window4.png new file mode 100644 index 0000000000000000000000000000000000000000..c8d9bf0e4fc34fe2be1db3a1dd43df9fd5a68333 GIT binary patch literal 806 zcmV+>1KIqEP)Px%;7LS5RCt{2oXu+6P!NU3ZERDeGPV#D8nj69BFUnVtdd8_3*?ddFonKCcZEV1 zp__VB2vqLQsK%;Ik7Ra2d!`#2oTr~vD&E;9zZa-aKC&|6M z{rII}OaF;2A+4w~;IMsQUDLi|0fFCH{*ESzRc%!ffPe;|8;~c8XVx`U8Gt~=AQ+A& zFzwn$fC>Zh)1Yls7=T2@7$CA*1t!V8Rb4d^;JFS&S49M5vq0c?xD>XHwSBk9YVV(o z`d`2Qu)6mzqV^F083V%61hV%p0u}+&WPy@iqxN0Ex&g>#ZxN6P(9-`!*aa{Kpq9Nw zKny@8KsI3)KsNx5bpxV!CV}5kGaWJl&<#LieMK@&7BWrr%mRcELI@#*5JCtcgb+dq zA%qY@2zmS%*XrL~o~0)LN1qokt`O-T^(2aC%j)m{mBDJM4&S7b5}EwNO_RkxCU~wR zp1ZovpAkZ1Y(P=fXJ*Le17?S#GlLL^r8hA);PtDQrSI)^o}0>5jxIqP)Px%4@pEpRCt{2+_6sMKoo`H0|bmhVg(D)tf=UyDOUR+JOPiz6HxFDG(bUvR-&U> zL<0z+z@oJPL4h1h2%)=YwDW&elIA)`V~^z--x-;0|Jr=1=j+k;x_;K~(dkT7{n@BO zUupk&2YUcZMMq0TM{6skrM^7?Nvir?-P}D`YIiJETh@Q9N|Kh#o+Rn);xe?pJ%GK# zvk%{I@Bf9?PvR69bm!kc_ZCBIClNrS9YmC*0&qw!fap<>OaN8d9YNRwa3cWs0RVtg=)}AAbK_UXh>1b`3}+i0m(d)&No%1(pC@ zy#gi)55U^>b+b?5Dvb0?4|l zYV!uEtD%BDfOZc7$0)D|(B>Eg$pqk9Fi9c+=W0Px%tw}^dRCt{2oUv-#P!xuLx3LXs6>O2IAw!CXI716MIC}1$59g5SHAxt{=ZE`;aq)O>FOMv>k7!6pB|_6`t$kmbovkP zK7OtEivP@4pd!4e?|6@CM!><|E+wuR0RRw%f%llE1Tc^Q_5gsJ`+t~ByvH^nfQkQg z=N{t0m=bsEXMhB-2f#)G*aOJWt1t;O0$9tSx4av;&iz~a&H3@SpTE53{&|?00W4?& z81MagZ2b(NW=23f7(ckJc2jjkx`0(`ikpBg;8QQA##b)D z9zZ;r-8vrq{^K=1UBGgMxYzF&Ue~*wcG~N^#W!;ctWzH>l7T*k838Oz31C!-O$cCq zBcKZiYutQ{E+Ata5ud*go#UDjunt-UN;bT$3rJ=ulG%E7Q7wZ{X&Fpr zDW!4Bi~tt&f(UTkLzrcP-A;S{K=6?#m=LhYUbs`}<3||}K)}GKv9qJrttDX9n&2uW lG$Di#LI@#*5JCt5_z$dcopw`i^h*E$002ovPDHLkV1jy=Q7-@h literal 0 HcmV?d00001 diff --git a/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window7.png b/Resources/Textures/_CP14/Structures/Windows/wooden_window_frame.rsi/window7.png new file mode 100644 index 0000000000000000000000000000000000000000..8640d3f30496d50ce7d97f1b6994890f30881224 GIT binary patch literal 125 zcmeAS@N?(olHy`uVBq!ia0vp^4nW+%!3HFEH|A#nDaPU;cPEB*=VV?2Ip&@&jv*Cu s-X1h$1o93o`0Ag_BfkL1#0MI-Gd46ZFbZ06{{$)XboFyt=akR{01E>cHUIzs literal 0 HcmV?d00001