# SPDX-FileCopyrightText: 2022 Emisse <99158783+Emisse@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Jezithyr <Jezithyr.@gmail.com>
# SPDX-FileCopyrightText: 2022 Jezithyr <Jezithyr@gmail.com>
# SPDX-FileCopyrightText: 2022 Jezithyr <jmaster9999@gmail.com>
# SPDX-FileCopyrightText: 2022 Moony <moonheart08@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
# SPDX-FileCopyrightText: 2022 Rane <60792108+Elijahrane@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Visne <39844191+Visne@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 ZeroDayDaemon <60460608+ZeroDayDaemon@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 mirrorcult <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2022 wrexbe <81056464+wrexbe@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 wrexbe <wrexbe@protonmail.com>
# SPDX-FileCopyrightText: 2023 Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 DrSmugleaf <DrSmugleaf@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Ed <96445749+TheShuEd@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Flareguy <78941145+Flareguy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Ilya246 <57039557+Ilya246@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 LankLTE <135308300+LankLTE@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Menshin <Menshin@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Puro <103608145+PuroSlavKing@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Ubaser <134914314+UbaserB@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 crazybrain23 <44417085+crazybrain23@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 metalgearsloth <comedian_vs_clown@hotmail.com>
# SPDX-FileCopyrightText: 2024 ArZarLordOfMango <96249677+ArZarLordOfMango@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 BombasterDS <115770678+BombasterDS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Cojoke <83733158+Cojoke-dot@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 EmoGarbage404 <retron404@gmail.com>
# SPDX-FileCopyrightText: 2024 Kara <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2024 Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nairod <110078045+Nairodian@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2024 Ty Ashley <42426760+TyAshley@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 beck-thompson <107373427+beck-thompson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2024 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  parent: [ClothingShoesBase, BaseToggleClothing]
  id: ClothingShoesBootsMagBase
  name: magboots
  description: Magnetic boots, often used during extravehicular activity to ensure the user remains safely attached to the vehicle.
  abstract: true
  components:
  - type: Sprite
    sprite: Clothing/Shoes/Boots/magboots.rsi
    layers:
    - state: icon
      map: [ "enum.ToggleableVisuals.Layer" ]
  - type: Clothing
    sprite: Clothing/Shoes/Boots/magboots.rsi
  - type: ToggleClothing
    action: ActionToggleMagboots
    mustEquip: false
  - type: ComponentToggler
    components:
    - type: NoSlip
  - type: ItemTogglePrefix
    prefixOn: on
  - type: ToggleClothingPrefix
    prefixOn: on
  - type: Magboots
  - type: ClothingSpeedModifier
    walkModifier: 0.8
    sprintModifier: 0.8
  - type: Appearance
  - type: GenericVisualizer
    visuals:
      enum.ToggleableVisuals.Enabled:
        enum.ToggleableVisuals.Layer:
          True: {state: icon-on}
          False: {state: icon}
  - type: StaticPrice
    price: 200
  - type: Tag
    tags:
    - WhitelistChameleon

- type: entity
  parent: [ClothingShoesBootsMagBase]
  id: ClothingShoesBootsMag
  components:
  - type: PhysicalComposition #Goobstation - Recycle update
    materialComposition:
      Steel: 250
      Plastic: 125

- type: entity
  parent: [ClothingShoesBootsMagBase, BaseGrandTheftContraband]
  id: ClothingShoesBootsMagAdv
  name: advanced magboots
  description: State-of-the-art magnetic boots that do not slow down their wearer.
  components:
  - type: Sprite
    sprite: Clothing/Shoes/Boots/magboots-advanced.rsi
    state: icon
  - type: Clothing
    sprite: Clothing/Shoes/Boots/magboots-advanced.rsi
  - type: ClothingSpeedModifier
    walkModifier: 1
    sprintModifier: 1
  - type: Tag
    tags:
    - WhitelistChameleon
    - HighRiskItem
  - type: StaticPrice
    price: 750
  - type: StealTarget
    stealGroup: ClothingShoesBootsMagAdv

- type: entity
  parent: [ClothingShoesBootsMagBase]
  id: ClothingShoesBootsMagSci
  components:
  - type: Sprite
    sprite: Clothing/Shoes/Boots/magboots-science.rsi
  - type: Clothing
    sprite: Clothing/Shoes/Boots/magboots-science.rsi
  - type: PhysicalComposition #Goobstation - Recycle update
    materialComposition:
      Steel: 250
      Plastic: 125

- type: entity
  parent: ClothingShoesBootsMagBase
  id: ClothingShoesBootsMagBlinding
  name: magboots of blinding speed
  description: These would look fetching on a fetcher like you.
  components:
  - type: ClothingSpeedModifier
    walkModifier: 1.1 #PVS isn't too much of an issue when you are blind...
    sprintModifier: 1.1
  - type: StaticPrice
    price: 3000

- type: entity
  parent: [ClothingShoesBootsMagBase, BaseJetpack, BaseSyndicateContraband]
  id: ClothingShoesBootsMagSyndie
  name: blood-red magboots
  description: Reverse-engineered magnetic boots that have a heavy magnetic pull and integrated thrusters. It can hold 0.75 L of gas.
  components:
  - type: Sprite
    sprite: Clothing/Shoes/Boots/magboots-syndicate.rsi
    state: icon
  - type: Clothing
    sprite: Clothing/Shoes/Boots/magboots-syndicate.rsi
  - type: ClothingSpeedModifier
    walkModifier: 0.9
    sprintModifier: 0.9
  - type: GasTank
    outputPressure: 42.6
    air:
      # 2 minutes of thrust
      volume: 0.75
      temperature: 293.15
      moles:
      - 0.153853429 # oxygen
      - 0.153853429 # nitrogen
  - type: Item
    sprite: null
    size: Normal
  - type: StaticPrice
    price: 1500

- type: entity
  parent: BaseAction
  id: ActionToggleMagboots
  name: Toggle Magboots
  description: Toggles the magboots on and off.
  components:
  - type: Action
    itemIconStyle: BigItem
  - type: InstantAction
    event: !type:ToggleActionEvent
