# SPDX-FileCopyrightText: 2024 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2024 Armok <155400926+ARMOKS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aviu00 <93730715+Aviu00@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  parent: BaseAction
  id: ActionHereticJaunt
  name: Ashen Passage
  description: A short range spell that allows you to pass unimpeded through walls.
  categories: [ HideSpawnMenu ]
  components:
  - type: Action
    raiseOnUser: true
    checkCanInteract: false
    useDelay: 15
    itemIconStyle: NoItem
    icon:
      sprite: _Goobstation/Heretic/abilities_heretic.rsi
      state: ashen_shift
  - type: InstantAction
    event: !type:EventHereticAshenShift
  - type: HereticAction
    requireMagicItem: true
    messageLoc: heretic-speech-ash-jaunt

- type: entity
  parent: ActionHereticJaunt
  id: ActionHereticJauntLong
  name: Ashen Passage
  description: A long range spell that allows you to pass unimpeded through walls.
  categories: [ HideSpawnMenu ]
  components:
  - type: InstantAction
    event: !type:EventHereticAshenShift
      jaunt: AshJauntLong

- type: entity
  parent: BaseAction
  id: ActionHereticVolcanoBlast
  name: Volcano Blast
  description: Charge up a blast of fire that chains between nearby targets, setting them ablaze. Targets already on fire will take priority. If the target fails to catch ablaze, or extinguishes themselves before it bounces, the chain will stop.
  categories: [ HideSpawnMenu ]
  components:
  - type: Action
    raiseOnUser: true
    checkCanInteract: false
    useDelay: 45
    itemIconStyle: NoItem
    icon:
      sprite: _Goobstation/Heretic/abilities_heretic.rsi
      state: volcano_blast
  - type: InstantAction
    event: !type:EventHereticVolcanoBlast
  - type: HereticAction
    requireMagicItem: true
    messageLoc: heretic-speech-ash-volcano
  - type: ChangeUseDelayOnAscension
    newUseDelay: 30
    requiredPath: Ash

- type: entity
  parent: BaseAction
  id: ActionHereticNightwatcherRebirth
  name: Nightwatcher's Rebirth
  description: Drains nearby heathens engulfed in flames of their life force.
  categories: [ HideSpawnMenu ]
  components:
  - type: Action
    raiseOnUser: true
    checkCanInteract: false
    useDelay: 60
    itemIconStyle: NoItem
    icon:
      sprite: _Goobstation/Heretic/abilities_heretic.rsi
      state: nightwatcher_rebirth
  - type: InstantAction
    event: !type:EventHereticNightwatcherRebirth
  - type: HereticAction
    requireMagicItem: true
    messageLoc: heretic-speech-ash-rebirth
  - type: ChangeUseDelayOnAscension
    newUseDelay: 10
    requiredPath: Ash

- type: entity
  parent: BaseAction
  id: ActionHereticAscension1
  name: Oath of Flame
  description: Create a ring of fire around you.
  categories: [ HideSpawnMenu ]
  components:
  - type: Action
    raiseOnUser: true
    checkCanInteract: false
    useDelay: 90
    itemIconStyle: NoItem
    icon:
      sprite: _Goobstation/Heretic/abilities_heretic.rsi
      state: ashlord_rite1
  - type: InstantAction
    event: !type:EventHereticFlames
  - type: HereticAction
    requireMagicItem: true
    messageLoc: heretic-speech-ash-flame

- type: entity
  parent: BaseAction
  id: ActionHereticAscension2
  name: Fire Cascade
  description: Burn everything in a large distance.
  categories: [ HideSpawnMenu ]
  components:
  - type: Action
    raiseOnUser: true
    checkCanInteract: false
    useDelay: 30
    itemIconStyle: NoItem
    icon:
      sprite: _Goobstation/Heretic/abilities_heretic.rsi
      state: ashlord_rite2
  - type: InstantAction
    event: !type:EventHereticCascade
  - type: HereticAction
    requireMagicItem: true
    messageLoc: heretic-speech-ash-cascade
