# SPDX-FileCopyrightText: 2021 AJCM-git <60196617+AJCM-git@users.noreply.github.com>
# SPDX-FileCopyrightText: 2021 Swept <sweptwastaken@protonmail.com>
# SPDX-FileCopyrightText: 2021 Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
# SPDX-FileCopyrightText: 2021 Vera Aguilera Puerto <gradientvera@outlook.com>
# SPDX-FileCopyrightText: 2022 Chris V <HoofedEar@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Kara <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2022 Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Moony <moonheart08@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Rane <60792108+Elijahrane@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 metalgearsloth <comedian_vs_clown@hotmail.com>
# SPDX-FileCopyrightText: 2022 mirrorcult <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2023 Flareguy <78941145+Flareguy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 LankLTE <135308300+LankLTE@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Nairod <110078045+Nairodian@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 TemporalOroboros <TemporalOroboros@gmail.com>
# SPDX-FileCopyrightText: 2023 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2023 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Armok <155400926+ARMOKS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Debug <49997488+DebugOk@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Ilya246 <57039557+Ilya246@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 MACMAN2003 <macman2003c@gmail.com>
# SPDX-FileCopyrightText: 2024 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2024 Tonk-GCR <ryantrujillo82@gmail.com>
# SPDX-FileCopyrightText: 2024 brainfood1183 <113240905+brainfood1183@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 whateverusername0 <whateveremail>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aviu00 <93730715+Aviu00@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Fishbait <Fishbait@git.ml>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 cheetah1984 <davidc71114@gmail.com>
# SPDX-FileCopyrightText: 2025 fishbait <gnesse@gmail.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  abstract: true
  parent: BaseItem
  id: SheetMetalBase
  description: A sheet of metal, used often on the station in various applications.
  components:
  - type: Sprite
    sprite: Objects/Materials/Sheets/metal.rsi
  - type: Item
    sprite: Objects/Materials/Sheets/metal.rsi
    size: Normal
  - type: StaticPrice
    price: 0
  - type: Tag
    tags:
    - Sheet
    - Metal
    - DroneUsable # Goobstation
  - type: Damageable
    damageContainer: Inorganic
    damageModifierSet: Metallic
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 100
      behaviors:
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: SolutionContainerManager
    solutions:
      steel:
        canReact: false
  - type: GuideHelp
    guides:
    - ExpandingRepairingStation

- type: entity
  parent: SheetMetalBase
  id: SheetSteel
  name: steel
  suffix: Full
  components:
  - type: Material
  - type: PhysicalComposition
    materialComposition:
      Steel: 100
  - type: Stack
    stackType: Steel
    baseLayer: base
    layerStates:
    - steel
    - steel_2
    - steel_3
  - type: Sprite
    state: steel_3
    layers:
    - state: steel_3
      map: ["base"]
  - type: Item
    heldPrefix: steel
  - type: Appearance
  - type: Extractable
    grindableSolutionName: steel
  - type: SolutionContainerManager
    solutions:
      steel:
        reagents:
        - ReagentId: Iron
          Quantity: 7
        - ReagentId: Carbon
          Quantity: 2
        - ReagentId: Lead
          Quantity: 1
  - type: Tag # Goobstation
    tags:
    - Sheet
    - Metal
    - Steel

- type: entity
  parent: SheetSteel
  id: SheetSteel10
  name: steel
  suffix: 10
  components:
  - type: Sprite
    state: steel
  - type: Stack
    stackType: Steel
    count: 10

- type: entity
  parent: SheetSteel
  id: SheetSteel1
  name: steel
  suffix: Single
  components:
  - type: Sprite
    state: steel
  - type: Stack
    stackType: Steel
    count: 1

- type: entity
  parent: SheetSteel
  id: SheetSteelLingering0
  suffix: Lingering, 0
  components:
  - type: Stack
    lingering: true
    count: 0

- type: entity
  parent: SheetMetalBase
  id: SheetBrass
  name: brass
  description: A sheet of brass, primarily used by clockwork enthusiasts and the remnants of Ratvarian cults.
  suffix: Full
  components:
  - type: Material
  - type: PhysicalComposition
    materialComposition:
      Brass: 100
  - type: Stack
    stackType: Brass
    baseLayer: base
    layerStates:
    - brass
    - brass_2
    - brass_3
  - type: Sprite
    state: brass_3
    layers:
    - state: brass_3
      map: ["base"]
  - type: Item
    heldPrefix: brass
  - type: Appearance
  - type: FloorTile
    outputs:
    - PlatingBrass
  - type: Extractable
    grindableSolutionName: brass
  - type: SolutionContainerManager
    solutions:
      brass:
        reagents:
        - ReagentId: Zinc
          Quantity: 3.3
        - ReagentId: Copper
          Quantity: 6.7

- type: entity
  parent: SheetBrass
  id: SheetBrass10
  name: brass
  suffix: 10
  components:
  - type: Sprite
    state: brass
  - type: Stack
    stackType: Brass
    count: 10

- type: entity
  parent: SheetBrass
  id: SheetBrass1
  name: brass
  suffix: Single
  components:
  - type: Sprite
    state: brass
  - type: Stack
    stackType: Brass
    count: 1

- type: entity
  parent: SheetMetalBase
  id: SheetPlasteel
  name: plasteel
  suffix: Full
  components:
  - type: Material
  - type: PhysicalComposition
    materialComposition:
      Plasteel: 100
  - type: Stack
    stackType: Plasteel
    baseLayer: base
    layerStates:
    - plasteel
    - plasteel_2
    - plasteel_3
  - type: Sprite
    state: plasteel_3
    layers:
    - state: plasteel_3
      map: ["base"]
  - type: Item
    heldPrefix: plasteel
  - type: Appearance
  - type: Extractable
    grindableSolutionName: plasteel
  - type: SolutionContainerManager
    solutions:
      plasteel:
        reagents:
        - ReagentId: Plasma
          Quantity: 10
        - ReagentId: Iron
          Quantity: 9
        - ReagentId: Carbon
          Quantity: 1
        canReact: false

- type: entity
  parent: SheetPlasteel
  id: SheetPlasteel10
  name: plasteel
  suffix: 10
  components:
  - type: Sprite
    state: plasteel
  - type: Stack
    stackType: Plasteel
    count: 10

- type: entity
  parent: SheetPlasteel
  id: SheetPlasteel1
  name: plasteel
  suffix: Single
  components:
  - type: Sprite
    state: plasteel
  - type: Stack
    stackType: Plasteel
    count: 1

- type: entity
  parent: SheetPlasteel
  id: SheetPlasteelLingering0
  suffix: Lingering, 0
  components:
  - type: Stack
    lingering: true
    count: 0
