Raise-Your-Wand/Scripts/animationBase.gd
nc5432 69008d0046 More animations
- Implemented firebolt animation
- Started on icy wind animation
- Added animation to health bars
- Improved the animation system more
- Cleaned up some code
2024-05-14 21:40:18 -04:00

39 lines
864 B
GDScript

class_name AnimationBase extends Node2D
signal animationFinished(spell: Spell)
@onready var animationPlayer: AnimationPlayer = $AnimationPlayer
@export var inverted: bool = false
@export var index: int = -1
@export var finalIndex: int = 0
@export var spell: Spell
var attackName: String = "attackSegment"
var inverseName: String = "attackInverse"
var targetProg: float
var finalProg: float
# Called when the node enters the scene tree for the first time.
func _ready():
if inverted:
attackName = inverseName
func castFailed() -> void:
die()
func setProgress(target: float, final: float = finalProg) -> void:
targetProg = target
finalProg = final
if (index > -1):
animationPlayer.queue(attackName + str(index))
index += 1
func animFinished(_s: String):
if (index == finalIndex):
animationFinished.emit(spell)
die()
func die():
queue_free()