 - type: entity
   name: baseinstrument
   id: BaseInstrument
   abstract: true
   components:
   - type: Instrument
     handheld: false

   - type: Clickable
   - type: InteractionOutline

   - type: Collidable
     shapes:
     - !type:PhysShapeAabb
       layer: [MobMask, Impassable]

   - type: SnapGrid
     offset: Center

   - type: Damageable
   - type: Destructible
     thresholdvalue: 50

   - type: UserInterface
     interfaces:
     - key: enum.InstrumentUiKey.Key
       type: InstrumentBoundUserInterface

 - type: entity
   name: piano
   parent: BaseInstrument
   id: PianoInstrument
   description: Play Needles Piano Now.
   components:
   - type: Instrument
     program: 1
   - type: Sprite
     sprite: Objects/Instruments/otherinstruments.rsi
     state: piano
   - type: Icon
     sprite: Objects/Instruments/otherinstruments.rsi
     state: piano

 - type: entity
   name: minimoog
   parent: BaseInstrument
   id: MinimoogInstrument
   components:
   - type: Instrument
     program: 81
   - type: Sprite
     sprite: Objects/Instruments/otherinstruments.rsi
     state: minimoog
   - type: Icon
     sprite: Objects/Instruments/otherinstruments.rsi
     state: minimoog

 - type: entity
   name: xylophone
   parent: BaseInstrument
   id: XylophoneInstrument
   components:
   - type: Instrument
     program: 13
   - type: Sprite
     sprite: Objects/Instruments/otherinstruments.rsi
     state: xylophone
   - type: Icon
     sprite: Objects/Instruments/otherinstruments.rsi
     state: xylophone
