- type: entity
  abstract: true
  id: CMPlatformBase
  name: platform
  description: A square metal surface resting on four legs.
  components:
  - type: Transform
    anchored: true
  - type: Sprite
    sprite: _RMC14/Structures/platforms.rsi
  - type: InteractionOutline
  - type: Clickable
  - type: Climbable
    delay: 0.25

- type: entity
  abstract: true
  id: CMPlatformBaseBroken
  name: destroyed platform
  description: A square metal surface resting on four legs. It has been destroyed.
  components:
  - type: Transform
    anchored: true
  - type: Sprite
    sprite: _RMC14/Structures/platforms.rsi
  - type: InteractionOutline
  - type: Clickable

- type: entity
  abstract: true
  parent: CMPlatformBase
  id: CMPlatformBaseDestructible
  components:
  - type: Damageable
    damageContainer: Inorganic
  - type: Destructible
    thresholds:
      - trigger:
          !type:DamageTrigger
          damage: 150 # Excessive damage
        behaviors:
          - !type:DoActsBehavior
            acts: ["Destruction"]
      - trigger:
          !type:DamageTrigger
          damage: 100
        behaviors:
          - !type:ChangeConstructionNodeBehavior
            node: platformBroken
          - !type:DoActsBehavior
            acts: ["Breakage"]

- type: entity
  parent: CMPlatformBaseBroken
  id: CMPlatformBroken
  placement:
    mode: SnapgridCenter
    snap:
    - Wall
  components:
  - type: Physics
    canCollide: false
  - type: Sprite
    state: platform_broken

- type: entity
  parent: CMPlatformBaseDestructible
  id: CMPlatform
  name: platform
  description: A square metal surface resting on four legs.
  placement:
    mode: SnapgridCenter
    snap:
    - Wall
  components:
  - type: Physics
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.49,-0.49,0.49,-0.36"
        density: 1500
        mask:
        - TableMask
        layer:
        - TableLayer
  - type: Sprite
    state: platform

- type: entity
  parent: CMPlatformBaseDestructible
  id: CMPlatformCorner
  name: platform
  description: A square metal surface resting on four legs.
  placement:
    mode: SnapgridCenter
    snap:
    - Wall
  components:
  - type: Physics
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.49,-0.49,0.49,-0.36"
        density: 1500
        mask:
        - TableMask
        layer:
        - TableLayer
      fix2:
        shape:
          !type:PhysShapeAabb
          bounds: "0.49,0.49,0.36,-0.49"
        density: 1500
        mask:
        - TableMask
        layer:
        - TableLayer
  - type: Sprite
    state: platform_corner
  - type: Climbable

- type: entity
  parent: CMPlatformBaseDestructible
  id: RMCPlatformCornerSmall
  name: platform
  description: A square metal surface resting on four legs.
  placement:
    mode: SnapgridCenter
    snap:
    - Wall
  components:
  - type: Physics
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.49,0.49,-0.36,0.36"
        density: 1500
        mask:
        - TableMask
        layer:
        - TableLayer
  - type: Sprite
    state: platform_deco
  - type: Climbable

- type: entity
  parent: CMPlatformBase
  id: RMCPlatformRound
  name: platform
  description: A square metal surface resting on four legs.
  placement:
    mode: SnapgridCenter
    snap:
    - Wall
  components:
  - type: Physics
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.49,-0.49,0.49,-0.36"
        density: 1500
        mask:
          - TableMask
        layer:
          - TableLayer
      fix2:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.49,-0.49,-0.36,0.49"
        density: 1500
        mask:
          - TableMask
        layer:
          - TableLayer
      fix3:
        shape:
          !type:PhysShapeAabb
          bounds: "0.36,-0.49,0.49,0.49"
        density: 1500
        mask:
          - TableMask
        layer:
          - TableLayer
  - type: Sprite
    state: platform_round
  - type: Climbable

- type: entity
  parent: CMPlatform
  id: RMCPlatformStairRight
  components:
  - type: Sprite
    state: platform_stair

- type: entity
  parent: CMPlatform
  id: RMCPlatformStairLeft
  components:
  - type: Sprite
    state: platform_stair_alt

- type: entity
  parent: CMPlatform
  id: RMCPlatformKutjevo
  name: raised metal edge
  description: A raised level of metal, often used to elevate areas above others, or construct bridges. You could probably climb it.
  components:
  - type: Sprite
    state: kutjevo_platform

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformKutjevoBroken
  components:
  - type: Sprite
    state: kutjevo_platform_broken

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformKutjevoCornerSmall
  name: raised metal corner
  description: The corner of what appears to be raised piece of metal, often used to imply the illusion of elevation in non-Euclidean 2d spaces. But you don't know that, you're just a spaceman with a rifle.
  components:
  - type: Sprite
    state: kutjevo_platform_deco

- type: entity
  parent: CMPlatform
  id: RMCPlatformKutjevoSM
  name: raised metal edge
  description: A raised level of metal, often used to elevate areas above others, or construct bridges. You could probably climb it.
  components:
  - type: Sprite
    state: kutjevo_platform_sm

- type: entity
  parent: CMPlatformCorner
  id: RMCPlatformKutjevoSMCorner
  name: raised metal edge
  description: A raised level of metal, often used to elevate areas above others, or construct bridges. You could probably climb it.
  components:
  - type: Sprite
    state: kutjevo_platform_sm_corner

- type: entity
  parent: RMCPlatformRound
  id: RMCPlatformKutjevoSMRound
  name: raised metal edge
  description: A raised level of metal, often used to elevate areas above others, or construct bridges. You could probably climb it.
  components:
  - type: Sprite
    state: kutjevo_platform_sm_round

- type: entity
  parent: CMPlatform
  id: RMCPlatformKutjevoStairRight
  name: raised metal edge
  description: A raised level of metal, often used to elevate areas above others, or construct bridges. You could probably climb it.
  components:
  - type: Sprite
    state: kutjevo_platform_sm_stair

- type: entity
  parent: CMPlatform
  id: RMCPlatformKutjevoStairLeft
  name: raised metal edge
  description: A raised level of metal, often used to elevate areas above others, or construct bridges. You could probably climb it.
  components:
  - type: Sprite
    state: kutjevo_platform_sm_stair_alt

- type: entity
  parent: CMPlatform
  id: RMCPlatformShiva
  name: raised rubber cord platform
  description: Reliable steel and a polymer rubber substitute. Doesn't crack under cold weather.
  components:
  - type: Sprite
    state: shiva

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformShivaBroken
  name: destroyed rubber cord platform
  description: Reliable steel and a polymer rubber substitute. Doesn't crack under cold weather. It has been destroyed.
  components:
  - type: Sprite
    state: shiva_broken

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformShivaCornerSmall
  name: raised rubber cord platform
  description: Reliable steel and a polymer rubber substitute. Doesn't crack under cold weather.
  components:
  - type: Sprite
    state: shiva_deco

- type: entity
  parent: CMPlatform
  id: RMCPlatformKutjevoRock
  name: raised rock edge
  description: A collection of stones and rocks that provide ample grappling and vaulting opportunity. Indicates a change in elevation. You could probably climb it.
  components:
  - type: Sprite
    state: kutjevo_rock
  - type: Physics
    bodyType: Static

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformKutjevoRockBroken
  name: destroyed raised rock edge
  description: A collection of stones and rocks that provide ample grappling and vaulting opportunity. Indicates a change in elevation. You could probably climb it. It has been destroyed.
  components:
  - type: Sprite
    state: kutjevo_rock_broken

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformKutjevoRockCornerSmall
  name: raised rock corner
  description: A collection of stones and rocks that cap the edge of some conveniently 1-meter-long lengths of perfectly climbable chest high walls.
  components:
  - type: Sprite
    state: kutjevo_rock_deco
  - type: Physics
    bodyType: Static

- type: entity
  parent: CMPlatform
  id: RMCPlatformHybrisaEdge
  name: raised metal edge
  description: A raised level of metal, often used to elevate areas above others. You could probably climb it.
  components:
  - type: Sprite
    state: hybrisametal

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformHybrisaEdgeBroken
  components:
  - type: Sprite
    state: hybrisametal_broken

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformHybrisaEdgeCornerSmall
  name: raised metal corner
  description: A raised level of metal, often used to elevate areas above others. This is the corner.
  components:
  - type: Sprite
    state: hybrisametal_deco

- type: entity
  parent: CMPlatform
  id: RMCPlatformHybrisa
  name: raised metal platform
  description: A raised level of metal, often used to elevate areas above others. You could probably climb it.
  components:
  - type: Sprite
    state: hybrisaplatform

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformHybrisaBroken
  components:
  - type: Sprite
    state: hybrisametal_broken

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformHybrisaCornerSmall
  name: raised metal corner
  description: A raised level of metal, often used to elevate areas above others. This is the corner.
  components:
  - type: Sprite
    state: hybrisaplatform_deco

- type: entity
  parent: CMPlatform
  id: RMCPlatformHybrisaTwo
  name: raised metal platform
  description: A raised level of metal, often used to elevate areas above others. You could probably climb it.
  components:
  - type: Sprite
    state: hybrisaplatform2

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformHybrisa2Broken
  components:
  - type: Sprite
    state: hybrisaplatform2_broken

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformHybrisaTwoCornerSmall
  name: raised metal corner
  description: A raised level of metal, often used to elevate areas above others. This is the corner.
  components:
  - type: Sprite
    state: hybrisaplatform_deco2

- type: entity
  parent: CMPlatform
  id: RMCPlatformHybrisaThree
  name: raised metal platform
  description: A raised level of metal, often used to elevate areas above others. You could probably climb it.
  components:
  - type: Sprite
    state: hybrisaplatform3

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformHybrisa3Broken
  components:
  - type: Sprite
    state: hybrisaplatform3_broken

- type: entity
  parent: CMPlatformCorner
  id: RMCPlatformHybrisaThreeCorner
  name: raised metal platform
  description: A raised level of metal, often used to elevate areas above others. You could probably climb it.
  components:
  - type: Sprite
    state: hybrisaplatform3_corner

- type: entity
  parent: CMPlatform
  id: RMCPlatformHybrisaThreeStair
  name: raised metal platform
  description: A raised level of metal, often used to elevate areas above others. You could probably climb it.
  components:
  - type: Sprite
    state: hybrisaplatform3_stair

- type: entity
  parent: CMPlatform
  id: RMCPlatformHybrisaThreeStairAlt
  name: raised metal platform
  description: A raised level of metal, often used to elevate areas above others. You could probably climb it.
  components:
  - type: Sprite
    state: hybrisaplatform3_stair_alt

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformHybrisaThreeCornerSmall
  name: raised metal corner
  description: A raised level of metal, often used to elevate areas above others. This is the corner.
  components:
  - type: Sprite
    state: hybrisaplatform_deco3

- type: entity
  parent: CMPlatform
  id: RMCPlatformHybrisaRock
  name: raised rock edges
  description: A collection of stones and rocks that provide ample grappling and vaulting opportunity. Indicates a change in elevation. You could probably climb it.
  components:
  - type: Sprite
    state: kutjevo_rockdark

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformHybrisaRockBroken
  components:
  - type: Sprite
    state: kutjevo_rockdark_broken

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformHybrisaRockCornerSmall
  name: raised rock corner
  description: A collection of stones and rocks that cap the edge of some conveniently 1-meter-long lengths of perfectly climbable chest high walls.
  components:
  - type: Sprite
    state: kutjevo_rock_decodark

- type: entity
  parent: CMPlatform
  id: RMCPlatformHybrisaStone
  name: raised stone platform
  description: A raised level of stone, often used to elevate areas above others. You could probably climb it.
  components:
  - type: Sprite
    state: stone

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformHybrisaStoneBroken
  components:
  - type: Sprite
    state: stone_broken

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformHybrisaStoneCornerSmall
  name: raised stone corner
  description: A raised level of stone, often used to elevate areas above others. This is the corner.
  components:
  - type: Sprite
    state: stone_deco
    
- type: entity
  parent: CMPlatform
  id: RMCPlatformSandstone
  name: sandstone platform
  description: A raised level of metal, often used to elevate areas above others, or construct bridges. You could probably climb it.
  components:
  - type: Sprite
    state: stone
    color: "#b29082"

- type: entity
  parent: CMPlatformBroken
  id: RMCPlatformSandstoneBroken
  components:
  - type: Sprite
    state: stone_broken
    color: "#b29082"

- type: entity
  parent: RMCPlatformCornerSmall
  id: RMCPlatformSandstoneCornerSmall
  name: sandstone platform corner
  description: The corner of what appears to be raised piece of metal, often used to imply the illusion of elevation in non-Euclidean 2d spaces. But you don't know that, you're just a spaceman with a rifle.
  components:
  - type: Sprite
    state: stone_deco
    color: "#b29082"
    
- type: entity
  parent: CMPlatform
  id: RMCPlatformSandstoneStairRight
  name: sandstone platform stair
  components:
  - type: Sprite
    state: stone_stair
    color: "#b29082"

- type: entity
  parent: CMPlatform
  id: RMCPlatformSandstoneStairLeft
  name: sandstone platform stair
  components:
  - type: Sprite
    state: stone_stair_alt
    color: "#b29082"
