# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Armok <155400926+ARMOKS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 BeBright <98597725+be1bright@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 Ilya246 <57039557+Ilya246@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 SX-7 <sn1.test.preria.2002@gmail.com>
# SPDX-FileCopyrightText: 2025 SX_7 <sn1.test.preria.2002@gmail.com>
# SPDX-FileCopyrightText: 2025 Solstice <solsticeofthewinter@gmail.com>
# SPDX-FileCopyrightText: 2025 Ted Lukin <66275205+pheenty@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Theodore Lukin <66275205+pheenty@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 pheenty <fedorlukin2006@gmail.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# Abductor's Crowbar
- type: entity
  parent: [ BaseCrowbar, BaseMajorContraband ]
  id: CrowbarAbductor
  name: high-tech crowbar
  description: Made out of metal more durable than anything Nanotrasen could dream of.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Abductor/crowbar.rsi
    state: abductor
  - type: Tool
    speedModifier: 2
    qualities:
      - Prying
    useSound:
      path: /Audio/Items/crowbar.ogg
  - type: GuideHelp
    guides:
    - Abductors

- type: entity
  name: high-tech wirecutter
  parent: [ BaseItem, BaseMajorContraband]
  id: WirecutterAbductor
  description: Cuts through wires like a hot knife through butter.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Abductor/wirecutters.rsi
    state: abductor
  - type: EmitSoundOnLand
    sound:
      path: /Audio/Items/wirecutter_drop.ogg
  - type: Tag
    tags:
    - PlantSampleTaker
    - Wirecutter
  - type: MeleeWeapon
    wideAnimationRotation: -90
    damage:
      types:
        Piercing: 2
    attackRate: 2
    soundHit:
      path: "/Audio/Items/wirecutter.ogg"
  - type: Tool
    qualities:
      - Cutting
    useSound:
      path: /Audio/Items/wirecutter.ogg
  - type: Item
    sprite: _Shitmed/Objects/Specific/Abductor/wirecutters.rsi
    storedRotation: -90
  - type: ToolTileCompatible
  - type: PhysicalComposition
    materialComposition:
      Steel: 100
  - type: StaticPrice
    price: 30
  - type: Retractor
    speed: 0.35
  - type: Hemostat
    speed: 0.6
  - type: SurgeryTool
    startSound:
      path: /Audio/Items/wirecutter.ogg
      params:
        variation: 0.125
    endSound:
      path: /Audio/Items/wirecutter.ogg
      params:
        variation: 0.125
  - type: GuideHelp
    guides:
    - Abductors

- type: entity
  name: high-tech screwdriver
  parent: [ BaseItem, BaseMajorContraband ]
  id: ScrewdriverAbductor
  description: More efficient than anything Nanotrasen could dream of. Not to be confused with a sonic screwdriver.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Abductor/screwdriver.rsi
    state: abductor
  - type: EmitSoundOnLand
    sound:
      path: /Audio/Items/screwdriver_drop.ogg
  - type: Tag
    tags:
    - Screwdriver
  - type: Item
    sprite: _Shitmed/Objects/Specific/Abductor/screwdriver.rsi
    storedRotation: -90
  - type: MeleeWeapon
    wideAnimationRotation: -90
    attackRate: 1
    damage:
      types:
        Piercing: 6
    soundHit:
      path: "/Audio/Weapons/bladeslice.ogg"
  - type: Tool
    qualities:
      - Screwing
    useSound:
      collection: Screwdriver
  - type: PhysicalComposition
    materialComposition:
      Steel: 100
  - type: StaticPrice
    price: 30
  - type: Retractor
    speed: 0.45
  - type: Tending
    speed: 0.65
  - type: SurgeryTool
    startSound:
      collection: Screwdriver
    endSound:
      path: /Audio/_Shitmed/Medical/Surgery/retractor2.ogg
  - type: GuideHelp
    guides:
    - Abductors

- type: entity
  name: high-tech wrench
  parent: [ Wrench, BaseMajorContraband ]
  id: WrenchAbductor
  description: Can take a bolt off in a single turn. Not intended for melee combat.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Abductor/wrench.rsi
    state: abductor
  - type: Item
    sprite: _Shitmed/Objects/Specific/Abductor/wrench.rsi
    storedRotation: 45
    heldPrefix: abductor
    storedSprite:
      sprite: _Shitmed/Objects/Specific/Abductor/wrench.rsi
      state: abductor
  - type: Tool
    speedModifier: 2
    qualities:
      - Anchoring
    useSound:
      path: /Audio/Items/ratchet.ogg
  - type: GuideHelp
    guides:
    - Abductors

- type: entity
  name: high-tech welding tool
  parent: [ Welder, BaseMajorContraband ]
  id: WelderAbductor
  description: "A highly advanced welder capable of producing infinite fuel."
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Abductor/welder.rsi
    state: abductor
  - type: SolutionContainerManager
    solutions:
      Welder:
        reagents:
        - ReagentId: WeldingFuel
          Quantity: 1000
        maxVol: 1000
  - type: PointLight
    enabled: false
    radius: 1.5
    color: lightblue
  - type: SolutionRegeneration
    solution: Welder
    generated:
      reagents:
      - ReagentId: WeldingFuel
        Quantity: 10
  - type: Tool
    speedModifier: 2.0
    useSound:
      collection: Welder
    qualities:
    - Welding
    - Axing # Goobstation
  - type: ToolTileCompatible # Goobstation
    delay: 2
  - type: GuideHelp
    guides:
    - Abductors

- type: entity
  name: high-tech multitool
  parent: [BaseItem, BaseMajorContraband]
  id: MultitoolAbductor
  description: A highly advanced hacking tool capable of viewing wire functionality. Can be used as Cryptographic sequencer in its alternate mode.
  components:
  - type: EmitSoundOnLand
    sound:
      path: /Audio/Items/multitool_drop.ogg
  - type: Item
    size: Small
    heldPrefix: link
  - type: PhysicalComposition
    materialComposition:
      Steel: 100
      Plastic: 100
  - type: StaticPrice
    price: 56
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Abductor/multitool.rsi
    state: abductor
    layers:
      - state: abductor
  - type: Clothing
    quickEquip: false
    equippedPrefix: link
    slots:
    - Belt
  - type: GuideHelp
    guides:
    - Abductors
  - type: UserInterface
    interfaces:
      enum.NetworkConfiguratorUiKey.List:
        type: NetworkConfiguratorBoundUserInterface
      enum.NetworkConfiguratorUiKey.Configure:
        type: NetworkConfiguratorBoundUserInterface
      enum.NetworkConfiguratorUiKey.Link:
        type: NetworkConfiguratorBoundUserInterface
  - type: Tag
    tags:
      - Multitool
      - DoorElectronicsConfigurator
      - ShowWires
  - type: Tool
    qualities:
      - Pulsing
  - type: NetworkConfigurator
    showLabel: false
  - type: LimitedCharges
  - type: AutoRecharge
    rechargeDuration: 20
  - type: ItemSwitch
    state: link
    states:
      link: !type:ItemSwitchState
        verb: link
        sprite:
          sprite: _Shitmed/Objects/Specific/Abductor/multitool.rsi
          state: abductor
        components:
          - type: Tool
            qualities:
              - Pulsing
          - type: NetworkConfigurator
            showLabel: false
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5

      hijack: !type:ItemSwitchState
        verb: hijack
        sprite:
          sprite: _Shitmed/Objects/Specific/Abductor/multitool.rsi
          state: override-abductor
        components:
        - type: Emag
          emagType: Access
          validTargets:
            components:
            - Airlock
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5
