# Base

- type: entity
  parent: BaseItem
  id: BaseToolSurgery
  abstract: true
  components:
  - type: Sprite
  - type: StaticPrice
    price: 20
  - type: Tag
    tags:
    - SurgeryTool

# Cautery

- type: entity
  name: cautery
  id: Cautery
  parent: BaseToolSurgery
  description: A surgical tool used to cauterize open wounds.
  components:
  - type: Sprite
    sprite: Objects/Specific/Medical/Surgery/cautery.rsi
    state: cautery
  - type: Item
    sprite: Objects/Specific/Medical/Surgery/cautery.rsi
    storedRotation: 90
  - type: MeleeWeapon
    damage:
       types:
        Heat: 5
    soundHit:
      path: /Audio/Effects/lightburn.ogg

# Drill

- type: entity
  name: drill
  id: Drill
  parent: BaseToolSurgery
  description: A surgical drill for making holes into hard material.
  components:
  - type: Sprite
    sprite: Objects/Specific/Medical/Surgery/drill.rsi
    state: drill
  - type: Item
    sprite: Objects/Specific/Medical/Surgery/drill.rsi
    shape:
    - 0,0,1,0
    - 1,1,1,1
  - type: MeleeWeapon
    damage:
      types:
        Piercing: 10
    soundHit:
      path: /Audio/Items/drill_hit.ogg
  - type: StaticPrice
    price: 40

# Scalpel

- type: entity
  name: scalpel
  id: Scalpel
  parent: BaseToolSurgery
  description: A surgical tool used to make incisions into flesh.
  components:
  - type: Sharp
    butcherDelayModifier: 1.5 # Butchering with a scalpel, regardless of the type, will take 50% longer
  - type: Tool
    qualities:
    - Slicing
    speedModifier: 0.66 # pretend the sixes go on forever :)
  - type: Utensil
    types:
      - Knife
  - type: Sprite
    sprite: Objects/Specific/Medical/Surgery/scalpel.rsi
    state: scalpel
  - type: Item
    sprite: Objects/Specific/Medical/Surgery/scalpel.rsi
    storedRotation: 90
  - type: MeleeWeapon
    wideAnimationRotation: 90
    swingLeft: true
    attackRate: 1.5
    damage:
      types:
        Slash: 8
    soundHit:
      path: /Audio/Weapons/bladeslice.ogg

- type: entity
  name: shiv
  id: ScalpelShiv
  parent: Scalpel
  description: A pointy piece of glass, abraded to an edge and wrapped in tape for a handle. # Could become a decent tool or weapon with right tool mods.
  components:
  - type: Sprite
    state: shiv
  - type: Item
    heldPrefix: shiv
  - type: Fixtures
    fixtures:
      fix1:
        shape: !type:PhysShapeAabb
          bounds: "-0.375,-0.15,0.35,0.12"
        density: 20 # derived from base_item
        mask:
        - ItemMask
        restitution: 0.3
        friction: 0.2


- type: entity
  name: advanced scalpel
  id: ScalpelAdvanced
  parent: Scalpel
  description: Made of more expensive materials, sharper and generally more reliable.
  components:
  - type: Sprite
    state: advanced
  - type: Item
    heldPrefix: advanced
  - type: MeleeWeapon
    damage:
      types:
        Slash: 12

- type: entity
  name: laser scalpel
  id: ScalpelLaser
  parent: Scalpel
  description: A scalpel which uses a directed laser to slice instead of a blade, for more precise surgery while also cauterizing as it cuts.
  components:
  - type: Sprite
    state: laser
  - type: Item
    heldPrefix: laser

# Scissors

- type: entity
  name: retractor
  id: Retractor
  parent: BaseToolSurgery
  description: A surgical tool used to hold open incisions.
  components:
  - type: Sprite
    sprite: Objects/Specific/Medical/Surgery/scissors.rsi
    state: retractor
  - type: Item
    sprite: Objects/Specific/Medical/Surgery/scissors.rsi
    storedRotation: 90

- type: entity
  name: hemostat
  id: Hemostat
  parent: Retractor
  description: A surgical tool used to compress blood vessels to prevent bleeding.
  components:
  - type: Sprite
    state: hemostat
  - type: Item
    heldPrefix: hemostat
    storedRotation: 90

  # - type: entity
  #   name: bone setter
  #   id: BoneSetter
  #   parent: Retractor
  #   description: A surgical tool used for setting bones.
  #   components:
# Saws

- type: entity
  name: metal saw
  id: Saw
  parent: BaseToolSurgery
  description: For cutting wood and other objects to pieces. Or sawing bones, in case of emergency.
  components:
  - type: Sharp
  - type: Utensil
    types:
      - Knife
  - type: Sprite
    sprite: Objects/Specific/Medical/Surgery/saw.rsi
    state: saw
  - type: Item
    size: Normal
    sprite: Objects/Specific/Medical/Surgery/saw.rsi
    storedRotation: 90
  - type: Tool
    qualities:
      - Sawing
# No melee for regular saw because have you ever seen someone use a band saw as a weapon? It's dumb.

- type: entity
  name: choppa
  id: SawImprov
  parent: Saw
  description: A wicked serrated blade made of whatever nasty sharp things you could find. # It would make a pretty decent weapon, given there are more space for some tool mods too.
  components:
  - type: Sprite
    state: improv
  - type: Item
    size: Small
    heldPrefix: improv
  - type: MeleeWeapon
    damage:
      groups:
        Brute: 10
    soundHit:
      path: /Audio/Weapons/bladeslice.ogg
  - type: Tool
    speedModifier: 0.5

- type: entity
  name: circular saw
  id: SawElectric
  parent: Saw
  description: For heavy duty cutting.
  components:
  - type: Sprite
    state: electric
  - type: Item
    heldPrefix: electric
  - type: MeleeWeapon
    damage:
      groups:
        Brute: 15
    soundHit:
      path: /Audio/Items/drill_hit.ogg
  - type: Tool
    speedModifier: 1.5

- type: entity
  name: advanced circular saw
  id: SawAdvanced
  parent: [ SawElectric, BaseSyndicateContraband ]
  description: Interdyne's state-of-the-art surgical saw. Guaranteed to stay spotless and sterile, no matter how messy the job.
  components:
  - type: Sprite
    state: advanced
  - type: Item
    heldPrefix: advanced
  - type: MeleeWeapon
    attackRate: 1.5
  - type: Tool
    speedModifier: 2.0
