# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Armok <155400926+ARMOKS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aviu00 <93730715+Aviu00@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  abstract: true
  parent: BasePartInorganic
  id: CyberneticPartBase
  components:
  - type: Sprite
    sprite: _EinsteinEngines/Mobs/Species/Cybernetics/bishop/bishop_main.rsi
  - type: Icon
    sprite: _EinsteinEngines/Mobs/Species/Cybernetics/bishop/bishop_main.rsi
  - type: Damageable
    damageContainer: Silicon
  - type: Cybernetics
  - type: Nerve
    painMultiplier: 1.5
  - type: Woundable
    canBleed: false

- type: entity
  parent: [ CyberneticPartBase, BaseLeftArm ]
  id: LeftArmCybernetic
  name: cybernetic left arm
  components:
  - type: Sprite
    state: "l_arm-combined"
  - type: Icon
    state: "l_arm-combined"
  - type: BodyPart
    baseLayerId: MobCyberneticBishopLArm
  - type: WoundableVisuals
    thresholds: [ 10, 20, 30, 50, 70, 100 ]
    occupiedLayer: LArm
    damageOverlayGroups:
      Brute:
        sprite: _Shitmed/Mobs/Effects/brute_damage.rsi
        color: "#DD8822"
      Burn:
        sprite: _Shitmed/Mobs/Effects/burn_damage.rsi
    bleedingOverlay: null

- type: entity
  parent: [ CyberneticPartBase, BaseRightArm ]
  id: RightArmCybernetic
  name: cybernetic right arm
  components:
  - type: Sprite
    state: "r_arm-combined"
  - type: Icon
    state: "r_arm-combined"
  - type: BodyPart
    baseLayerId: MobCyberneticBishopRArm
  - type: WoundableVisuals
    thresholds: [ 10, 20, 30, 50, 70, 100 ]
    occupiedLayer: RArm
    damageOverlayGroups:
      Brute:
        sprite: _Shitmed/Mobs/Effects/brute_damage.rsi
        color: "#DD8822"
      Burn:
        sprite: _Shitmed/Mobs/Effects/burn_damage.rsi
    bleedingOverlay: null

- type: entity
  parent: [ CyberneticPartBase, BaseLeftLeg ]
  id: LeftLegCybernetic
  name: cybernetic left leg
  components:
  - type: Sprite
    state: "l_leg-combined"
  - type: Icon
    state: "l_leg-combined"
  - type: BodyPart
    baseLayerId: MobCyberneticBishopLLeg
  - type: WoundableVisuals
    thresholds: [ 10, 20, 30, 50, 70, 100 ]
    occupiedLayer: LLeg
    damageOverlayGroups:
      Brute:
        sprite: _Shitmed/Mobs/Effects/brute_damage.rsi
        color: "#DD8822"
      Burn:
        sprite: _Shitmed/Mobs/Effects/burn_damage.rsi
    bleedingOverlay: null

- type: entity
  parent: [ CyberneticPartBase, BaseRightLeg ]
  id: RightLegCybernetic
  name: cybernetic right leg
  components:
  - type: Sprite
    state: "r_leg-combined"
  - type: Icon
    state: "r_leg-combined"
  - type: BodyPart
    baseLayerId: MobCyberneticBishopRLeg
  - type: WoundableVisuals
    thresholds: [ 10, 20, 30, 50, 70, 100 ]
    occupiedLayer: RLeg
    damageOverlayGroups:
      Brute:
        sprite: _Shitmed/Mobs/Effects/brute_damage.rsi
        color: "#DD8822"
      Burn:
        sprite: _Shitmed/Mobs/Effects/burn_damage.rsi
    bleedingOverlay: null

- type: entity
  parent: [ CyberneticPartBase, BaseLeftHand ]
  id: LeftHandCybernetic
  name: cybernetic left hand
  components:
  - type: BodyPart
    baseLayerId: MobCyberneticBishopLHand
  - type: WoundableVisuals
    thresholds: [ 10, 20, 30, 50, 70, 100 ]
    occupiedLayer: LHand
    damageOverlayGroups:
      Brute:
        sprite: _Shitmed/Mobs/Effects/brute_damage.rsi
        color: "#DD8822"
      Burn:
        sprite: _Shitmed/Mobs/Effects/burn_damage.rsi
    bleedingOverlay: null

- type: entity
  parent: [ CyberneticPartBase, BaseRightHand ]
  id: RightHandCybernetic
  name: cybernetic right hand
  components:
  - type: BodyPart
    baseLayerId: MobCyberneticBishopRHand
  - type: WoundableVisuals
    thresholds: [ 10, 20, 30, 50, 70, 100 ]
    occupiedLayer: RHand
    damageOverlayGroups:
      Brute:
        sprite: _Shitmed/Mobs/Effects/brute_damage.rsi
        color: "#DD8822"
      Burn:
        sprite: _Shitmed/Mobs/Effects/burn_damage.rsi
    bleedingOverlay: null

- type: entity
  parent: [ CyberneticPartBase, BaseLeftFoot ]
  id: LeftFootCybernetic
  name: cybernetic left foot
  components:
  - type: BodyPart
    baseLayerId: MobCyberneticBishopLFoot
  - type: WoundableVisuals
    thresholds: [ 10, 20, 30, 50, 70, 100 ]
    occupiedLayer: LFoot
    damageOverlayGroups:
      Brute:
        sprite: _Shitmed/Mobs/Effects/brute_damage.rsi
        color: "#DD8822"
      Burn:
        sprite: _Shitmed/Mobs/Effects/burn_damage.rsi
    bleedingOverlay: null

- type: entity
  parent: [ CyberneticPartBase, BaseRightFoot ]
  id: RightFootCybernetic
  name: cybernetic right foot
  components:
  - type: BodyPart
    baseLayerId: MobCyberneticBishopRFoot
  - type: WoundableVisuals
    thresholds: [ 10, 20, 30, 50, 70, 100 ]
    occupiedLayer: RFoot
    damageOverlayGroups:
      Brute:
        sprite: _Shitmed/Mobs/Effects/brute_damage.rsi
        color: "#DD8822"
      Burn:
        sprite: _Shitmed/Mobs/Effects/burn_damage.rsi
    bleedingOverlay: null

- type: entity
  parent: LeftArmCybernetic
  id: JawsOfLifeLeftArm
  name: J.W.L left arm
  description: A cybernetic left arm with the ability to pry doors open.
  components:
  - type: BodyPart
    onAdd:
    - type: Prying
      speedModifier: 1.5
      pryPowered: true
    - type: UseDelay # For insta prying
      delay: 1

- type: entity
  parent: RightArmCybernetic
  id: JawsOfLifeRightArm
  name: J.W.L right arm
  description: A cybernetic right arm with the ability to pry doors open.
  components:
  - type: BodyPart
    onAdd:
    - type: Prying
      speedModifier: 1.5
      pryPowered: true
    - type: UseDelay # For insta prying
      delay: 1

- type: entity
  parent: LeftLegCybernetic
  id: SpeedLeftLeg
  name: S.P.E.E.D left leg
  description: A cybernetic left leg that allows its wearer to run faster.
  components:
  - type: MovementBodyPart
    walkSpeed: 3.125
    sprintSpeed: 5.175

- type: entity
  parent: RightLegCybernetic
  id: SpeedRightLeg
  name: S.P.E.E.D right leg
  description: A cybernetic left leg that allows its wearer to run faster.
  components:
  - type: MovementBodyPart
    walkSpeed: 3.125
    sprintSpeed: 5.175

- type: entity
  id: DexLeftHand
  parent: LeftHandCybernetic
  name: D.E.X left hand
  description: A cybernetic left hand that allows its wearer to interact faster.
  components:
  - type: DoAfterDelayMultiplier
    multiplier: 0.9

- type: entity
  id: DexRightHand
  parent: RightHandCybernetic
  name: D.E.X right hand
  description: A cybernetic right hand that allows its wearer to interact faster.
  components:
  - type: DoAfterDelayMultiplier
    multiplier: 0.9
