Get 节点
读取单位、卡牌、状态、牌堆、变量、事件参数和实时战斗数据
Get 节点只提供数据,没有控制端口,也不会推进执行流程,把输出直接连接到 Action、Operator、Flow 或 FX 节点的数据输入Get 节点只提供数据,没有控制端口,也不会推进执行流程,把输出直接连接到 Action、Operator、Flow 或 FX 节点的数据输入
节点用法
Active Team
当分支或条件需要判断当前由哪一方行动时,使用 Active Team
输入
- —:无输入端口
输出
Team(String):玩家回合为Player,敌人回合为Enemy,没有进行中的战斗时为Unknown
参数
- 无
这个结果表示当前行动阵营,不表示流图拥有者或所选目标属于哪一方
Active Turn
需要按回合数成长、限定首回合或每隔若干回合触发时,使用 Active Turn
输入
- —:无输入端口
输出
Turn(Int):当前战斗回合数,战斗外为0
参数
- 无
Turn 是整场战斗的回合计数,不是某个单位的行动次数,也不能表示某个敌人已经行动了多少次
Active Unit
规则需要跟随当前回合所属阵营,而不是流图拥有者时,使用 Active Unit
输入
- —:无输入端口
输出
Unit(UnitRef):玩家回合返回玩家单位,敌人回合返回第一个存活敌人
参数
- 无
多敌人遭遇战中,Active Unit 不能表示当前正在执行行为的具体敌人,它只会返回第一个存活敌人,如果必须区分具体行动者,应读取入口上下文或使用明确连接的目标,没有可用单位时返回 null
Self Unit
需要读取或影响当前流图所属单位时,使用 Self Unit
输入
- —:无输入端口
输出
Unit(UnitRef):当前执行上下文中的流图拥有者
参数
- 无
Self Unit 始终跟随流图拥有者,不跟随当前行动阵营,执行上下文没有单位拥有者时返回 null
Opponent Unit
在简单的一对一行为中需要快速取得对方单位时,使用 Opponent Unit
输入
- —:无输入端口
输出
Unit(UnitRef):拥有者是玩家时返回第一个存活敌人,否则返回玩家单位
参数
- 无
这个节点不会读取卡牌选择的目标,多敌人遭遇战中,玩家流图始终得到第一个存活敌人,需要遵循实际选中目标时应使用明确目标或集合处理流程
Player Energy
需要判断玩家能否支付费用,或让效果随当前能量变化时,使用 Player Energy
输入
- —:无输入端口
输出
Current(Int):玩家当前可用能量PerTurn(Int):当前GamePlayerUnit的BaseEnergy,无法取得玩家定义时退回当前能量
参数
- 无
战斗外两个输出都为 0,PerTurn 读取玩家资产上的基础值,不等于经过 Hook 或局内加成后下一回合最终获得的能量
单位集合与状态读取
All Enemies
制作全体攻击、敌人筛选、随机选敌或 Foreach 循环时,使用 All Enemies
输入
- —:无输入端口
输出
Units(UnitCollection):包含所有存活敌人的新列表
参数
- 无
已被击败的敌人不会进入集合,没有存活敌人或没有进行中的战斗时返回空集合,不会返回 null
All Units
规则确实需要同时覆盖双方所有存活单位时,使用 All Units
输入
- —:无输入端口
输出
Units(UnitCollection):玩家单位在前,随后是所有存活敌人的新列表
参数
- 无
玩家已被击败时不会进入集合,如果效果不能影响友方,应直接使用 All Enemies
Unit Info
需要根据某个单位的实时属性做条件、筛选、意图逻辑或表现时,使用 Unit Info
输入
Unit(UnitRef):可选的暴露输入,连接后覆盖UnitSource
输出
Team(String):Player、Enemy或UnknownHP(Int):当前 HPMaxHP(Int):最大 HPHPPercent(Int):0到100的整数 HP 百分比Armor(Int):当前护甲Statuses(StatusCollection):单位当前持有的状态资产Intent(String):敌人当前意图标签,非敌人返回UnknownIntentAmount(Int):敌人当前意图数值,没有可显示数值时为-1Alive(Bool):单位存在且未死亡时为开启Attacked(Bool):本回合内是否受到过攻击Tier(String):敌人层级,其他单位为空文本Tags(String):单位定义上的标签列表
参数
UnitSource(Self):Self、Opponent、AllEnemies、AllUnits;Unit未连接时选择要读取的单位
这个节点只读取一个单位,因此 AllEnemies 和 AllUnits 只会取集合中的第一个对象,无法解析单位时,数值输出为 0,文本和集合使用空值或未知值,Alive 为关闭,当前编辑器把 Tags 端口声明为 String,运行时实际传递只读字符串列表

Unit Status Stacks
伤害、治疗、分支或状态消耗需要依赖某个状态的当前层数时,使用 Unit Status Stacks
输入
Unit(UnitRef):可选的暴露输入,连接后覆盖UnitSource
输出
Stacks(Int):所选状态在解析单位上的当前层数
参数
UnitSource(Self):Self、Opponent、AllEnemies、AllUnits;Unit未连接时选择要读取的单位Status(None):任意GameStatus资产;选择要统计的状态
这是单单位查询,集合来源只会提供第一个单位,单位或 Status 缺失,以及单位没有该状态时,Stacks 都为 0
Status Info
在状态流图里读取当前状态,或明确连接一个状态并读取它的类型、标签和拥有者层数时,使用 Status Info
输入
Status(StatusRef):可选的状态覆盖输入
输出
Stacks(Int):解析状态在流图拥有者身上的层数Type(String):Buff或Debuff,没有状态时为空文本Tags(String):解析状态定义上的标签列表
参数
Status(None):任意GameStatus资产;输入未连接时使用的后备状态
状态按已连接的 Status、字段里的 Status、执行上下文当前状态这个顺序解析,Stacks 始终查询流图拥有者,不会查询任意目标,缺少拥有者或状态时返回 0,当前编辑器把 Tags 端口声明为 String,运行时实际传递只读字符串列表
卡牌与牌堆
This Card
卡牌行为需要当前执行对应的那张运行时卡牌实例时,使用 This Card
输入
- —:无输入端口
输出
Card(CardRef):当前卡牌实例
参数
- 无
编辑器只允许在卡牌拥有的流图中添加这个节点,执行上下文没有当前卡牌实例时返回 null
Card Info
需要检查费用、判断卡牌类型或稀有度,以及制作标签和关键词联动时,使用 Card Info
输入
Card(CardRef):可选的暴露输入,连接后覆盖CardSource
输出
Cost(Int):运行时实例的有效能量费用,只有卡牌定义时返回资产基础费用Type(String):卡牌类型Rarity(String):卡牌稀有度Tags(String):卡牌标签列表Keywords(String):卡牌关键词列表
参数
CardSource(ThisCard):ThisCard、HandPile、DrawPile、DiscardPile、ExhaustPile、AllPiles;Card未连接时选择卡牌来源
Card Info 只读取一张卡,选择牌堆来源时会使用解析结果中的第一张卡,没有实例时,最后会尝试读取当前打出卡牌的定义,仍然缺少卡牌时返回 0、空文本和空列表,当前编辑器把 Tags 与 Keywords 端口声明为 String,运行时实际传递的都是只读字符串列表
Card Piles
需要把实时战斗牌堆交给 Filter、Count、Take、Move Cards 或其他集合节点时,使用 Card Piles
输入
- —:无输入端口
输出
Cards(CardCollection):Pile选择的卡牌集合
参数
Pile(Hand):Hand、Draw、Discard、Exhaust、Master、All;选择要读取的运行时牌堆或组合来源
Hand、Draw、Discard 和 Exhaust 返回实时战斗牌堆视图,All 按手牌、抽牌堆、弃牌堆、消耗牌堆的顺序创建集合,不包含 Master,Master 根据当前主卡组创建实例 ID 为 0 的临时卡牌,并保留每个条目的升级状态和费用差值,战斗外所有选项都返回空集合
Deck Cards
需要读取指定 GameDeck 资产,而不是玩家当前战斗牌堆时,使用 Deck Cards
输入
- —:无输入端口
输出
Cards(CardCollection):根据所选卡组条目创建的临时卡牌实例
参数
Deck(None):任意GameDeck资产;选择要读取的卡组定义
每个卡组条目至少生成一张卡,Copies 小于 1 时按 1 处理,节点创建实例 ID 为 0 的新卡牌,不读取也不修改实时战斗牌堆,缺少卡组或条目列表时返回空集合
Cards Played This Turn
制作连击计数或检查本回合出牌记录时,使用 Cards Played This Turn
输入
- —:无输入端口
输出
Cards(CardCollection):本回合打出的运行时卡牌实例,按出牌顺序排列
参数
- 无
这个记录会随回合重置,不是整场战斗的历史,战斗外返回空集合
Cards Drawn This Turn
制作抽牌次数奖励,或检查本回合有哪些卡牌进入过手牌时,使用 Cards Drawn This Turn
输入
- —:无输入端口
输出
Cards(CardCollection):本回合抽到的运行时卡牌实例,按抽牌顺序排列
参数
- 无
这是抽牌记录,不是当前手牌,卡牌即使已经离开手牌,也会留在这个集合中直到回合变化,战斗外返回空集合
变量与事件数据
Variable
当后续节点或另一个入口需要通过名称读取值,而不能直接连线时,配合 Set Variable 使用 Variable
输入
- —:无输入端口
输出
Result(Any):按所选Kind读取并转换后的命名值
参数
Name(空):与写入端一致的变量名;指定Set Variable写入的值Kind(Int):Int、Float、Bool、Unit、Card、Status;指定存储类型,以及缺失时返回的默认值类型BattleScope(关闭):关闭、开启;关闭时读取当前流图执行,开启时读取各入口共享的战斗级存储
名称和作用域必须与写入端一致,找不到值时返回所选类型的默认值,也就是 0、0.0、关闭或 null,执行级变量不会保留到另一个入口,只有确实需要跨入口共享时才开启 BattleScope
Event Arg
流图由内部事件或 GES 事件入口启动,并需要读取事件载荷里的某个命名值时,使用 Event Arg
输入
- —:无输入端口
输出
Result(Any):事件载荷中ArgName对应的值
参数
ArgName(空):事件提供的参数键;选择要读取的载荷值
参数名需要完全一致,流图不是由事件启动、事件没有这个键,或名称不匹配时返回 null