extends Node2D @export var state_root : LimboHSM @export var draw_offset : Vector2 @export var font : Font = ThemeDB.fallback_font func _draw() -> void: if state_root: draw_string(font,draw_offset,_get_deepest_substate(state_root).name) func _process(delta: float) -> void: queue_redraw() func _get_deepest_substate(state : LimboState) -> LimboState: var active_substate : LimboState = null # 如果这个状态有 get_active_state() 方法,就调用 if state.has_method("get_active_state"): active_substate = state.get_active_state() # 如果没有子状态,返回自己 if active_substate == null: return state # 如果有子状态,继续递归 return _get_deepest_substate(active_substate)