Skip to content
写作:待补充更新:2026-05-16字数:—阅读:—维护:Azek431

创游世界触发时机速查卡

一句话摘要

创游世界触发时机的一问一答速查表,快速查阅各触发时机的触发条件、对应组件和典型使用场景。

适合谁阅读

  • 需要快速查找某个触发时机用法的开发者
  • 正在写脚本但不确定该选哪个触发时机的创作者
  • 复习触发时机体系的初学者

你将学到什么

  • 各触发时机的触发条件
  • 对应需要的组件
  • 典型使用场景
  • 常见错误与正确做法

基础概念类

Q:触发时机是什么?

A:触发时机决定了脚本在"什么情况下"被执行。可以理解为脚本的「入口条件」。


Q:触发时机写在哪儿?

A:写在脚本编辑器的最顶部,每个脚本块的第一行就是触发时机。例如:当点击时当收到广播时


Q:没有触发时机会怎样?

A:脚本不会执行。没有触发时机的积木块是「死代码」。


Q:可以同时有多个触发时机吗?

A:可以。一个脚本可以有多个触发时机,每个触发时机对应一套积木块逻辑。


事件型触发时机

Q:「当被创建时」是什么?

A:物体在地图上被创建(或地图加载时)立即触发,只执行一次。

对应组件:不需要特定组件,所有物体都有。

典型场景

  • 初始化变量
  • 设置初始状态
  • 播放开场动画

示例

当被创建时
  设置自身属性1 为 0
  显示 "初始化完成"

Q:「当被销毁时」是什么?

A:物体被销毁时触发,常用于清理关联数据或播放死亡特效。

对应组件:不需要特定组件。

典型场景

  • 清理子物体
  • 发送广播通知其他系统
  • 播放销毁动画

示例

当被销毁时
  发送广播 "敌人_死亡" 并携带文本 "敌人A"

Q:「当受到伤害时」是什么?

A:物体受到伤害时触发,需要物体有「生命组件」。

对应组件:生命组件

典型场景

  • 播放受伤动画
  • 判断是否死亡
  • 触发反击

示例

当受到伤害时
  播放动效 "受伤闪烁"
  发送广播 "玩家_受伤" 并携带数字 生命组件.当前生命

Q:「当死亡时」是什么?

A:物体生命值降为0时触发,需要生命组件。

对应组件:生命组件

典型场景

  • 播放死亡动画
  • 触发死亡广播
  • 掉落物品

示例

当死亡时
  播放动画 "死亡"
  销毁自身

交互型触发时机

Q:「当被点击时」是什么?

A:玩家点击物体时触发,需要物体有「可互动组件」。

对应组件:可互动组件

典型场景

  • NPC对话
  • 打开物品
  • 触发机关

示例

当被点击时
  显示对话框 "你好!"
  发送广播 "NPC_对话"

Q:「当互动按钮被按下时」是什么?

A:玩家按下互动按钮时触发,同样需要可互动组件。

对应组件:可互动组件

典型场景

  • 与物体交互
  • 拾取道具
  • 使用物品

示例

当互动按钮被按下时
  发送广播 "道具_拾取" 并携带文本 "金币"
  销毁自身

Q:「当接近时」是什么?

A:玩家接近物体时触发,需要可互动组件。

对应组件:可互动组件

典型场景

  • 显示提示文字
  • 自动触发剧情
  • 接近解锁

示例

当接近时
  显示提示 "按E键交互"

Q:「当按键被按下时」是什么?

A:玩家按下指定按键时触发。

对应组件:不需要特定组件

典型场景

  • 快捷键功能
  • 特殊操作
  • 调试功能

示例

当按键被按下时 "E"
  发送广播 "使用道具"

广播型触发时机

Q:「当收到广播时」是什么?

A:收到指定名称的广播时触发,是解耦通信的核心机制。

对应组件:不需要特定组件

典型场景

  • UI通知地图处理
  • 多对象响应同一事件
  • 跨系统通信

示例

当收到广播 "刷新UI" 时
  显示 "金币:" + 系统属性1

Q:广播可以带参数吗?

A:可以。通过「并携带数字/文本」可以传递数据。

示例

发送广播 "道具_获得" 并携带数字 100

当收到广播 "道具_获得" 并携带数字 时
  获取道具数量
  显示 "获得 " + 参数 + " 金币"

Q:广播名称大小写敏感吗?

A:不敏感,但建议统一命名风格(如全小写+下划线)。


循环型触发时机

Q:「重复执行直到」是什么?

A:条件为真时重复执行,一旦条件满足就停止。

对应组件:不需要特定组件

典型场景

  • 持续检测状态
  • 等待某个事件发生
  • 动画循环

示例

重复执行直到 自身属性1 = 10
  等待 0.5 秒
  设置自身属性1 为 自身属性1 + 1
显示 "计数完成"

Q:「重复每隔X秒」是什么?

A:每隔指定秒数执行一次,常用于定时任务。

对应组件:不需要特定组件

典型场景

  • 定时扣血
  • 倒计时
  • 定期刷新

示例

重复每隔 3 秒
  发送广播 "检查点_刷新"

Q:无限循环和「重复执行直到」有什么区别?

A:无限循环会一直执行,需要在内部手动停止;「重复执行直到」会在条件满足时自动停止。

重要:无限循环内必须有「等待」积木,否则会导致游戏卡死。


碰撞型触发时机

Q:「当碰撞时」是什么?

A:物体与其他物体发生碰撞时触发,两个物体都需要物理组件。

对应组件:物理组件

典型场景

  • 子弹击中敌人
  • 拾取道具
  • 触发机关

示例

当碰撞时
  如果 碰撞对象.标签 = "敌人" 那么
    发送广播 "子弹_命中" 并携带文本 "敌人"
    销毁自身

Q:碰撞检测需要注意什么?

A

  1. 两个物体都需要有物理组件
  2. 物理组件的碰撞层级要匹配
  3. 至少有一个物体不能是「固定」的

组件型触发时机

Q:组件有哪些触发时机?

A:不同组件有不同的触发时机,常见的有:

组件触发时机
生命组件当受到伤害时、当死亡时、当生命值改变时
武器槽组件当武器切换时、当使用武器时
可互动组件当被点击时、当接近时、当互动按钮被按下时
开关组件当开关切换时
机关组件当机关触发时

Q:自定义组件可以添加触发时机吗?

A:可以。自定义组件可以添加触发时机,如「当执行"指令1"时」。

示例

自定义组件:冷却管理
触发时机:
  当执行"开始冷却"时
    设置自身属性1 为 1
    重复执行直到 自身属性1 = 0
      等待 1 秒
      设置冷却时间为 冷却时间 - 1

UI型触发时机

Q:UI脚本有哪些触发时机?

A:UI脚本的触发时机与普通物体略有不同,常见的有:

触发时机说明
当UI初始化时UI加载时触发
当UI按钮被点击时按钮被点击时
当收到广播时收到地图发来的广播时

Q:UI可以发广播吗?

A:可以。UI可以通过「向地图发广播」或「向当前UI发广播」发送消息。

示例

当UI按钮被点击时
  发送广播 "请求_购买" 并携带文本 "物品1"

常见问题类

Q:触发时机写错了怎么办?

A

  1. 点击当前触发时机
  2. 从下拉菜单中选择正确的触发时机
  3. 保存

Q:脚本不执行怎么排查?

A:检查清单:

  1. 是否有触发时机(没有则不会执行)
  2. 触发时机是否写对(如「当点击时」需要可互动组件)
  3. 物体是否有对应组件
  4. 是否保存了脚本

Q:可以同时有多个触发时机吗?

A:可以,每个脚本可以有多个触发时机分支。

示例

触发时机1:当被创建时
  初始化代码

触发时机2:当收到广播 "刷新" 时
  刷新代码

Q:触发时机可以嵌套吗?

A:触发时机不能嵌套,但一个触发时机内的积木块可以有条件判断和循环。


Q:触发时机有优先级吗?

A:触发时机本身没有固定优先级,按触发先后顺序执行。同一帧内可能有多个触发时机同时触发。


触发时机快速选择表

需求推荐触发时机需要组件
初始化当被创建时
玩家点击物体当被点击时可互动
玩家接近物体当接近时可互动
受伤处理当受到伤害时生命
死亡处理当死亡时生命
事件通知当收到广播时
持续检测重复执行直到 / 重复每隔X秒
碰撞检测当碰撞时物理
UI交互当UI按钮被点击时
等待变化当属性改变时

概念关系速查

触发时机 = 脚本的入口条件

  事件型:当被创建时/当死亡时/当受到伤害时
  交互型:当被点击时/当接近时/当互动按钮被按下时
  广播型:当收到广播时
  循环型:重复执行直到/重复每隔X秒
  碰撞型:当碰撞时
  组件型:各组件特有的触发时机
  UI型:当UI初始化时/当UI按钮被点击时

  积木块 = 在触发时机下执行的具体逻辑

相关页面


待验证问题

以下问题需要进一步验证:

问题状态验证方向
某些组件特有的触发时机是否完整🔄 待验证需要官方文档确认
新版本是否新增了其他触发时机🔄 待验证需要版本更新日志
触发时机的执行优先级细节🔄 待验证需要实际测试

📝 说明:触发时机核心用法已稳定,进阶细节需要持续跟踪。

后续优化方向

  • [ ] 补充更多实际脚本示例
  • [ ] 添加各触发时机的截图说明
  • [ ] 完善组件型触发时机的详细说明

参与维护

发现文档问题?

你可以编辑页面、提交反馈,或复制链接给维护者,帮助这个资料库继续变好。

由 Azek431 整理与维护 | 基于 MIT 许可证开源