extends AnimationPlayer class_name Skill @onready var view = (%View as View) @onready var status = (%Status as Status) func _ready(): pass func _process(delta): pass func cast_skill(cfg:SkillCfg,cast_dir:Vector2): var animation_name = "animation_library/%s" % Util.get_resource_name(cfg) if has_animation(animation_name): status.is_free_control = false status.is_skill_running = true status.skill_dir = cast_dir status.break_level = Enum.EBreakLevel.None play(animation_name) else: print("技能animation不存在",animation_name) func cancel_skill(): status.is_free_control = true status.is_skill_running = false status.break_level = Enum.EBreakLevel.Walk stop() view.reset() func _on_animation_finished(_anim_name): cancel_skill()