## SpellNode — 法术节点 Resource(可加载 .tres) ## 权威来源:architecture_design.md §3.2 extends Resource class_name SpellNode ## 法术节点类型枚举 ## 使用方式:SpellNode.SpellType.ACTION enum SpellType { ACTION = 0, # 发射弹道 MODIFIER = 1, # 修改 CastStats(S3 实现) TRIGGER = 2, # 命中触发 SubPayload(S3 实现) LOGIC = 3, # 条件指令(S5 实现) SCOPE_CLOSE = 4, # 虚拟节点:SCOPE 边界标记(预编译时注入) } ## 全局唤一法术 ID(格式建议: category_name) @export var id: String = "" @export var type: int = SpellType.ACTION @export var display_name: String = "" @export var description: String = "" ## 法术类型相关参数(不同类型内容不同) @export var meta: Dictionary = {} ## 元素亲和标签(供共鸣系统 §3.4.C 模式匹配,如 ["tag:water"]、["tag:lightning"]) @export var element_tags: Array = [] func _to_string() -> String: return "SpellNode(%s, type=%d)" % [id, type]