velho/godot/nodes/action.gd

26 lines
646 B
GDScript

@icon("res://icons/turn_action.svg")
class_name Action
extends Node
# Base class for actions
# Optional predicate for if the action is allowed
func predicate() -> bool:
return true
# Called when the action starts
func action_ready():
pass
# Called every frame, like _process
func action_process(_delta: float):
pass
# Must be emitted when an action is successful
@warning_ignore("unused_signal")
signal done()
# Must be emitted if something went wrong and the action can't be performed
# This could be called for example when an action was checked to be valid, but
# failed during execution
@warning_ignore("unused_signal")
signal abort()