条件加动作:不用写代码的游戏逻辑长什么样
传统引擎写逻辑靠脚本,这里靠事件表:一张张由条件与动作组成的表格。官方文档的概括是——条件像编程里的「if」,动作像「then」。如果条件成立,就执行动作。

一条事件的完整生命周期
- 游戏每一帧(通常每秒 60 次)从上到下逐条检查事件;
- 检查某条事件的所有条件是否成立;
- 全部成立 → 执行右侧所有动作;有任一条件不成立 → 跳过整条;
- 一帧跑完,下一帧再来一遍。
两个官方反复强调的细节:
- 没有条件的事件每帧都执行。想「一直做某事」(比如让背景滚动)就留空条件;想「偶尔做某事」就必须加条件。
- 动作只影响条件选中的对象。「删除敌人」这个动作只会删掉满足条件的那些敌人实例,不是全场清空。这套筛选机制叫对象拾取,单独有一页讲:为什么动作影响了不该影响的对象。
现成的例子:碰到金币加分
条件:玩家 与 金币 发生碰撞
动作:删除 金币
动作:把 变量 Score 的值 加 1
就这三行,一个拾取金币的机制就完成了。再加一条「Score 大于等于 10 时切换到胜利场景」的事件,一个完整的玩法闭环就有了。引擎里所有条件、动作都用自然语言命名,从列表里选,参数用表单填。
熟悉编程的人怎么用
事件系统不是玩具:
- 子事件、循环事件(对每个对象、对每个子变量)、重复事件、While 事件覆盖常见控制流;
- 事件函数能把一组事件打包成带参数的函数,在任何事件里调用;
- JavaScript 代码事件允许在事件表里直接写 JS,处理事件系统不便表达的逻辑;
- Else 事件(条件不成立时的分支)已在较新版本支持。
- 上一页:开源无代码游戏引擎是怎么运作的
- 下一组:事件表入门:写下第一条游戏规则