# SPDX-FileCopyrightText: 2017 PJB3005 <pieterjan.briers@gmail.com>
# SPDX-FileCopyrightText: 2018 Pieter-Jan Briers <pieterjan.briers@gmail.com>
# SPDX-FileCopyrightText: 2018 clusterfack <clusterfack@users.noreply.github.com>
# SPDX-FileCopyrightText: 2020 AJCM-git <60196617+AJCM-git@users.noreply.github.com>
# SPDX-FileCopyrightText: 2020 Hugo Laloge <hugo.laloge@gmail.com>
# SPDX-FileCopyrightText: 2020 Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
# SPDX-FileCopyrightText: 2020 Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
# SPDX-FileCopyrightText: 2020 py01 <pyronetics01@gmail.com>
# SPDX-FileCopyrightText: 2021 Peptide90 <78795277+Peptide90@users.noreply.github.com>
# SPDX-FileCopyrightText: 2021 Swept <sweptwastaken@protonmail.com>
# SPDX-FileCopyrightText: 2021 metalgearsloth <comedian_vs_clown@hotmail.com>
# SPDX-FileCopyrightText: 2022 Alex Evgrashin <aevgrashin@yandex.ru>
# SPDX-FileCopyrightText: 2022 Kara <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2022 Moony <moonheart08@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Visne <39844191+Visne@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Errant <35878406+Errant-4@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2024 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 SolsticeOfTheWinter <solsticeofthewinter@gmail.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  abstract: true
  parent: BaseItem
  id: Clothing
  components:
  - type: Item
    size: Normal
  - type: Sprite
  - type: Tag
    tags:
      - WhitelistChameleon
  - type: StaticPrice
    price: 10
  - type: FlavorProfile #yes not every peice of clothing is edible, but this way every edible piece of clothing should have the flavor without me having to track down what specific clothing can and cannot be eaten.
    flavors:
    - fiber
  - type: Armor
    coverage:
      - Other
      - Chest
      - Groin
    modifiers: {}

- type: entity
  abstract: true
  id: GeigerCounterClothing
  components:
    - type: Geiger
      attachedToSuit: true

- type: entity
  abstract: true
  id: AllowSuitStorageClothing
  components:
  - type: AllowSuitStorage

- type: entity
  abstract: true
  id: AllowSuitStorageClothingGasTanks
  components:
  - type: AllowSuitStorage
    whitelist:
      tags:
      - GasTank
      components: # Goobstation
      - XenoVacuumTank

# for clothing that has a single item slot to insert and alt click out.
# inheritors add a whitelisted slot named item
- type: entity
  abstract: true
  id: ClothingSlotBase
  components:
  - type: ItemSlots
  - type: ContainerContainer
    containers:
      item: !type:ContainerSlot

# a piece of clothing that has explosion resistance *for its contents*, not the wearer
- type: entity
  abstract: true
  id: ContentsExplosionResistanceBase
  components:
  - type: ExplosionResistance
    worn: false # only apply to the clothing itself and items inside, not the wearer
    examine: explosion-resistance-contents-coefficient-value
  # to show explosion resistance examine
  - type: GroupExamine
  - type: Armor
    coverage:
    - Other
    modifiers: {}

# for clothing that can be toggled, like magboots
- type: entity
  abstract: true
  id: BaseToggleClothing
  components:
  - type: ItemToggle
    onUse: false # can't really wear it like that
  - type: ToggleClothing
