# SPDX-FileCopyrightText: 2022 Jacob Tong <10494922+ShadowCommander@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Profane McBane <profanedbane+github@gmail.com>
# SPDX-FileCopyrightText: 2022 T-Stalker <43253663+DogZeroX@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Veritius <veritiusgaming@gmail.com>
# SPDX-FileCopyrightText: 2022 Vordenburg <114301317+Vordenburg@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 mirrorcult <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2023 Puro <103608145+PuroSlavKing@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Hmeister-real <118129069+Hmeister-real@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Plykiya <58439124+Plykiya@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <142914808+Aineias1@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  id: BannerBase
  parent: BaseStructureDynamic
  name: base banner
  description: It's the concept of a banner, you shouldn't be seeing this.
  abstract: true
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner
    noRot: true
  - type: Transform
    noRot: true
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeCircle
          radius: 0.2
        density: 190
        mask:
        - MachineMask
        layer:
        - Opaque
        - MidImpassable
        - HighImpassable
        - BulletImpassable
  - type: InteractionOutline
  - type: Damageable
    damageContainer: StructuralInorganic
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 100
      behaviors:
      - !type:DoActsBehavior
        acts: [ "Destruction" ]

- type: entity
  id: BannerNanotrasen
  parent: BannerBase
  name: nanotrasen banner
  description: A banner displaying the Nanotrasen logo. It looks rather cheap.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerNanotrasenNode # Frontier    

- type: entity
  id: BannerCargo
  parent: BannerBase
  name: cargo banner
  description: A banner displaying the colors of the cargo department. Not. Cargonia.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner_cargo
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerCargoNode # Frontier    

- type: entity
  id: BannerEngineering
  parent: BannerBase
  name: engineering banner
  description: A banner displaying the colors of the engineering department. Scrungularty.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner_engineering
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerEngineeringNode # Frontier

- type: entity
  id: BannerMedical
  parent: BannerBase
  name: medical banner
  description: A banner displaying the colors of the medical department. How sterile.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner_medical
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerMedicalNode # Frontier

- type: entity
  id: BannerRevolution
  parent: BannerBase
  name: revolution banner
  description: A banner displaying revolution. Viva!
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner_revolution
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerRevolutionNode # Frontier

- type: entity
  id: BannerSyndicate
  parent: BannerBase
  name: syndicate banner
  description: A banner from which, according to the syndicate, you should feel hatred for NT.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner_syndicate
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerSyndicateNode # Frontier

- type: entity
  id: BannerScience
  parent: BannerBase
  name: science banner
  description: A banner displaying the colors of the science department. Where science has no bounds, and regulations are rarely followed.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner_science
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerScienceNode # Frontier

- type: entity
  id: BannerSecurity
  parent: BannerBase
  name: security banner
  description: A banner displaying the colors of the security department. You're surprised it's not vandalised.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner_security
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerSecurityNode # Frontier

- type: entity
  id: BannerBlue
  parent: BannerBase
  name: blue banner
  description: A banner displaying the color blue. Dabudidabudai.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner-blue
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerBlueNode # Frontier

- type: entity
  id: BannerRed
  parent: BannerBase
  name: red banner
  description: A banner displaying the color red. The edgy one.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner-red
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerRedNode # Frontier

- type: entity
  id: BannerYellow
  parent: BannerBase
  name: yellow banner
  description: A banner displaying the color yellow. Reminds you of ducks and lemon stands.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner-yellow
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerYellowNode # Frontier

- type: entity
  id: BannerGreen
  parent: BannerBase
  name: green banner
  description: A banner displaying the color green. Grass, leaves, guacamole.
  components:
  - type: Sprite
    sprite: Structures/Decoration/banner.rsi
    state: banner-green
  - type: Construction # Frontier
    graph: BannersGraph # Frontier
    node: BannerGreenNode # Frontier

