# TODO: Add the other mess types
- type: entity
  id: PuddleBase
  abstract: true
  components:
  - type: SnapGrid
    offset: Center
  - type: Sprite
    drawdepth: FloorObjects
  - type: Solution
    caps: 1
  - type: Puddle
    spill_sound: /Audio/Effects/Fluids/splat.ogg
    recolor: true
  - type: LoopingSound
  - type: InteractionOutline
  - type: Clickable
  - type: Collidable
    shapes:
    - !type:PhysShapeAabb
      bounds: "-0.5,-0.5,0.5,0.5"
    hard: false

- type: entity
  name: puddle
  id: PuddleGeneric
  parent: PuddleSmear

- type: entity
  name: gibblets
  id: PuddleGibblet
  parent: PuddleBase
  description: Gross.
  components:
  - type: Sprite
    sprite: Fluids/gibblet.rsi # Placeholder
    state: gibblet-0
  - type: Icon
    sprite: Fluids/gibblet.rsi
    state: gibblet-0
  - type: Puddle
    variants: 5

- type: entity
  name: puddle
  id: PuddleSmear
  parent: PuddleBase
  description: A puddle of liquid.
  components:
  - type: Sprite
    sprite: Fluids/smear.rsi # Placeholder
    state: smear-0
  - type: Icon
    sprite: Fluids/smear.rsi
    state: smear-0
  - type: Puddle
    variants: 7

- type: entity
  name: puddle
  id: PuddleSplatter
  parent: PuddleBase
  description: A puddle of liquid.
  components:
  - type: Sprite
    sprite: Fluids/splatter.rsi # Placeholder
    state: splatter-0
  - type: Icon
    sprite: Fluids/splatter.rsi
    state: splatter-0
  - type: Puddle
    variants: 6

- type: entity
  name: vomit
  id: PuddleVomit
  parent: PuddleBase
  description: Gross.
  components:
  - type: Sprite
    sprite: Fluids/vomit.rsi
    state: vomit-0
  - type: Icon
    sprite: Fluids/vomit.rsi
    state: vomit-0
  - type: Puddle
    variants: 4
    recolor: false
    evaporate_threshold: -1

- type: entity
  name: toxins vomit
  id: PuddleVomitToxin
  parent: PuddleVomit
  description: You probably don't want to get too close to this.
  components:
  - type: Sprite
    sprite: Fluids/vomit_toxin.rsi
    state: vomit_toxin-0
  - type: Icon
    sprite: Fluids/vomit_toxin.rsi
    state: vomit_toxin-0
  - type: Puddle
    variants: 4
    recolor: false

- type: entity
  name: writing
  id: PuddleWriting
  parent: PuddleBase
  description: A bit of liquid.
  components:
  - type: Sprite
    sprite: Fluids/writing.rsi # Placeholder
    state: writing-0
  - type: Icon
    sprite: Fluids/writing.rsi
    state: writing-0
  - type: Puddle
    variants: 5
