- type: entity
  id: PartCyber
  parent: [BaseItem, BasePart]
  name: "cyber body part"
  abstract: true
  components:
  - type: Extractable
    juiceSolution:
      reagents:
      - ReagentId: Iron
        Quantity: 30

- type: entity
  id: LeftArmCyber
  name: "left cyber arm"
  parent: [PartCyber, BaseLeftArm]
  components:
    - type: BaseLayerId
      layer: CyberLArm
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_arm"
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyber
      node: start

- type: entity
  id: RightArmCyber
  name: "right cyber arm"
  parent: [PartCyber, BaseRightArm]
  components:
    - type: BaseLayerId
      layer: CyberRArm
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_arm"
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyber
      node: start

- type: entity
  id: LeftHandCyber
  name: "left cyber hand"
  parent: [PartCyber, BaseLeftHand]
  components:
    - type: BaseLayerId
      layer: CyberLHand
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_hand"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_hand"
    - type: Construction
      graph: ImplantSwitchHandCyber
      node: start

- type: entity
  id: RightHandCyber
  name: "right cyber hand"
  parent: [PartCyber, BaseRightHand]
  components:
    - type: BaseLayerId
      layer: CyberRHand
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_hand"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_hand"
    - type: Construction
      graph: ImplantSwitchHandCyber
      node: start

- type: entity
  id: LeftLegCyber
  name: "left cyber leg"
  parent: [PartCyber, BaseLeftLeg]
  components:
    - type: BaseLayerId
      layer: CyberLLeg
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_leg"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_leg"
    - type: MovementBodyPart
      sprintSpeed : 4.725 # +5%
      maxDensity: 111
    - type: WithAttachedBodyParts
      parts:
        left foot: LeftFootCyber
    - type: Construction
      graph: ImplantSwitchLegCyber
      node: start

- type: entity
  id: RightLegCyber
  name: "right cyber leg"
  parent: [PartCyber, BaseRightLeg]
  components:
    - type: BaseLayerId
      layer: CyberRLeg
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_leg"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_leg"
    - type: MovementBodyPart
      sprintSpeed : 4.725 # +5%
      maxDensity: 111
    - type: WithAttachedBodyParts
      parts:
        right foot: RightFootCyber
    - type: Construction
      graph: ImplantSwitchLegCyber
      node: start

- type: entity
  id: LeftFootCyber
  name: "left cyber foot"
  parent: [PartCyber, BaseLeftFoot]
  components:
    - type: BaseLayerId
      layer: CyberLFoot
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_foot"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_foot"
    - type: Construction
      graph: ImplantSwitchFootCyber
      node: start

- type: entity
  id: RightFootCyber
  name: "right cyber foot"
  parent: [PartCyber, BaseRightFoot]
  components:
    - type: BaseLayerId
      layer: "CyberRFoot"
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_foot"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_foot"
    - type: Construction
      graph: ImplantSwitchFootCyber
      node: start

#reaper
- type: entity
  id: LeftArmCyberReaper
  name: "left reaper arm"
  parent: [PartCyber, BaseLeftArm]
  components:
    - type: BaseLayerId
      layer: CyberLArmSilver
    - type: BaseLayerIdToggled
      layer: CyberLArmSilverReaper
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_silver_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_silver_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        path: /Audio/_Starlight/Medical/Cyber/deploy.ogg
      items:
        - ScalpelCyber
        - RetractorCyber
        # - CauteryCyber #Заменяет ScalpelCyber
        - SawCyber
        # - HemostatCyber
        - BoneGelSetterCyber #Заменяет BoneSetterCyberЭ
        - DrillCyber
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberReaper
      node: start

- type: entity
  id: RightArmCyberReaper
  name: "right reaper arm"
  parent: [PartCyber, BaseRightArm]
  components:
    - type: BaseLayerId
      layer: CyberRArmSilver
    - type: BaseLayerIdToggled
      layer: CyberRArmSilverReaper
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_silver_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_silver_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        path: /Audio/_Starlight/Medical/Cyber/deploy.ogg
      items:
        - ScalpelCyber
        - RetractorCyber
        # - CauteryCyber
        - SawCyber
        # - HemostatCyber
        - BoneGelSetterCyber
        - DrillCyber
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberReaper
      node: start


#Mechwright
- type: entity
  id: LeftArmCyberMechwright
  name: "left mechwright arm"
  parent: [PartCyber, BaseLeftArm]
  components:
    - type: BaseLayerId
      layer: CyberLArmSteel
    - type: BaseLayerIdToggled
      layer: CyberLArmSteelMechwright
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_steel_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_steel_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        path: /Audio/_Starlight/Medical/Cyber/deploy.ogg
      items:
        - WrenchCyber
        - ScrewdriverCyber
        - CrowbarCyber
        - WirecutterCyber
        - WelderCyber
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberMechwright
      node: start

- type: entity
  id: RightArmCyberMechwright
  name: "right mechwright arm"
  parent: [PartCyber, BaseRightArm]
  components:
    - type: BaseLayerId
      layer: CyberRArmSteel
    - type: BaseLayerIdToggled
      layer: CyberRArmSteelMechwright
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_steel_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_steel_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        path: /Audio/_Starlight/Medical/Cyber/deploy.ogg
      items:
        - WrenchCyber
        - ScrewdriverCyber
        - CrowbarCyber
        - WirecutterCyber
        - WelderCyber
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberMechwright
      node: start

#Bulwark
- type: entity
  id: LeftArmCyberBulwark
  name: "left bulwark arm"
  parent: [PartCyber, BaseLeftArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberLArmBulwark
    - type: BaseLayerIdToggled
      layer: CyberLArmBulwarkToggled
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_bulwark_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_bulwark_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        path: /Audio/_Starlight/Medical/Cyber/deploy.ogg
      items:
        - EnergyShieldCyber
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberBulwark
      node: start

- type: entity
  id: RightArmCyberBulwark
  name: "right bulwark arm"
  parent: [PartCyber, BaseRightArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberRArmBulwark
    - type: BaseLayerIdToggled
      layer: CyberRArmBulwarkToggled
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_bulwark_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_bulwark_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        path: /Audio/_Starlight/Medical/Cyber/deploy.ogg
      items:
        - EnergyShieldCyber
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberBulwark
      node: start

#Bonesaw
- type: entity
  id: LeftArmCyberBonesaw
  name: "left Bonesaw arm"
  parent: [PartCyber, BaseLeftArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberLArmBonesaw
    - type: BaseLayerIdToggled
      layer: CyberLArmBonesawToggled
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_bulwark_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_bulwark_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        path: /Audio/_Starlight/Medical/Cyber/deploy.ogg
      items:
        - CyberEnergyChainsword
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberBulwark
      node: start

- type: entity
  id: RightArmCyberBonesaw
  name: "right Bonesaw arm"
  parent: [PartCyber, BaseRightArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberRArmBonesaw
    - type: BaseLayerIdToggled
      layer: CyberRArmBonesawToggled
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_bulwark_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_bulwark_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        path: /Audio/_Starlight/Medical/Cyber/deploy.ogg
      items:
        - CyberEnergyChainsword
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberBulwark
      node: start

#Mantis Blade
- type: entity
  id: LeftArmCyberMantisBlade
  name: "left mantis blade arm"
  parent: [PartCyber, BaseLeftArm, BaseSyndicateContraband]
  components:
    - type: BaseLayerId
      layer: CyberLArmMantisBlade
    - type: BaseLayerIdToggled
      layer: CyberLArmMantisBladeToggled
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_mantis_blade_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_mantis_blade_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        path: /Audio/Effects/metal_scrape1.ogg
      items:
        - CyberMantisBlade
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber

- type: entity
  id: RightArmCyberMantisBlade
  name: "right mantis blade arm"
  parent: [PartCyber, BaseRightArm, BaseSyndicateContraband]
  components:
    - type: BaseLayerId
      layer: CyberRArmMantisBlade
    - type: BaseLayerIdToggled
      layer: CyberRArmMantisBladeToggled
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_mantis_blade_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_mantis_blade_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        path: /Audio/Effects/metal_scrape1.ogg
      items:
        - CyberMantisBlade
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber

#Max-Guard Mantis Blade
- type: entity
  id: LeftArmCyberMantisBladeMaxGuard
  name: "left Max-Guard blade arm"
  parent: [PartCyber, BaseLeftArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberLArmMantisBladeSec
    - type: BaseLayerIdToggled
      layer: CyberLArmMantisBladeToggledSec
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_mantissec_blade_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_mantissec_blade_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        path: /Audio/Effects/metal_scrape1.ogg
      items:
        - CyberMantisBladeMaxGuard
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: ImplantSwitchMantisMaxGuard
      node: start

- type: entity
  id: RightArmCyberMantisBladeMaxGuard
  name: "right Max-Guard blade arm"
  parent: [PartCyber, BaseRightArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberRArmMantisBladeSec
    - type: BaseLayerIdToggled
      layer: CyberRArmMantisBladeToggledSec
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_mantissec_blade_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_mantissec_blade_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        path: /Audio/Effects/metal_scrape1.ogg
      items:
        - CyberMantisBladeMaxGuard
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: ImplantSwitchMantisMaxGuard
      node: start

#Gorilla Arms
- type: entity
  id: LeftArmCyberGorilla
  name: "left G.O.R.I.L.L.A. arm"
  parent: [PartCyber, BaseLeftArm, BaseScienceContraband]
  components:
    - type: BaseLayerId
      layer: CyberLArmGorilla
    - type: BaseLayerIdToggled
      layer: CyberLArmGorillaToggled
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_sci_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_sci_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        path: /Audio/Effects/metal_scrape1.ogg
      items:
        - WeaponGauntletGorilla
        - CyberPistolCHIMP
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: UpgradeCyberArmGorillaL
      node: start

- type: entity
  id: RightArmCyberGorilla
  name: "right G.O.R.I.L.L.A. arm"
  parent: [PartCyber, BaseRightArm, BaseScienceContraband]
  components:
    - type: BaseLayerId
      layer: CyberRArmGorilla
    - type: BaseLayerIdToggled
      layer: CyberRArmGorillaToggled
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_sci_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_sci_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        path: /Audio/Effects/metal_scrape1.ogg
      items:
        - WeaponGauntletGorilla
        - CyberPistolCHIMP
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: UpgradeCyberArmGorillaR
      node: start

# Upgraded G.O.R.I.L.L.A. Arm
#Gorilla Arms
- type: entity
  id: LeftArmCyberGorillaUpgraded
  name: "left G.O.R.I.L.L.A. arm"
  parent: LeftArmCyberGorilla
  components:
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        path: /Audio/Effects/metal_scrape1.ogg
      items:
        - CyberGorillaArm
        - CyberPistolCHIMPUpgraded

- type: entity
  id: RightArmCyberGorillaUpgraded
  name: "right G.O.R.I.L.L.A. arm"
  parent: RightArmCyberGorilla
  components:
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        path: /Audio/Effects/metal_scrape1.ogg
      items:
        - CyberGorillaArm
        - CyberPistolCHIMPUpgraded

#Laser pulser Arms
- type: entity
  id: LeftArmCyberLaserEmitter
  name: "left bulwark emitter arm"
  parent: [PartCyber, BaseLeftArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberLArmBulwark
    - type: BaseLayerIdToggled
      layer: CyberLArmBulwarkToggledEmitter
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_bulwark_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_bulwark_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        collection: LasersPickUp
      items:
        - CyberLaserEmitter
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberLaserEmitter
      node: start

- type: entity
  id: RightArmCyberLaserEmitter
  name: "right bulwark emitter arm"
  parent: [PartCyber, BaseRightArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberRArmBulwark
    - type: BaseLayerIdToggled
      layer: CyberRArmBulwarkToggledEmitter
    - type: Sprite
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_bulwark_arm"
    - type: Icon
      sprite: _Starlight/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_bulwark_arm"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        collection: LasersPickUp
      items:
        - CyberLaserEmitter
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberLaserEmitter
      node: start

#Grenade Thrower Arms
- type: entity
  id: LeftArmCyberGrenadeThrower
  name: "left hephaestus thrower arm"
  parent: [PartCyber, BaseLeftArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberLArmHephaestus
    - type: BaseLayerIdToggled
      layer: CyberLArmHephaestusThrowerToggled
    - type: Sprite
      sprite: _Sunrise/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_hephaestus_titan"
    - type: Icon
      sprite: _Sunrise/Mobs/Species/Cyberlimbs/parts.rsi
      state: "l_hephaestus_titan"
    - type: LimbWithItems
      action: ActionToggleCyberHandLeft
      sound:
        collection: LasersPickUp
      items:
        - CyberGrenadeThrower
    - type: WithAttachedBodyParts
      parts:
        left hand: LeftHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberGrenadeThrower
      node: start

- type: entity
  id: RightArmCyberGrenadeThrower
  name: "right hephaestus thrower arm"
  parent: [PartCyber, BaseRightArm, BaseSecurityContraband]
  components:
    - type: BaseLayerId
      layer: CyberRArmHephaestus
    - type: BaseLayerIdToggled
      layer: CyberRArmHephaestusThrowerToggled
    - type: Sprite
      sprite: _Sunrise/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_hephaestus_titan"
    - type: Icon
      sprite: _Sunrise/Mobs/Species/Cyberlimbs/parts.rsi
      state: "r_hephaestus_titan"
    - type: LimbWithItems
      action: ActionToggleCyberHandRight
      sound:
        collection: LasersPickUp
      items:
        - CyberGrenadeThrower
    - type: WithAttachedBodyParts
      parts:
        right hand: RightHandCyber
    - type: Construction
      graph: ImplantSwitchArmCyberGrenadeThrower
      node: start
