- type: entity
  abstract: true
  parent: [ SimpleSpaceMobBase, FlyingMobBase, MobCombat, BaseSlicingRefinable, BaseMobDestructible ]
  id: BaseMobBehonker
  name: behonker
  description: A floating demon aspect of the honkmother.
  components:
  - type: GhostRole
    allowMovement: true
    makeSentient: true
    name: ghost-role-information-behonker-name
    description: ghost-role-information-behonker-description
    rules: ghost-role-information-antagonist-rules
    mindRoles:
    - MindRoleGhostRoleSoloAntagonist
    raffle:
      settings: default
  - type: GhostTakeoverAvailable
  - type: HTN
    rootTask:
      task: SimpleRangedHostileCompound
  - type: BatteryAmmoProvider
    proto: RedLaser
    fireCost: 62.5
  - type: Battery
    maxCharge: 1000
    startingCharge: 1000
  - type: BatterySelfRecharger
    autoRechargeRate: 40
  - type: Gun
    fireRate: 0.75
    useKey: false
    selectedMode: SemiAuto
    availableModes:
    - SemiAuto
    soundGunshot: /Audio/Weapons/Guns/Gunshots/laser_clown.ogg
  - type: SpamEmitSound
    sound:
      collection: BikeHorn
  - type: NpcFactionMember
    factions:
    - SimpleHostile
  - type: Speech
    speechVerb: Cluwne
  - type: CombatMode
  - type: MobMover
  - type: InputMover
  - type: MovementSpeedModifier
    baseWalkSpeed: 3
    baseSprintSpeed: 5
    baseWeightlessModifier: 1.5
  - type: Sprite
    sprite: Mobs/Demons/behonker.rsi
    layers:
    - map: [ "enum.DamageStateVisualLayers.Base" ]
      state: alive
  - type: DamageStateVisuals
    states:
      Alive:
        Base: alive
      Dead:
        Base: dead
  - type: Physics
    bodyType: KinematicController
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeCircle
          radius: 0.40
        density: 100
        mask:
        - FlyingMobMask
        layer:
        - FlyingMobLayer
  - type: MobState
  - type: InnateTool
    tools:
    - id: WeaponBehonkerLaser
    - id: BikeHorn
  - type: UserInterface
    interfaces:
      enum.StrippingUiKey.Key:
        type: StrippableBoundUserInterface
  - type: MobThresholds
    thresholds:
      0: Alive
      500: Dead
  - type: Metabolizer
    solutionOnBody: false
    updateInterval: 0.25
    metabolizerTypes: [ Dragon ]
    stages: [ Digestion, Bloodstream ]
  - type: ToolRefinable
    refineResult:
    - id: MaterialBananium1
      amount: 2
    - id: WeaponBehonkerLaser
  - type: MeleeWeapon
    soundHit:
      path: /Audio/Weapons/Xeno/alien_claw_flesh3.ogg
    damage:
      types:
        Piercing: 10
        Slash: 10
  - type: Anomaly
    pulseSound:
      collection: BananiumHorn
      params:
        volume: 5
  - type: Input
    context: "human"
  - type: Bloodstream
    bloodReferenceSolution:
      reagents:
      - ReagentId: Laughter
        Quantity: 300

- type: entity
  parent: BaseMobBehonker
  id: MobBehonkerPyro
  suffix: Pyro
  components:
  - type: PyroclasticAnomaly
  - type: TempAffectingAnomaly
    tempChangePerSecond: 25
    hotspotExposeTemperature: 1000
  - type: GasProducerAnomaly
    releasedGas: 3
    releaseOnMaxSeverity: true
    spawnRadius: 0

- type: entity
  parent: BaseMobBehonker
  id: MobBehonkerElectrical
  suffix: Electrical
  components:
  - type: ElectricityAnomaly
  - type: Electrified

- type: entity
  parent: BaseMobBehonker
  id: MobBehonkerGrav
  suffix: Grav
  components:
  - type: GravityAnomaly

- type: entity
  parent: BaseMobBehonker
  id: MobBehonkerIce
  suffix: Ice
  components:
  - type: Anomaly
  - type: ExplosionAnomaly
    supercriticalExplosion: Cryo
    explosionTotalIntensity: 1000
    explosionDropoff: 1
    explosionMaxTileIntensity: 10
  - type: ProjectileAnomaly
    projectilePrototype: ProjectileIcicle
  - type: TempAffectingAnomaly
    tempChangePerSecond: -25
    hotspotExposeTemperature: -1000
  - type: GasProducerAnomaly
    releasedGas: 8 # Frezon. Please replace if there is a better way to specify this
    releaseOnMaxSeverity: true
    spawnRadius: 0
