- type: entity
  abstract: true
  parent: BaseConstructible
  id: WallBase
  name: basewall
  description: Keeps the air in and the greytide out.
  placement:
    mode: SnapgridCenter
    snap:
    - Wall
  components:
  - type: RCDDeconstructWhitelist
  - type: Tag
    tags:
    - Wall
  - type: InteractionOutline
  - type: Sprite
    netsync: false
    drawdepth: Walls
  - type: Icon
    state: full
  - type: Damageable
    resistances: metallicResistances
  - type: Physics
    bodyType: Static
    fixtures:
    - shape:
        !type:PhysShapeAabb
          bounds: "-0.5, -0.5, 0.5, 0.5"
      layer:
      - Opaque
      - Impassable
      - MobImpassable
      - VaultImpassable
      - SmallImpassable
  - type: Occluder
    sizeX: 32
    sizeY: 32
  - type: Airtight
  - type: IconSmooth
    key: walls
    base: solid

- type: entity
  parent: WallBase
  id: WallBrick
  name: brick wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/brick.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/brick.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: brick

- type: entity
  parent: WallBase
  id: WallClock
  name: clock wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/clock.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/clock.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: clock

- type: entity
  parent: WallBase
  id: WallClown
  name: clown wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/clown.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/clown.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: clown


- type: entity
  parent: WallBase
  id: WallCult
  name: cult wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/cult.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/cult.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: cult

- type: entity
  parent: WallBase
  id: WallDebug
  name: debug wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/debug.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/debug.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: debug

- type: entity
  parent: WallBase
  id: WallDiamond
  name: diamond wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/diamond.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/diamond.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: diamond

- type: entity
  parent: WallBase
  id: WallGold
  name: gold wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/gold.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/gold.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: gold

- type: entity
  parent: WallBase
  id: WallIce
  name: ice wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/ice.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/ice.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: ice

- type: entity
  parent: WallBase
  id: WallMetal
  name: metal wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/metal.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/metal.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: metal

- type: entity
  parent: WallBase
  id: WallPlasma
  name: plasma wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/plasma.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/plasma.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: plasma

- type: entity
  parent: WallBase
  id: WallPlastic
  name: plastic wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/plastic.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/plastic.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: plastic

- type: entity
  parent: WallBase
  id: WallReinforced
  name: reinforced wall
  components:
  - type: Sprite
    color: "#889192"
    sprite: Constructible/Structures/Walls/solid.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/solid.rsi
    state: rgeneric
  - type: Construction
    graph: girder
    node: reinforcedWall
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 600
      behaviors:
      - !type:ChangeConstructionNodeBehavior
        node: girder
      - !type:DoActsBehavior
        acts: ["Destruction"]
  - type: ReinforcedWall
    key: walls
    base: solid
    reinforcedBase: reinf_over
  - type: Appearance
    visuals:
      - type: ReinforcedWallVisualizer

# Riveting
- type: entity
  parent: WallBase
  id: WallRiveted
  name: riveted wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/riveted.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/riveted.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 1000
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: riveted

- type: entity
  parent: WallBase
  id: WallSandstone
  name: sandstone wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/sandstone.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/sandstone.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: sandstone

- type: entity
  parent: WallBase
  id: WallSilver
  name: silver wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/silver.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/silver.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: silver

- type: entity
  parent: WallBase
  id: WallSolid
  name: solid wall
  components:
  - type: Sprite
    color: "#889192"
    sprite: Constructible/Structures/Walls/solid.rsi
  - type: Construction
    graph: girder
    node: wall
  - type: Icon
    sprite: Constructible/Structures/Walls/solid.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:PlaySoundBehavior
        sound: /Audio/Effects/metalbreak.ogg
      - !type:ChangeConstructionNodeBehavior
        node: girder
      - !type:DoActsBehavior
        acts: ["Destruction"]
    destroySound: /Audio/Effects/metalbreak.ogg
  - type: IconSmooth
    key: walls
    base: solid

- type: entity
  parent: WallBase
  id: WallUranium
  name: uranium wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/uranium.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/uranium.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: uranium

- type: entity
  parent: WallBase
  id: WallWood
  name: wood wall
  components:
  - type: Sprite
    sprite: Constructible/Structures/Walls/wood.rsi
  - type: Icon
    sprite: Constructible/Structures/Walls/wood.rsi
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 300
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
          Girder:
            min: 1
            max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: IconSmooth
    key: walls
    base: wood
