跳转至

GFActionInterceptionResult

API Reference / Action Queue / 类索引

  • 路径:addons/gf/extensions/action_queue/core/gf_action_interception_result.gd
  • 模块:Action Queue
  • 继承:RefCounted
  • API:public
  • 类别:值对象 (value_object)
  • 首次版本:3.17.0

动作队列拦截器的处理结果。 用于在动作执行前后表达继续、跳过、替换或停止队列等通用决策。

成员概览

类型 名称 签名
枚举 Decision enum Decision
属性 decision var decision: Decision = Decision.CONTINUE
属性 replacement_action var replacement_action: Object = null
属性 metadata var metadata: Dictionary = {}
方法 is_continue func is_continue() -> bool:
方法 is_skip func is_skip() -> bool:
方法 is_replace func is_replace() -> bool:
方法 is_stop_queue func is_stop_queue() -> bool:
方法 continue_action static func continue_action(p_metadata: Dictionary = {}) -> GFActionInterceptionResult:
方法 skip_action static func skip_action(p_metadata: Dictionary = {}) -> GFActionInterceptionResult:
方法 replace_with static func replace_with( action: Object, p_metadata: Dictionary = {} ) -> GFActionInterceptionResult:
方法 stop_queue static func stop_queue(p_metadata: Dictionary = {}) -> GFActionInterceptionResult:

枚举

Decision

  • API:public
enum Decision { ## 继续当前动作。 CONTINUE, ## 跳过当前动作并继续后续队列。 SKIP, ## 用 replacement_action 替换当前动作。 REPLACE, ## 停止并清空当前队列。 STOP_QUEUE, }

拦截器决策类型。

属性

decision

  • API:public
var decision: Decision = Decision.CONTINUE

当前决策。

replacement_action

  • API:public
var replacement_action: Object = null

替换动作,仅在 decision 为 REPLACE 时使用。

metadata

  • API:public
var metadata: Dictionary = {}

调用方自定义元数据。

结构:

  • metadata: Dictionary,由项目或拦截器定义的附加诊断数据。

方法

is_continue

  • API:public
func is_continue() -> bool:

判断结果是否表示继续当前动作。

返回:继续时返回 true。

is_skip

  • API:public
func is_skip() -> bool:

判断结果是否表示跳过当前动作。

返回:跳过时返回 true。

is_replace

  • API:public
func is_replace() -> bool:

判断结果是否表示替换当前动作。

返回:替换时返回 true。

is_stop_queue

  • API:public
func is_stop_queue() -> bool:

判断结果是否表示停止队列。

返回:停止时返回 true。

continue_action

  • API:public
static func continue_action(p_metadata: Dictionary = {}) -> GFActionInterceptionResult:

创建继续结果。

参数:

名称 说明
p_metadata 可选元数据。

返回:继续结果。

结构:

  • p_metadata: Dictionary,由项目或拦截器定义的附加诊断数据。

skip_action

  • API:public
static func skip_action(p_metadata: Dictionary = {}) -> GFActionInterceptionResult:

创建跳过结果。

参数:

名称 说明
p_metadata 可选元数据。

返回:跳过结果。

结构:

  • p_metadata: Dictionary,由项目或拦截器定义的附加诊断数据。

replace_with

  • API:public
static func replace_with( action: Object, p_metadata: Dictionary = {} ) -> GFActionInterceptionResult:

创建替换结果。

参数:

名称 说明
action 替换动作。
p_metadata 可选元数据。

返回:替换结果。

结构:

  • p_metadata: Dictionary,由项目或拦截器定义的附加诊断数据。

stop_queue

  • API:public
static func stop_queue(p_metadata: Dictionary = {}) -> GFActionInterceptionResult:

创建停止队列结果。

参数:

名称 说明
p_metadata 可选元数据。

返回:停止队列结果。

结构:

  • p_metadata: Dictionary,由项目或拦截器定义的附加诊断数据。