- type: entity
  parent: BaseToolSurgery
  id: Bonesetter
  name: bone setter
  description: Used for setting bones back into place.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/bonesetter.rsi
    state: bonesetter
  - type: Item
  - type: BoneSetter
  - type: SurgeryTool
    startSound:
      path: /Audio/_Shitmed/Medical/Surgery/bone_setter.ogg

- type: entity
  parent: BaseToolSurgery
  id: BoneGel
  name: bottle of bone gel
  description: A container for bone gel that often needs to be refilled from a specialized machine.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/bone-gel.rsi
    state: bone-gel
  - type: BoneGel

- type: entity
  parent: BaseToolSurgery
  id: MedicalStitches
  name: medical stitches
  description: A fine, curved needle with a length of absorbable polyglycolide suture thread.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/stitches.rsi
    state: stitches
  - type: SurgeryTool
    startSound:
      path: /Audio/_Shitmed/Medical/Surgery/saw.ogg # TODO: SOUND
  - type: Stitches

- type: entity
  name: tissue cutter
  id: EnergyScalpel
  parent: Scalpel
  description: A scalpel which uses an energy blade, also serves as a drill in its powered state.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-scalpel.rsi
    state: e-scalpel-on
  - type: Item
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-scalpel.rsi
    heldPrefix: scalpel
  - type: SurgeryTool
    startSound:
      path: /Audio/_Shitmed/Medical/Surgery/scalpel1.ogg
    endSound:
      path: /Audio/_Shitmed/Medical/Surgery/scalpel2.ogg
  - type: MeleeWeapon
    damage:
      types:
        Slash: 12
  - type: PhysicalComposition #Goobstation - Recycle update
    materialComposition:
      Steel: 150
      Glass: 37
      Gold: 37
  - type: Scalpel
    speed: 3
  - type: BoneSaw
    speed: 3
  - type: ItemSwitch
    showLabel: true
    state: scalpel
    defaultState: scalpel
    states:
      scalpel: !type:ItemSwitchState
        verb: scalpel
        sprite:
          sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-scalpel.rsi
          state: e-scalpel
        components:
          - type: Scalpel
            speed: 3
          - type: BoneSaw
            speed: 3
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5

      drill: !type:ItemSwitchState
        verb: drill
        sprite:
          sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-scalpel.rsi
          state: e-scalpel-on
        components:
        - type: Drill
          speed: 3
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5

- type: entity
  name: power pinches
  id: AdvancedRetractor
  parent: Retractor
  description: A retractor with mechanical pinches, also serves as a hemostat in its powered state.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/adv-retractor.rsi
    state: adv-retractor-on
  - type: Item
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/adv-retractor.rsi
    heldPrefix: retractor
  - type: SurgeryTool
    startSound:
      path: /Audio/_Shitmed/Medical/Surgery/retractor1.ogg
    endSound:
      path: /Audio/_Shitmed/Medical/Surgery/retractor2.ogg
  - type: MeleeWeapon
    damage:
      types:
        Piercing: 12
  - type: PhysicalComposition #Goobstation - Recycle update
    materialComposition:
      Steel: 150
      Glass: 37
      Silver: 37
  - type: Retractor
    speed: 3
  - type: ItemSwitch
    showLabel: true
    state: retractor
    states:
      retractor: !type:ItemSwitchState
        verb: retractor
        sprite:
          sprite: _Shitmed/Objects/Specific/Medical/Surgery/adv-retractor.rsi
          state: adv-retractor
        components:
          - type: Retractor
            speed: 3
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5

      hemostat: !type:ItemSwitchState
        verb: hemostat
        sprite:
          sprite: _Shitmed/Objects/Specific/Medical/Surgery/adv-retractor.rsi
          state: adv-retractor-on
        components:
          - type: Hemostat
            speed: 3
          - type: Tweezers
            speed: 3
          - type: Tending
            speed: 3
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5

- type: entity
  name: energy stapler
  id: EnergyCautery
  parent: Cautery
  description: A cautery with an energy tip, also serves as stitches in its powered state.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-cautery.rsi
    state: e-cautery-on
  - type: Item
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-cautery.rsi
    heldPrefix: cautery
  - type: SurgeryTool
    startSound:
      path: /Audio/_Shitmed/Medical/Surgery/cautery1.ogg
    endSound:
      path: /Audio/_Shitmed/Medical/Surgery/cautery2.ogg
  - type: MeleeWeapon
    damage:
      types:
        Heat: 12
  - type: PhysicalComposition #Goobstation - Recycle update
    materialComposition:
      Steel: 150
      Glass: 37
      Plasma: 37
  - type: Cautery
    speed: 3
  - type: ItemSwitch
    showLabel: true
    state: cautery
    states:
      cautery: !type:ItemSwitchState
        verb: cautery
        sprite:
          sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-cautery.rsi
          state: e-cautery
        components:
        - type: Cautery
          speed: 3
        soundStateActivate:
          collection: WelderOn
          params:
            variation: 0.125
            volume: -5

      stitches: !type:ItemSwitchState
        verb: stitches
        sprite:
          sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-cautery.rsi
          state: e-cautery-on
        components:
        - type: Stitches # should be unlimited when the actual stitches become limited
          speed: 3
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5

- type: entity
  name: bone multitool
  id: AdvancedBoneGel
  parent: BoneGel
  description: A mechanized bone healer, also serves as bone setter in its powered state.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-bone-gel.rsi
    state: e-bone-gel-on
  - type: Item
    heldPrefix: bonegel
  - type: SurgeryTool
    startSound:
      path: /Audio/_Shitmed/Medical/Surgery/bone_setter.ogg
    endSound:
      path: /Audio/_Shitmed/Medical/Surgery/bone_setter.ogg
  - type: MeleeWeapon
    damage:
      types:
        Blunt: 12
  - type: PhysicalComposition #Goobstation - Recycle update
    materialComposition:
      Steel: 150
      Glass: 37
      Plasma: 37
  - type: BoneGel # should be unlimited when the actual bone gel becomes limited
    speed: 3
  - type: ItemSwitch
    showLabel: true
    state: bonegel
    states:
      bonegel: !type:ItemSwitchState
        verb: bone gel
        sprite:
          sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-bone-gel.rsi
          state: e-bone-gel
        components:
        - type: BoneGel # should be unlimited when the actual bone gel becomes limited
          speed: 3
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5

      bonesetter: !type:ItemSwitchState
        verb: bone setter
        sprite:
          sprite: _Shitmed/Objects/Specific/Medical/Surgery/e-bone-gel.rsi
          state: e-bone-gel-on
        components:
        - type: BoneSetter
          speed: 3
        soundStateActivate:
          collection: sparks
          params:
            variation: 0.125
            volume: -5

- type: entity
  name: surgical omnitool
  id: OmnimedTool
  parent: BaseToolSurgery
  description: A compact surgical omnitool conveniently packed like a Swiss Army knife.
  components:
  - type: Sprite
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/omnimed.rsi
    state: omnimed
  - type: Item
    size: Normal
    sprite: _Shitmed/Objects/Specific/Medical/Surgery/omnimed.rsi
  - type: SurgeryTool
    startSound:
      path: /Audio/_Shitmed/Medical/Surgery/saw.ogg
  - type: Hemostat
  - type: Scalpel
  - type: Drill
  - type: BoneSetter
  - type: Retractor
  - type: Cautery
  - type: BoneGel
  - type: BoneSaw
  - type: Tweezers
  - type: Tending
  - type: Stitches

- type: entity
  parent: [ OmnimedTool, BaseSyndicateContraband ]
  id: OmnimedToolSyndie
  name: gorlex surgical omnitool
  description: A compact surgical omnitool conveniently packed like a Swiss Army knife, except that its user has probably violated a couple of Swiss conventions. Can perform surgery through clothing.
  components:
  - type: Sprite
    state: evil
  - type: Item
    size: Small
    heldPrefix: evil
  - type: SurgeryIgnoreClothing

- type: entity
  id: OmnimedToolDebug
  parent: OmnimedToolSyndie
  suffix: Admeme
  name: experimental surgical omnitool
  components:
  - type: Hemostat
    speed: 10
  - type: Scalpel
    speed: 10
  - type: Drill
    speed: 10
  - type: BoneSetter
    speed: 10
  - type: Retractor
    speed: 10
  - type: Cautery
    speed: 10
  - type: BoneGel
    speed: 10
  - type: BoneSaw
    speed: 10
  - type: Tweezers
    speed: 10
  - type: Tending
    speed: 10
  - type: Stitches
    speed: 10
