# When adding new figurines, also add them to id: AllFigurinesTable

- type: entity
  abstract: true
  parent: BaseItem
  id: BaseFigurine
  name: figurine
  description: A small miniature.
  components:
  - type: Sprite
    sprite: Objects/Fun/figurines.rsi
  - type: PhysicalComposition
    materialComposition:
      Plastic: 100
  - type: StaticPrice
    price: 75
  - type: Tag
    tags:
    - Figurine
  - type: StealTarget
    stealGroup: Figurines
  - type: UseDelay
    delay: 5
  - type: UseDelayOnTrigger
  - type: UseDelayTriggerCondition # prevent spam
  - type: TriggerOnActivate
  - type: TriggerOnSignal
  - type: Speech
    speechSounds: Pai # it just sounds better
  - type: DeviceNetwork
    deviceNetId: Wireless
    receiveFrequencyId: BasicDevice
  - type: WirelessNetworkConnection
    range: 200
  - type: DeviceLinkSink
    ports:
    - Trigger

#HUMANOID FIGURINES

- type: entity
  parent: BaseFigurine
  id: ToyFigurineHeadOfPersonnel
  name: head of personnel figure
  description: A figurine depicting the glorious head of all personnel, away from their office as usual.
  components:
  - type: Sprite
    state: hop
  - type: SpeakOnTrigger
    pack: FigurinesHoP

- type: entity
  parent: BaseFigurine
  id: ToyFigurineAssistant
  name: assistant figure
  description: A figurine depicting an every day, run-of-the-mill assistant. No funny business here.
  components:
  - type: Sprite
    state: assistant
  - type: SpeakOnTrigger
    pack: FigurinesAssistant

- type: entity
  parent: BaseFigurine
  id: ToyFigurineClown
  name: clown figure
  description: A figurine depicting a clown. You shudder to think of what people have probably done to this figurine before.
  components:
  - type: Sprite
    state: clown
  - type: SpeakOnTrigger
    pack: FigurinesClown

- type: entity
  parent: BaseFigurine
  id: ToyFigurineHoloClown
  name: holoclown figure
  description: A figurine depicting a holoclown. Even more annoying than a clown and no less real.
  components:
  - type: Sprite
    state: holoclown
  - type: SpeakOnTrigger
    pack: FigurinesHoloClown

- type: entity
  parent: BaseFigurine
  id: ToyFigurineMime
  name: mime figure
  description: A figurine depicting that silent bastard you are all too familiar with.
  components:
  - type: Sprite
    state: mime
  - type: SpeakOnTrigger
    pack: FigurinesMime

- type: entity
  parent: BaseFigurine
  id: ToyFigurineMusician
  name: musician figure
  description: A figurine depicting a Musician, his music was electrifying.
  components:
  - type: Sprite
    state: musician
  - type: SpeakOnTrigger
    pack: FigurinesMusician

- type: entity
  parent: BaseFigurine
  id: ToyFigurineBoxer
  name: boxer figure
  description: A figurine depicting a Boxer holding their red gloves.
  components:
  - type: Sprite
    state: boxer
  - type: SpeakOnTrigger
    pack: FigurinesBoxer

- type: entity
  parent: BaseFigurine
  id: ToyFigurineCaptain
  name: captain figure
  description: A figurine depicting the standard outfit of a captain belonging to a civilian-sector Nanotrasen vessel.
  components:
  - type: Sprite
    state: captain
  - type: SpeakOnTrigger
    pack: FigurinesCaptain

- type: entity
  parent: BaseFigurine
  id: ToyFigurineHeadOfSecurity
  name: head of security figure
  description: A figurine depicting the glorious head of the Security department.
  components:
  - type: Sprite
    state: hos
  - type: SpeakOnTrigger
    pack: FigurinesHoS

- type: entity
  parent: BaseFigurine
  id: ToyFigurineWarden
  name: warden figure
  description: A figurine depicting a Warden, ready to jail someone at any moment.
  components:
  - type: Sprite
    state: warden
  - type: SpeakOnTrigger
    pack: FigurinesWarden

- type: entity
  parent: BaseFigurine
  id: ToyFigurineDetective
  name: detective figure
  description: A figurine depicting a Detective wearing their iconic trench coat.
  components:
  - type: Sprite
    state: detective
  - type: SpeakOnTrigger
    pack: FigurinesDetective

- type: entity
  parent: BaseFigurine
  id: ToyFigurineSecurity
  name: security officer figure
  description: A figurine depicting a Security Officer holding a stunbaton, ready to defend the station.
  components:
  - type: Sprite
    state: security
  - type: SpeakOnTrigger
    pack: FigurinesSecurity

- type: entity
  parent: BaseFigurine
  id: ToyFigurineLawyer
  name: lawyer figure
  description: A figurine depicting a Lawyer sporting a freshly tailored suit.
  components:
  - type: Sprite
    state: lawyer
  - type: SpeakOnTrigger
    pack: FigurinesLawyer

- type: entity
  parent: BaseFigurine
  id: ToyFigurineCargoTech
  name: cargo technican figure
  description: A figurine depicting a reptillian Cargo Technican.
  components:
  - type: Sprite
    state: cargotech
  - type: SpeakOnTrigger
    pack: FigurinesCargoTech

- type: entity
  parent: BaseFigurine
  id: ToyFigurineSalvage
  name: salvage specialist figure
  description: A figurine depicting a Salvage Specialist holding a survival knife.
  components:
  - type: Sprite
    state: salvage
  - type: SpeakOnTrigger
    pack: FigurinesSalvage

- type: entity
  parent: BaseFigurine
  id: ToyFigurineQuartermaster
  name: quartermaster figure
  description: A figurine depicting the glorious head of the Cargo department.
  components:
  - type: Sprite
    state: qm
  - type: SpeakOnTrigger
    pack: FigurinesQM

- type: entity
  parent: BaseFigurine
  id: ToyFigurineChiefEngineer
  name: chief engineer figure
  description: A figurine depicting the glorious head of the Engineering department.
  components:
  - type: Sprite
    state: ce
  - type: SpeakOnTrigger
    pack: FigurinesCE

- type: entity
  parent: BaseFigurine
  id: ToyFigurineEngineer
  name: station engineer figure
  description: A figurine depicting a Station Engineer holding a crowbar at-ready.
  components:
  - type: Sprite
    state: engineer
  - type: SpeakOnTrigger
    pack: FigurinesEngineer

- type: entity
  parent: BaseFigurine
  id: ToyFigurineAtmosTech
  name: atmospheric technician figure
  description: A figurine depicting an Atmos Tech holding an unlit welder.
  components:
  - type: Sprite
    state: atmos
  - type: SpeakOnTrigger
    pack: FigurinesAtmosTech

- type: entity
  parent: BaseFigurine
  id: ToyFigurineResearchDirector
  name: research director figure
  description: A figurine depicting the glorious head of the Science department.
  components:
  - type: Sprite
    state: rd
  - type: SpeakOnTrigger
    pack: FigurinesRD

- type: entity
  parent: BaseFigurine
  id: ToyFigurineScientist
  name: scientist figurine
  description: A figurine depicting a Scientist donning a labcoat.
  components:
  - type: Sprite
    state: scientist
  - type: SpeakOnTrigger
    pack: FigurinesScientist

- type: entity
  parent: BaseFigurine
  id: ToyFigurineChiefMedicalOfficer
  name: chief medical officer figure
  description: A figurine depicting the glorious head of the Medical department.
  components:
  - type: Sprite
    state: cmo
  - type: SpeakOnTrigger
    pack: FigurinesCMO

- type: entity
  parent: BaseFigurine
  id: ToyFigurineChemist
  name: chemist figure
  description: A figurine depicting a Chemist probably planning to make meth.
  components:
  - type: Sprite
    state: chemist
  - type: SpeakOnTrigger
    pack: FigurinesChemist

- type: entity
  parent: BaseFigurine
  id: ToyFigurineParamedic
  name: paramedic figure
  description: A figurine depicting a Paramedic wearing their void suit.
  components:
  - type: Sprite
    state: paramedic
  - type: SpeakOnTrigger
    pack: FigurinesParamedic

- type: entity
  parent: BaseFigurine
  id: ToyFigurineMedicalDoctor
  name: medical doctor figure
  description: A figurine depicting a Medical Doctor, donning a labcoat & syringe.
  components:
  - type: Sprite
    state: medical
  - type: SpeakOnTrigger
    pack: FigurinesDoctor

- type: entity
  parent: BaseFigurine
  id: ToyFigurineLibrarian
  name: librarian figure
  description: A figurine depicting the one-and-only librarian.
  components:
  - type: Sprite
    state: librarian
  - type: SpeakOnTrigger
    pack: FigurinesLibrarian

- type: entity
  parent: BaseFigurine
  id: ToyFigurineChaplain
  name: chaplain figure
  description: A figurine depicting a religious leader hopefully praying for good things. # Starlight
  components:
  - type: Sprite
    state: chaplain
  - type: SpeakOnTrigger
    pack: FigurinesChaplain

- type: entity
  parent: BaseFigurine
  id: ToyFigurineChef
  name: chef figure
  description: A figurine depicting a chef, master of the culinary arts! ...Most of the time. # Starlight
  components:
  - type: Sprite
    state: chef
  - type: SpeakOnTrigger
    pack: FigurinesChef

- type: entity
  parent: BaseFigurine
  id: ToyFigurineBartender
  name: bartender figure
  description: A figurine depicting a Bartender looking stylish with their rockin shades and tophat.
  components:
  - type: Sprite
    state: bartender
  - type: SpeakOnTrigger
    pack: FigurinesBartender

- type: entity
  parent: BaseFigurine
  id: ToyFigurineBotanist
  name: botanist figure
  description: A figurine depicting a Botanist that surely won't let kudzu get out of control.
  components:
  - type: Sprite
    state: botanist
  - type: SpeakOnTrigger
    pack: FigurinesBotanist

- type: entity
  parent: BaseFigurine
  id: ToyFigurineJanitor
  name: janitor figure
  description: A figurine depicting a Janitor with their galoshes.
  components:
  - type: Sprite
    state: janitor
  - type: SpeakOnTrigger
    pack: FigurinesJanitor

- type: entity
  parent: BaseFigurine
  id: ToyFigurineNukie
  name: syndicate operative figure
  description: A figurine depicting someone in a blood-red hardsuit, similar to what someone on a nuclear operative team might wear.
  components:
  - type: Sprite
    state: nukie
  - type: SpeakOnTrigger
    pack: FigurinesNukie

- type: entity
  parent: BaseFigurine
  id: ToyFigurineNukieElite
  name: elite syndicate operative figure
  description: A figurine depicting someone in an elite blood-red hardsuit, similar to what someone on a nuclear operative team might wear.
  components:
  - type: Sprite
    state: nukie_elite
  - type: SpeakOnTrigger
    pack: FigurinesNukieElite

- type: entity
  parent: BaseFigurine
  id: ToyFigurineNukieCommander
  name: syndicate operative commander figure
  description: A figurine depicting someone in a beefed-up blood-red hardsuit, similar to what the commander of a nuclear operative team might wear.
  components:
  - type: Sprite
    state: nukie_commander
  - type: SpeakOnTrigger
    pack: FigurinesNukieCommander

- type: entity
  parent: BaseFigurine
  id: ToyFigurineFootsoldier
  name: syndicate footsoldier figure
  description: A figurine depicting the outfit of a syndicate footsoldier.
  components:
  - type: Sprite
    state: footsoldier
  - type: SpeakOnTrigger
    pack: FigurinesFootsoldier

- type: entity
  parent: BaseFigurine
  id: ToyFigurineWizard
  name: wizard figure
  description: A figurine depicting someone with a long, silky beard wearing a wizard outfit. Warlocks wish they had anything on this.
  components:
  - type: Sprite
    state: wizard
  - type: SpeakOnTrigger
    pack: FigurinesWizard

- type: entity
  parent: BaseFigurine
  id: ToyFigurineWizardFake
  name: fake wizard figure
  description: A figurine depicting someone in a fake-ass wizard costume. What a ripoff!
  components:
  - type: Sprite
    state: wizard_fake
  - type: SpeakOnTrigger
    pack: FigurinesWizard

- type: entity
  parent: BaseFigurine
  id: ToyFigurineGriffin
  name: griffin figure
  description: A figurine depicting 'The Griffin', criminal mastermind.
  components:
  - type: Sprite
    state: griffin
  - type: SpeakOnTrigger
    pack: FigurinesGriffin

- type: entity
  parent: BaseFigurine
  id: ToyFigurineOwlman
  name: owlman figure
  description: A figurine depicting 'Owlman', the defender of justice.
  components:
  - type: Sprite
    state: owlman
  - type: SpeakOnTrigger
    pack: FigurinesOwlman

- type: entity
  parent: BaseFigurine
  id: ToyFigurineSkeleton
  name: skeleton figure
  description: A figurine depicting a spooky scary skeleton.
  components:
  - type: Sprite
    state: skeleton
  - type: SpeakOnTrigger
    pack: FigurinesSkeleton

- type: entity
  parent: BaseFigurine
  id: ToyFigurineThief
  name: thief figure
  description: A figurine depicting a kleptomaniac that hides in the shadows.
  components:
  - type: Sprite
    state: thief
  - type: SpeakOnTrigger
    pack: FigurinesThief

#Nonhuman Figurines

- type: entity
  parent: BaseFigurine
  id: ToyNuke
  name: nuke toy
  description: A plastic model of a Nuclear Fission Explosive. No uranium included... probably.
  components:
  - type: Sprite
    sprite: Objects/Fun/toy_nuke.rsi
    state: icon
  - type: Clothing
    quickEquip: false
    sprite: Objects/Fun/toy_nuke.rsi
    slots:
    - HEAD
    clothingVisuals:
      head:
      - state: equipped-HELMET
        offset: "0, 0.12"
  - type: Tag
    tags:
    - Figurine
    - Payload
  - type: UseDelay
    delay: 180.0
  - type: EmitSoundOnTrigger
    sound:
      path: /Audio/Machines/Nuke/nuke_alarm.ogg
      params:
        volume: -5
        maxDistance: 10

- type: entity
  parent: BaseFigurine
  id: ToyFigurineSpaceDragon
  name: space dragon figure
  description: A large figurine depicting a space dragon, its red eyes on gazing on its prey.
  components:
  - type: Sprite
    state: spacedragon
  - type: SpeakOnTrigger
    pack: FigurinesSpaceDragon

- type: entity
  parent: BaseFigurine
  id: ToyFigurineQueen
  name: xeno queen figure
  description: A large figurine depicting a xeno queen, ready to attack.
  components:
  - type: Sprite
    state: queen
  - type: SpeakOnTrigger
    pack: FigurinesQueen

- type: entity
  parent: BaseFigurine
  id: ToyFigurineRatKing
  name: rat king figure
  description: A large figurine depicting a rat king, prepared to make its nest.
  components:
  - type: Sprite
    state: ratking
  - type: SpeakOnTrigger
    pack: FigurinesRatKing

- type: entity
  parent: BaseFigurine
  id: ToyFigurineRatServant
  name: rat servant figure
  description: A figurine depicting a rat serving the king of rats!
  components:
  - type: Sprite
    state: ratservant
  - type: SpeakOnTrigger
    pack: FigurinesRatServant

- type: entity
  parent: BaseFigurine
  id: ToyFigurineMouse
  name: mouse figure
  description: A figurine depicting a mouse scuttling away to the nearest piece of food.
  components:
  - type: Sprite
    state: mouse
  - type: SpeakOnTrigger
    pack: FigurinesMouse

- type: entity
  parent: BaseFigurine
  id: ToyFigurineSlime
  name: slime figure
  description: A figurine depicting a translucent blue slime.
  components:
  - type: Sprite
    state: slime
  - type: SpeakOnTrigger
    pack: FigurinesSlime

- type: entity
  parent: BaseFigurine
  id: ToyFigurineHamlet
  name: hamlet figure
  description: A figurine depicting Hamlet, microwave not included.
  components:
  - type: Sprite
    state: hamlet
  - type: SpeakOnTrigger
    pack: FigurinesHamlet

- type: entity
  parent: BaseFigurine
  id: ToyAi
  name: AI toy
  description: A scaled-down toy AI core.
  components:
  - type: Sprite
    sprite: Objects/Fun/AI.rsi
    state: icon
  - type: Clothing
    quickEquip: false
    sprite: Objects/Fun/AI.rsi
    slots:
    - HEAD
    clothingVisuals:
      head:
      - state: equipped-HELMET
        offset: "0, 0.06"
  - type: SpeakOnTrigger
    pack: FigurinesAI
