背景-石牌-短.png
本站为民间玩家交流站,不对官方产生任何影响
下载链接和首次登录请阅读首页信息栏内公告
本WIKI编辑权限开放,欢迎悬浮下划线收藏起来点击右上角三点图标,选择添加到桌面防止迷路,也希望有爱的小伙伴和我们一起编辑哟~
全站通知:

超级自定义关卡/关卡事件

刷 历
编

阅读

    

2026-07-23更新

    

最新编辑:Christine_nya

阅读:

  

更新日期:2026-07-23

  

最新编辑:Christine_nya

来自植物大战僵尸融合版WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索
页面贡献者 :
Christine_nya
微凉如梦来
一条不会美工的羊
我叫YS_sy_Y
叶小树二代
急需散热器
bili_75838443299
小部件ResourceLoader出错: Unable to load template 'wiki:ResourceLoader'
,请注意内容时效性


事件节点系统使用手册


欢迎使用事件节点系统!这是一款强大的可视化编辑工具,让你无需编写任何代码就能创建复杂的游戏逻辑。

教程视频

什么是事件节点系统?

事件节点系统就像搭积木一样,你把不同功能的"节点"用线连起来,就能创造出各种游戏机制。比如:

  • 当僵尸死亡时 → 给你金币
  • 当按下空格键 → 显示文字
  • 当植物被种下 → 计数+1


让我们创建一个简单的例子:
当关卡开始时,显示欢迎文字

 step1:打开超级自定义-关卡事件
 step2:右键屏幕,打开菜单
 step3:点击创建节点-事件触发-关卡开始
 step4:右键屏幕,点击创建节点-行为-显示文本
 step5:从"关卡开始"节点的右侧端口("触发")拖一条线到"显示文本"节点的左侧端口("触发")
 step6:创建节点-值-字符串-输入"游戏开始!"
 step7:从"字符串"节点的右侧端口(值")拖一条线到"显示文本"节点的左侧端口("文本")
 step8:保存并生成关卡

恭喜!你创建了第一个事件! 点击显示参考答案

节点例题-欢迎文字.png

界面介绍

节点外观

节点标题
◀ 输入 输出 ▶
← ← 上方:显示节点名称(如:显示文本、计数器)
← ← 下方:左边是输入端口,右边是输出端口

节点结构说明

  •   上    方  :节点标题,显示节点名称
  • 下方左侧:输入端口(接收数据或触发信号)
  • 下方右侧:输出端口(输出数据或触发信号)

信息面板

  • 3.7版本加入,可以通过点击左上角的✓暂时隐藏,但点击任意节点/分组都会显示
  • 显示在界面左上角,内容包括:已选中节点/分组的标题、描述、节点ID
  • 可以在下方搜索框输入节点ID定位该节点(可以在Debug模式、C:\Users\用户名\AppData\LocalLow\LanPiaoPiao\PlantsVsZombiesRH\Player.log中获取出Bug的节点ID)

变量面板

  • 3.7版本加入,可以通过点击左上角的✓暂时隐藏
  • 变量是一种全局数据,其在任意位置、任意时间改变时,该存档内所有同名、同类节点都会同步改变
  • 面板右侧的三个按钮创建三种不同类型的变量
  • 左键点击其中的变量,也会在消息面板中显示节点命名、值,也可以在其中删除节点
  • 左/右键点击其中的变量、并拖拽到空白区域,可以创建一个同名变量节点

操作

鼠标左键操作

操作 说明
左键点击节点 选中节点(边框变为红色,会使之前被选中的节点取消选中状态)
Ctrl+左键点击节点 选中节点(边框变为红色,不会改变其它节点的选中状态)
左键拖拽节点 移动节点位置
左键点击端口、并拖到端口 创建连接线
左键点击端口、并拖到空白 打开右键菜单,但只显示可用节点,选择时自动连接
左键点击分组(3.7版本) 选中分组(信息面板显示该分组信息,可以修改分组命名)
左键拖拽分组(3.7版本) 移动该分组中所有节点的位置
左键点击变量面板中的变量(3.7版本) 选中变量(信息面板显示该变量信息,可以修改变量命名和值)
左键拖拽变量面板中的变量到空白(3.7版本) 创建一个该变量的输出节点

鼠标左键-连线

1. 创建连接:

  • 点击源节点的输出端口(右侧)
  • 按住鼠标左键拖动到目标节点的输入端口(左侧)
  • 松开鼠标完成连接

2. 连接规则:

  • ✅ 可以连接:触发端口 → 触发端口
  • ❌ 不能连接:触发端口 → 数据端口.
  • ❌ 不能连接:数据端口 → 触发端口
  • ✅ 可以连接:数据端口 → 同类型数据端口
  • ❌ 不能连接:不同类型的数据端口

3. 连线共存:

  • ✅ 可以一对多:1个触发端口 → 多个触发端口
  • ✅ 可以多对一:多个触发端口 → 1个触发端口
  • ✅ 可以一对多:1个数据端口 → 多个数据端口
  • ❌ 不能多对一:多个数据端口 → 1个数据端口

4.删除连线

  • 对于数据端口,你可以点击端口将其拖到空白区域,随便创建一个节点替换其链接、然后将新建的节点删除
  • 对于触发端口,你只能将节点整个删除来取消链接
    • (3.7版本后,你可以通过鼠标中键点击仍意节点,来取消该节点已经链接的所有连线)

鼠标左键-框选

1. 框选节点:

  • 按住鼠标左键
  • 在画布上拖拽出矩形框
  • 框内的节点会被选中(边框变为红色)

2. 移动多个节点:

  • 框选多个节点后
  • 拖动任意一个节点
  • 所有选中的节点会一起移动

3. 删除多个节点:

  • 框选多个节点
  • 按Delete键删除

4.创建分组(3.7版本后)

  • 框选多个节点
  • 右键点击任意位置
  • 选择创建分组

鼠标右键操作

操作 说明
右键点击空白区域 打开右键菜单(创建/粘贴节点)
右键点击节点 打开右键菜单(创建/删除/复制/粘贴节点)
右键点击、且有多个已选中的节点(3.7版本) 打开右键菜单(创建/删除/复制/粘贴节点、创建分组)
右键点击分组中的节点(3.7版本) 打开右键菜单(创建/删除/复制/粘贴节点、移出分组)
右键点击分组中的空白区域(3.7版本) 打开右键菜单(创建/删除/复制/粘贴节点、解散分组)
  • ps.根据已选中的节点位置,右键点击空白区域会有不同的结果,请自行探索

鼠标中键操作

操作 说明
滚轮 缩放画布
中键拖拽空白区域 平移画布
中键点击节点(3.7版本) 清除所有相关连线
中键拖拽节点(3.7版本已取消) 移动节点位置

键盘按键操作

操作 说明
Delete键 删除选中的所有节点
Ctrl+左键点击节点 选中节点(边框变为红色,不会改变其它节点的选中状态)
Ctrl+C键 复制选中的所有节点
Ctrl+V键 粘贴上一次复制的节点

端口

端口颜色 端口类型 说明
● 黄色 #ffcc31 触发端口(Trigger)
  • 作用:传递执行信号,不传递数据
  • 用途:连接节点,形成执行流程
  • 示例:关卡开始(触发)→ 显示文本(触发)
数据端口:用于传递具体的数据值。
● 淡蓝色 #66ccff 整数(Int)
  • 作用:传递整数值(如:10、-5、100)
  • 用途:计数、索引、数量等
● 淡绿色 #66ff98 浮点数(Float)
  • 作用:传递小数值(如:3.14、0.5、-2.7)
  • 用途:时间、比例、坐标等
● 玫红色 #ff4b80 布尔值(Bool)
  • 作用:传递true或false
  • 用途:开关、条件判断
● 粉红色 #ff99ca 字符串(String)
  • 作用:传递文字
  • 用途:显示文本、消息
● 灰色 #808080 植物类型/列表(PlantType / List)
  • 作用:传递植物种类
  • 用途:创建、识别植物
● 灰色 #808080 僵尸类型/列表(ZombieType / List)
  • 作用:传递僵尸种类
  • 用途:创建、识别僵尸
● 灰色 #808080 植物/列表(Plant / List)
  • 作用:传递植物对象引用
  • 用途:操作特定的植物
● 灰色 #808080 僵尸/列表(Zombie / List)
  • 作用:传递僵尸对象引用
  • 用途:操作特定的僵尸
● 灰色 #808080 GameObject(列表)
● 灰色 #808080 变量(Variable)
(3.7版本后)
  • 作用:传递全局变量值
  • 用途:需要再多个地方使用同一个变量

节点

事件触发

  • 背景:红色 #ff6666
  • 作用:这些节点监听游戏中的事件,当事件发生时自动触发。
节点-事件触发.png
  • 关卡正式开始:关卡正式开始时触发(开始文字播放完后)
  • 关卡开始:关卡开始时触发(草坪出现时同步)
  • 关卡波数增加时:当特定波次来临时触发
  • 按下鼠标时:玩家点击鼠标时触发
  • 按下键盘按键时:玩家按下指定按键时触发
  • 植物种植时:玩家种下植物时触发
  • 点击植物时:玩家点击已种植的植物时触发
  • 植物血量为零时:植物血量为时(未死亡)触发
  • 植物死亡时:植物死亡时触发
  • 僵尸死亡时:僵尸被消灭时触发
  • 僵尸生成时:新僵尸出现时触发
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-关卡正式开始-3.7.png
关卡正式开始时触发(开始文字播放完后)

输出端口:

  • 触发(Trigger):发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-关卡开始-3.6.png
关卡开始时触发(草坪出现时同步)

输出端口:

  • 触发(Trigger):发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-关卡波数增加时-3.6.png
当特定波次来临时触发

输出端口:

  • 触发(Trigger):发出触发信号
  • 波数(Int):同步传出当前波数
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-按下鼠标时-3.6.png
玩家点击鼠标时触发

输出端口:

  • 触发(Trigger):发出触发信号
  • 行(Int):传出鼠标当前所在行数
  • 列(Int):传出鼠标当前所在行数
  • 手上的物品(GameObject):传出鼠标中拿着的物品(以选项列表的格式输出)
  • 是左键(Bool):左键点击时为True,中键和右键为False
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-按下键盘按键时-3.6.png
玩家按下指定按键时触发

设置端口:

  • 请设置按键(Button):按下后,再按下键盘上的按键,即可设置

输出端口:

  • 触发(Trigger):发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-植物种植时-3.6.png
玩家种下植物时触发

输出端口:

  • 触发(Trigger):发出触发信号
  • 植物(Plant):同步传出植物数据(含植物种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-点击植物时-3.6.png
玩家点击已种植的植物时触发

输出端口:

  • 触发(Trigger):发出触发信号
  • 植物(Plant):同步传出植物数据(含植物种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-植物血量为零时-3.6.png
植物血量为时(未死亡)触发

输出端口:

  • 触发(Trigger):发出触发信号
  • 植物(Plant):同步传出植物数据(含植物种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-植物死亡时-3.7.png
植物死亡时触发

输出端口:

  • 触发(Trigger):发出触发信号
  • 植物(Plant):同步传出植物数据(含植物种类和各种属性)
  • 死亡原因(Int):同步传出植物死亡原因所代表的编号
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-僵尸死亡时-3.6.png
僵尸被消灭时触发

输出端口:

  • 触发(Trigger):发出触发信号
  • 僵尸(Plant):同步传出僵尸数据(含僵尸种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-事件触发-僵尸生成时-3.6.png
新僵尸出现时触发

输出端口:

  • 触发(Trigger):发出触发信号
  • 僵尸(Plant):同步传出僵尸数据(含僵尸种类和各种属性)

植物操作

  • 背景:粉绿色 #4be680
  • 作用:用于创建、修改和操作植物。
节点-植物操作.png
  • 创建植物:在指定位置种植植物
  • 移动植物:将植物移动到新位置
  • 创建植物卡牌:在指定位置掉落植物卡牌
  • 给植物回血:恢复植物生命值
  • 令植物受伤:对植物造成伤害(不会立即死亡)
  • 令植物死亡:令植物立即死亡
  • 给植物获得护盾:为植物增加护盾
  • 修改植物攻击力:提高或降低植物攻击力
  • 修改植物血量:提高或降低植物最大血量
  • 植物属性拆分:获取植物的位置、类型等信息
  • 获取格子植物:获取指定格子内的所有植物
  • 获取场上全部植物:获取场上所有植物
  • 遍历植物列表:依次处理列表中的每个植物
  • 遍历植物类型列表:依次处理每种植物类型
  • 植物类型:提供一个植物类型常量
  • 植物类型比较:判断两个植物类型是否相同
  • 单植物类型列表:创建包含一个类型的列表
  • 多植物类型列表:创建可包含复数个类型的列表
  • 植物类型列表存储:保存和读取植物类型列表
  • 合并植物类型列表:合并多个列表
  • 随机获取植物类型:从列表中随机选择一种
  • 删除植物类型:从列表中删除指定类型
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-创建植物-3.6.png
在指定位置种植植物

输入端口:

  • 触发(Trigger):触发创建植物
  • 行(Int):设置植物的创建坐标行(第一行的坐标为0)
  • 列(Int):设置植物的创建坐标列(第一列的坐标为0)
  • 植物编号(PlantType):设置植物类型
  • 强制种植(Bool):默认为False,当该值为True时,可以无视其他植物/弹坑/水陆限制强制将植物种植在该格子中

输出端口:

  • 创建成功(Trigger):当植物成功种植时发出触发信号
  • 植物(Plant):将该植物的数据打包传出(含植物种类和各种属性)
  • 创建失败(Trigger):当植物无法种植时发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-移动植物-3.6.png
将植物移动到新位置

输入端口:

  • 触发(Trigger):触发移动植物
  • 植物(Plant):选中要移动的植物
  • 行(Int):设置植物的移动目的格坐标行(第一行的坐标为0)
  • 列(Int):设置植物的移动目的格坐标列(第一列的坐标为0)
  • 强制(Bool):默认为False,当该值为True时,可以无视其他植物/弹坑/水陆限制强制将植物移动入该格子中

输出端口:

  • 移动成功(Trigger):当植物成功移动时发出触发信号
  • 植物(Plant):将该植物的数据打包传出(含植物种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-创建植物卡牌-3.6.png
在指定位置掉落植物卡牌

输入端口:

  • 触发(Trigger):触发创建植物卡牌
  • 行(Int):设置植物卡牌掉落位置坐标行(第一行的坐标为0)
  • 列(Int):设置植物卡牌掉落位置坐标列(第一列的坐标为0)
  • 植物类型(PlantType):设置卡牌的植物类型

输出端口:

  • 创建成功(Trigger):当植物卡牌成功掉落时发出触发信号
  • 植物类型(PlantType):将植物类型再次传出
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-给植物回血-3.6.png
恢复植物生命值

输入端口:

  • 触发(Trigger):触发回血
  • 植物(Plant):选中要回血的植物
  • 回血量(Float):设置回血量
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-令植物受伤-3.6.png 节点-植物操作-令植物受伤-3.7.png
对植物造成伤害(不会立即死亡)

输入端口:

  • 触发(Trigger):触发伤害
  • 植物(Plant):选中要伤害的植物
  • 伤害量(Int):设置伤害值

输出端口:

  • 伤害完成(Trigger):伤害完植物后发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-令植物死亡-3.7.png
令植物立即死亡

输入端口:

  • 触发(Trigger):触发击杀
  • 植物(Plant):选中要击杀的植物

输出端口:

  • 伤害完成(Trigger):击杀植物后发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-给植物获得护盾-3.6.png
为植物增加护盾

输入端口:

  • 触发(Trigger):触发提供护盾
  • 植物(Plant):选中要提供护盾的植物
  • 护盾值(Float):设置护盾量
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-修改植物攻击力-3.6.png
提高或降低植物攻击力

输入端口:

  • 触发(Trigger):触发修改攻击力
  • 植物(Plant):选中要修改攻击力的植物
  • 攻击力加成×100%(Float):设置攻击力加成倍率(默认为0,即原攻击力,填入1时为2倍攻击力,填入-1时为0攻击力,以此类推)

输出端口:

  • 修改成功(Trigger):修改完攻击力后发出触发信号
  • 植物(Plant):将该植物的数据打包传出(含植物种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-修改植物血量-3.6.png
提高或降低植物最大血量

输入端口:

  • 触发(Trigger):触发修改生命值上限
  • 植物(Plant):选中要修改生命值上限的植物
  • 血量加成×100%(Float):设置生命值上限加成倍率(默认为0,即原生命值上限,填入1时为2倍生命值上限,填入-1时为0血,以此类推)

输出端口:

  • 修改成功(Trigger):修改完生命值上限后发出触发信号
  • 植物(Plant):将该植物的数据打包传出(含植物种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-植物属性拆分-3.6.png 节点-植物操作-植物属性拆分-3.7.png
获取植物的位置、类型等信息

输入端口:

  • 植物(Plant):选中要拆分属性的植物

输出端口:

  • 行(Int):传出植物所在格的坐标行(第一行的坐标为0)
  • 列(Int):传出植物所在格的坐标列(第一列的坐标为0)
  • 植物类型(PlantType):传出植物的类型
  • 植物血量(Int):传出植物的剩余生命值
  • 属性倒计时(Float):传出植物目前的属性倒计时
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-获取格子植物-3.6.png
获取指定格子内的所有植物

输入端口:

  • 行(Int):设置要获取植物的目的格坐标行(第一行的坐标为0)
  • 列(Int):设置要获取植物的目的格坐标列(第一列的坐标为0)

输出端口:

  • 植物列表(PlantList):输出一个包含该格内所有植物及各种属性的列表
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-获取场上全部植物-3.7.png
获取场上所有植物

输出端口:

  • 全部植物(PlantList):输出一个包场上所有植物及各种属性的列表
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-遍历植物列表-3.6.png
依次处理列表中的每个植物

输入端口:

  • 触发(Trigger):触发遍历植物列表
  • 植物列表(PlantList):输入一个含植物及各种属性的列表

输出端口:

  • 循环体(Trigger):当遍历到每一个植物时,发出一次触发信号
  • 当前植物(Plant):同步输出当前植物的各种数据(含植物种类和各种属性)
  • 当前索引(Int):同步传出当前植物是第几个被遍历的植物(第一个索引序号为0)
  • 循环完成(Trigger):当循环完列表中所有植物后,发出一次触发信号
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-遍历植物类型列表-3.6.png
依次处理每种植物类型

输入端口:

  • 触发(Trigger):触发遍历植物类型列表
  • 植物类型列表(PlantTypeList):输入一个仅含植物类型的列表

输出端口:

  • 循环体(Trigger):当遍历到每一个植物类型时,发出一次触发信号
  • 当前类型(PlantType):同步输出当前植物类型
  • 当前索引(Int):同步传出当前植物是第几个被遍历的植物类型(第一个索引序号为0)
  • 循环完成(Trigger):当循环完列表中所有植物类型后,发出一次触发信号
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-植物类型-3.6.png
提供一个植物类型常量

设置端口:

  • 未命名(Button):点击可以打开植物图鉴,在其中点击植物卡牌便会退出并设置植物类型

输出端口:

  • 植物类型(PlantType):输出植物类型
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-植物类型比较-3.6.png
判断两个植物类型是否相同

输入端口:

  • 植物类型A(PlantType):输入第一个植物类型
  • 植物类型B(PlantType):输入第二个植物类型

输出端口:

  • 相同(Bool):当两个植物类型相同时,输出True,否则输出False
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-单植物类型列表-3.6.png
创建包含一个类型的列表

设置端口:

  • 未命名(Button):点击可以打开植物图鉴,在其中点击植物卡牌便会退出并设置植物类型

输出端口:

  • 植物类型列表(PlantTypeList):将所选的植物类型以“植物类型列表”的形式输出
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-多植物类型列表-3.7.png
创建可包含复数个类型的列表

设置端口:

  • 0种类型(Button):点击可以打开植物图鉴,在其中点击卡牌可以选中(卡背变为金色),手动推出后按钮显示选中了几个植物类型

输出端口:

  • 植物类型列表(PlantTypeList):将选中的所有植物类型打包输出为一个列表
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-植物类型列表存储-3.6.png
保存和读取植物类型列表

输入端口:

  • 触发(Trigger):触发修改列表
  • 植物类型(PlantType):设置要添加/删除的植物类型
  • 列表(PlantTypeList):设置要设置的植物类型列表

设置端口:

  • 设置列表(Menu):点击打开下拉菜单,可以选择在此列表中添加/删除该元素

输出端口:

  • (注意:只有触发端口有输入信号时,这些端口才有输出内容)
  • 当前列表(PlantTypeList):将修改后的列表输出
  • 列表长度(Int):同步传出该列表中所含有的植物类型数量
  • 完成(Trigger):当列表修改完成后,发出一次触发信号

使用技巧

  • 其实该节点在修改列表时,除了输出修改后列表,也会同时将输入的列表一并修改(并储存在将列表输入的那个节点中)。如果想要根据是否满足修改触发条件的不同情况,分别调用修改前/修改后的列表,可以把后续的调用节点接在原列表上,就像这样:
节点例题-植物类型列表储存.png
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-合并植物类型列表-3.6.png
合并多个列表

输入端口:

  • 列表A(PlantTypeList):输入第一个植物类型列表
  • 列表B(PlantTypeList):输入第二个植物类型列表(也可以不输入)

输出端口:

  • 合并列表(PlantTypeList):将所有的植物类型打包输出为一个列表
  • 列表长度(Int):同步传出该列表中所含有的植物类型数量
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-随机获取植物类型-3.6.png
从列表中随机选择一种

输入端口:

  • 植物类型列表(PlantTypeList):输入一个植物类型列表

输出端口:

  • 随机植物类型(PlantType):从中随机挑选一个植物类型输出
最新版本:3.6 最新版本:3.7 说明
节点-植物操作-删除植物类型-3.6.png
从列表中删除指定类型

输入端口:

  • 植物类型列表(PlantTypeList):输入一个植物类型列表
  • 要删除的类型(PlantType):设置要删除的植物类型(单个)

输出端口:

  • 结果列表(PlantTypeList):将修改后的列表输出
  • 是否成功(Bool):如果原列表中没有需要删除的植物类型,会输出False

僵尸操作

  • 背景:紫灰色 #9966ca
  • 作用:用于创建、修改和操作僵尸。
节点-僵尸操作.png
  • 创建僵尸:在指定位置生成僵尸
  • 移动僵尸:将僵尸移动到新位置
  • 令僵尸受伤:对僵尸造成伤害
  • 令僵尸被魅惑:将僵尸变为我方单位
  • 获取最近的僵尸:找到距离指定位置最近的僵尸
  • 修改僵尸血量:提高或降低僵尸血量
  • 僵尸属性拆分:获取僵尸的位置、类型等信息
  • 僵尸类型:提供一个僵尸类型常量
  • 僵尸类型比较:判断两个僵尸类型是否相同
  • 播放僵尸动画:
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-创建僵尸-3.6.png
在指定位置生成僵尸

输入端口:

  • 触发(Trigger):触发创建僵尸
  • 僵尸类型(ZombieType):设置僵尸类型
  • 行(Int):设置僵尸的创建坐标行(第一行的坐标为0)
  • 列(Int):设置僵尸的创建坐标列(第一列的坐标为0)
  • 是否魅惑(Bool):默认为False,当该值为True时,创建魅惑僵尸

输出端口:

  • 创建成功(Trigger):当僵尸成功种植时发出触发信号
  • 僵尸(Zombie):将该僵尸的数据打包传出(含僵尸种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-移动僵尸-3.7.png
将僵尸移动到新位置

输入端口:

  • 触发(Trigger):触发移动僵尸
  • 僵尸(Zombie):选中要移动的僵尸
  • 目标行(Int):设置僵尸的移动目的格坐标行(第一行的坐标为0)
  • 目标列(Int):设置僵尸的移动目的格坐标列(第一列的坐标为0)

输出端口:

  • 移动成功(Trigger):当僵尸成功移动时发出触发信号
  • 僵尸(Zombie):将该僵尸的数据打包传出(含僵尸种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-令僵尸受伤-3.6.png
对僵尸造成伤害

输入端口:

  • 触发(Trigger):触发伤害
  • 僵尸(Zombie):选中要伤害的僵尸
  • 伤害量(Int):设置伤害值
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-令僵尸被魅惑-3.6.png
将僵尸变为我方单位

输入端口:

  • 触发(Trigger):触发魅惑
  • 僵尸(Zombie):选中要魅惑的僵尸
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-获取最近的僵尸-3.6.png
找到距离指定位置最近的僵尸

输入端口:

  • 行(Int):设置要获取僵尸的目的格坐标行(第一行的坐标为0)
  • 列(Int):设置要获取僵尸的目的格坐标列(第一列的坐标为0)

输出端口:

  • 僵尸(Zombie):输出一个离目的格最近的僵尸(含僵尸种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-修改僵尸血量-3.6.png
提高或降低僵尸血量

输入端口:

  • 触发(Trigger):触发修改生命值上限
  • 僵尸(Zombie):选中要修改生命值上限的僵尸
  • 血量倍率(Float):设置生命值上限加成倍率(默认为0,即原生命值上限,填入1时为2倍生命值上限,填入-1时为0血,以此类推)

输出端口:

  • 修改成功(Trigger):修改完生命值上限后发出触发信号
  • 僵尸(Zombie):将该僵尸的数据打包传出(含植物种类和各种属性)
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-僵尸属性拆分-3.6.png
获取僵尸的位置、类型等信息

输入端口:

  • 僵尸(Zombie):选中要拆分属性的僵尸

输出端口:

  • 行(Int):传出僵尸所在格的坐标行(第一行的坐标为0)
  • 列(Int):传出僵尸所在格的坐标列(第一列的坐标为0)
  • 僵尸类型(ZombieType):传出僵尸的类型
  • 是否被魅惑(Bool):魅惑僵尸为True,未被魅惑则为False
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-僵尸类型-3.6.png
提供一个僵尸类型常量

设置端口:

  • 僵尸(Button):点击可以打开僵尸图鉴,在其中点击僵尸卡牌便会退出并设置僵尸类型

输出端口:

  • 僵尸类型(ZombieType):输出僵尸类型
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-僵尸类型比较-3.6.png
判断两个僵尸类型是否相同

输入端口:

  • 僵尸类型A(ZombieType):输入第一个僵尸类型
  • 僵尸类型B(ZombieType):输入第二个僵尸类型

输出端口:

  • 相同(Bool):当两个僵尸类型相同时,输出True,否则输出False
最新版本:3.6 最新版本:3.7 说明
节点-僵尸操作-播放僵尸动画-3.7.png

输入端口:

  • 触发(Trigger):触发播放僵尸动画
  • 僵尸(Zombie):选中要播放动画的僵尸

键入端口:

  • idle(Text):僵尸动画的类型,能填入idle(待机)、walk(行走)、die(死亡)等。

行为

  • 背景:绿色 #31cc66
  • 作用:这些节点执行具体的游戏动作。
节点-行为.png
  • 显示文本:在屏幕中央显示文字
  • 播放音效:播放一次指定ID的音效
  • 获得旅行词条:给玩家添加旅行模式词条
  • 创建墓碑:在指定位置创建墓碑
  • 创建粒子特效:在指定位置创建白色烟雾特效
  • 获得阳光:给玩家增加阳光
  • 消耗阳光:消耗玩家阳光(不足时触发失败端口)
  • 获得金币:给玩家增加金币
  • 消耗金币:消耗玩家金币(不足时触发失败端口)
  • 令游戏结束:触发游戏失败
  • 令游戏胜利:触发游戏胜利
  • 显示多选菜单:显示一个多选菜单供玩家选择
  • 添加选项:向多选菜单添加一个选项
  • 合并选项列表:合并多个选项列表
  • 创建信息卡牌:创建以大标题为卡面、小标题为阳光量的卡槽卡牌
  • 删除卡槽植物卡牌:删除卡槽中指定类型的植物卡牌
  • 添加植物卡牌:向卡槽添加植物卡牌(可自定义属性)
最新版本:3.6 最新版本:3.7 说明
节点-行为-显示文本-3.6.png
在屏幕中央显示文字

输入端口:

  • 触发(Trigger):触发显示
  • 文本(String):要显示的内容
  • 持续时间(Float):显示多少秒
最新版本:3.6 最新版本:3.7 说明
节点-行为-播放音效-3.7.png
播放一次指定ID的音效

输入端口:

  • 触发(Trigger):触发播放音效
  • 音效ID(Int):设置要播放的音效
最新版本:3.6 最新版本:3.7 说明
节点-行为-获得旅行词条-3.6.png 节点-行为-获得旅行词条-3.7.png
给玩家添加旅行模式词条

输入端口:

  • 触发(Trigger):触发获得词条

设置端口:

  • 未设置(Button):点击可以打开词条图鉴,在其中点击词条卡牌便会退出并设置词条类型

输出端口:

  • 成功(Trigger):获得词条后发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-行为-创建墓碑-3.6.png
在指定位置创建墓碑

输入端口:

  • 触发(Trigger):触发创建墓碑
  • 行(Int):设置墓碑创建位置坐标行(第一行的坐标为0)
  • 列(Int):设置墓碑创建位置坐标列(第一行的坐标为0)
最新版本:3.6 最新版本:3.7 说明
节点-行为-创建粒子特效-3.7.png
在指定位置创建白色烟雾特效

输入端口:

  • 触发(Trigger):触发创建烟雾特效
  • 行(Int):设置烟雾特效创建位置坐标行(第一行的坐标为0)
  • 列(Int):设置烟雾特效创建位置坐标列(第一行的坐标为0)
最新版本:3.6 最新版本:3.7 说明
节点-行为-获得阳光-3.6.png
给玩家增加阳光

输入端口:

  • 触发(Trigger):触发获得阳光
  • 阳光数量(Int):设置增加的阳光量
最新版本:3.6 最新版本:3.7 说明
节点-行为-消耗阳光-3.6.png
消耗玩家阳光(不足时触发失败端口)

输入端口:

  • 触发(Trigger):触发消耗阳光
  • 阳光数量(Int):设置要消耗的阳光量

输出端口:

  • 消耗成功(Trigger):当阳光足够、且成功消耗后发出触发信号
  • 阳光不足(Trigger):当阳光不足、消耗失败后发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-行为-获得金币-3.6.png
给玩家增加金币

输入端口:

  • 触发(Trigger):触发获得钱币
  • 阳光数量(Int):设置增加的钱币量
最新版本:3.6 最新版本:3.7 说明
节点-行为-消耗金币-3.6.png
消耗玩家金币(不足时触发失败端口)

输入端口:

  • 触发(Trigger):触发消耗钱币
  • 金币数量(Int):设置要消耗的钱币量

输出端口:

  • 消耗成功(Trigger):当钱币足够、且成功消耗后发出触发信号
  • 金币不足(Trigger):当钱币不足、消耗失败后发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-行为-令游戏结束-3.6.png
触发游戏失败

输入端口:

  • 触发(Trigger):触发令游戏失败
  • 失败原因(String):游戏失败后会弹出说明框,这里可以设置说明框中的文字
最新版本:3.6 最新版本:3.7 说明
节点-行为-令游戏胜利-3.6.png
触发游戏胜利

输入端口:

  • 触发(Trigger):触发令游戏胜利(击杀场上所有僵尸、结束僵尸的进攻、掉落奖杯)
最新版本:3.6 最新版本:3.7 说明
节点-行为-显示多选菜单-3.6.png
显示一个多选菜单供玩家选择

输入端口:

  • 触发(Trigger):触发显示多选菜单(即旅行模式中选择词条的多选框)
  • 选项列表(GameObject):设置可以出现在选项中的卡牌列表(每一张选项卡牌可以包含标题、描述、一个植物/僵尸立绘作为窗口演示)
  • 可刷新(Bool):默认为False;若设置为True,则在右下角显示刷新按钮
  • 刷新次数(Int):默认为3次。可以自定义刷新次数
  • 可取消新(Bool):默认为True,在左下角显示取消按钮;若设置为False,则隐藏按钮
  • 窗口数量(Int):默认为3次。可以自定义卡牌窗口数量

输出端口:

  • 退出时触发(Trigger):点击取消按钮、或选择一个选项卡牌后发出触发信号
  • 刷新时触发(Trigger):点击刷新按钮后发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-行为-添加选项-3.6.png
向多选菜单添加一个选项

输入端口:

  • 选项列表(GameObject):输入一个已经存在的卡牌列表(也可以不输入)
  • (该节点一次只能添加一张选项卡牌)
  • 标题(String):设置选项卡牌的标题
  • 描述(String):设置选项卡牌的描述文本
  • 植物类型(PlantType):设置选项卡牌窗口中显示的植物形象(无法与僵尸类型同时设置,会被其覆盖)
  • 僵尸类型(ZombieType):设置选项卡牌窗口中显示的僵尸形象

输入端口:

  • 选项列表(GameObject):将合并后的卡牌列表输出
  • 选项被点击(Trigger):该选项卡牌被选择后,发出触发信号

使用技巧

  • 请结合上一个节点一起使用,就像这样:
节点例题-多选菜单.png
最新版本:3.6 最新版本:3.7 说明
节点-行为-合并选项列表-3.6.png
合并多个选项列表

输入端口:

  • 列表1(GameObject):输入一个卡牌列表
  • 列表2(GameObject):输入一个卡牌列表(也可以不输入)

输入端口:

  • 合并列表(CardList):将合并后的卡牌列表输出
最新版本:3.6 最新版本:3.7 说明
节点-行为-创建信息卡牌-3.7.png
创建以大标题为卡面、小标题为阳光量的卡槽卡牌

输入端口:

  • 触发(Trigger):触发创建信息卡牌(该卡牌会被添加进卡槽中)
  • 大标题(String):设置选项卡牌的大标题(该文本会被显示在卡面中)
  • 小标题(String):设置选项卡牌的小标题(该文本会被显示在阳光槽中)

输入端口:

  • 点击卡牌时触发(Trigger):点击该信息卡牌时发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-行为-删除卡槽植物卡牌-3.6.png
删除卡槽中指定类型的植物卡牌

输入端口:

  • 触发(Trigger):触发删除植物卡牌
  • 植物类型(PlantType):设置要删除的植物卡牌类型

输入端口:

  • 完成(Trigger):删除植物卡牌后发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-行为-添加植物卡牌-3.6.png
向卡槽添加植物卡牌(可自定义属性)

输入端口:

  • 触发(Trigger):触发添加植物卡牌(该卡牌会被添加到最右侧)
  • 植物类型(PlantType):设置要添加的植物卡牌类型
  • 冷却时间(Float):设置该卡牌的冷却时间(但初始冷却时间固定为0秒)
  • 价格(Int):设置该卡牌的价格
  • 使用默认数值(Bool):默认为true,如要修改卡牌数据,需接入一个false的布尔值

输入端口:

  • 添加成功(Trigger):植物卡牌添成功后发出触发信号
  • 添加失败(Trigger):植物卡牌添失败(卡槽已满)后发出触发信号
  • 种植时触发(Trigger):使用该植物卡牌种植植物时发出触发信号
  • 种植的植物(PlantType):同步传出种植的植物类型

关卡操作

  • 背景:粉红色 #cc4b80
  • 作用:用于修改关卡环境和效果。
节点-关卡操作.png
  • 创建寒冰菇效果:全屏冻结所有僵尸
  • 创建火爆辣椒效果:在指定行造成火焰伤害
  • 创建毁灭菇效果:大范围爆炸伤害
  • 创建樱桃爆炸效果:樱桃炸弹爆炸
  • 创建梯子:让僵尸可以攀爬坚果墙
  • 创建弹坑:创建无法种植的弹坑
  • 创建冰块:创建冰块(可包含被冻住的植物)
  • 创建小丑爆炸:小丑僵尸爆炸效果
最新版本:3.6 最新版本:3.7 说明
节点-关卡触发-创建寒冰菇效果-3.6.png
全屏冻结所有僵尸

输入端口:

  • 触发(Trigger):触发释放寒冰菇冻结效果
  • 冻结时间(Float):设置寒冰菇冻结时间
最新版本:3.6 最新版本:3.7 说明
节点-关卡触发-创建火爆辣椒效果-3.6.png
在指定行造成火焰伤害

输入端口:

  • 触发(Trigger):触发释放辣椒火焰效果
  • 行(Int):设置辣椒火焰释放的坐标行(第一行的坐标为0)
  • 伤害值(Int):设置辣椒火焰伤害
最新版本:3.6 最新版本:3.7 说明
节点-关卡触发-创建毁灭菇效果-3.6.png
大范围爆炸伤害

输入端口:

  • 触发(Trigger):触发释放毁灭菇爆炸效果
  • 列(Int):设置毁灭菇爆炸释放的坐标列(第一列的坐标为0)
  • 行(Int):设置毁灭菇爆炸释放的坐标行(第一行的坐标为0)
  • 伤害值(Int):设置毁灭菇爆炸伤害(默认为1800伤害)
  • 创建弹坑(Bool):默认为True,若接入一个False的布尔值,则不会产生弹坑
最新版本:3.6 最新版本:3.7 说明
节点-关卡触发-创建樱桃爆炸效果-3.6.png
樱桃炸弹爆炸

输入端口:

  • 触发(Trigger):触发释放樱桃炸弹爆炸效果
  • 行(Int):设置樱桃炸弹爆炸释放的坐标行(第一行的坐标为0)
  • 列(Int):设置樱桃炸弹爆炸释放的坐标列(第一列的坐标为0)
  • 伤害值(Int):设置樱桃炸弹爆炸伤害(默认为1800伤害)
最新版本:3.6 最新版本:3.7 说明
节点-关卡触发-创建梯子-3.6.png
让僵尸可以攀爬坚果墙

输入端口:

  • 触发(Trigger):触发创建梯子(不需要创建位置有植物)
  • 行(Int):设置创建梯子的坐标行(第一行的坐标为0)
  • 列(Int):设置创建梯子的坐标列(第一列的坐标为0)
最新版本:3.6 最新版本:3.7 说明
节点-关卡触发-创建弹坑-3.6.png
创建无法种植的弹坑

输入端口:

  • 触发(Trigger):触发创建弹坑(不会摧毁创建位置已经存在的植物)
  • 行(Int):设置创建弹坑的坐标行(第一行的坐标为0)
  • 列(Int):设置创建弹坑的坐标列(第一列的坐标为0)
最新版本:3.6 最新版本:3.7 说明
节点-关卡触发-创建冰块-3.6.png
创建冰块(可包含被冻住的植物)

输入端口:

  • 触发(Trigger):触发创建冰块(不会摧毁创建位置已经存在的植物)
  • 行(Int):设置创建冰块的坐标行(第一行的坐标为0)
  • 列(Int):设置创建冰块的坐标列(第一列的坐标为0)
  • 冻住的植物(PlantType):设置冰块中的植物(默认为豌豆射手)
最新版本:3.6 最新版本:3.7 说明
节点-关卡触发-创建小丑爆炸-3.6.png
小丑僵尸爆炸效果

输入端口:

  • 触发(Trigger):触发释放小丑爆炸效果(是敌方的,100万伤害)
  • 行(Int):设置小丑爆炸释放的坐标行(第一行的坐标为0)
  • 列(Int):设置小丑爆炸释放的坐标列(第一列的坐标为0)

工具

  • 背景:黄色 #ccb24b
  • 作用:获取游戏状态信息。
节点-工具.png
  • 获取当前阳光:获取玩家当前的阳光数量
最新版本:3.6 最新版本:3.7 说明
节点-工具-获取当前阳光-3.6.png

输出端口:

  • 阳光数量(Int):输出当前持有的阳光数量

值

  • 背景:蓝色 #6699ff
  • 提供各种类型的数据。
节点-值.png
  • 整数:提供一个整数值
  • 浮点数:提供一个小数值
  • 布尔值:提供true或false
  • 字符串:提供一段文字
  • 计数器:记录触发次数(每次+1)
最新版本:3.6 最新版本:3.7 说明
节点-值-整数-3.6.png
提供一个整数值

键入端口:

  • 1(Text):可以输入一个整数

输出端口:

  • 值(Int):将输入的整数输出
最新版本:3.6 最新版本:3.7 说明
节点-值-浮点数-3.6.png
提供一个小数值

键入端口:

  • 3(Text):可以输入一个数,该数值可以带小数点

输出端口:

  • 值(Float):将输入的浮点数输出
最新版本:3.6 最新版本:3.7 说明
节点-值-布尔值-3.6.png
提供true或false

设置端口:

  • □(Button):默认为False,可以在True(✓)和False间切换

输出端口:

  • 值(Bool):将设定的布尔值状态输出
最新版本:3.6 最新版本:3.7 说明
节点-值-字符串-3.6.png
提供一段文字

键入端口:

  • 默认文本(Text):可以输入一段文本

输出端口:

  • 值(String):将输入的文本输出
最新版本:3.6 最新版本:3.7 说明
节点-值-计数器-3.6.png
记录触发次数(每次+1)

输入端口:

  • 触发(Trigger):触发计数
  • 是否重置(Bool):默认为False,当输入True时,本次计数信号将会把计数器重置为0(输出也为0)

输出端口:

  • 计数(Int):输出当前的计数值(初始值为0)
  • 计数完成(Trigger):每一次计数完成后发出触发信号

使用技巧:

  • 配合 逻辑-循环 节点将一个数值暂时储存
    • 有些数值会在植物死亡后失效,也可能会被覆盖。如果不能立即使用这个数值,就需要把它存起来
    • 3.7版本后使用 变量 类节点可以做得更好

节点例题-储存数值.png

  • 在使用完该数值后,或是下一次调用该组合之前,使用 逻辑-脉冲 节点将计数器重置

节点例题-重置计数.png

  • 配合 比较-整数比较 节点,可以在输入多次重复的触发信号时,仅发出一次执行信号
节点例题-仅执行一次.png

逻辑

  • 背景:紫色 #8066e5
  • 作用:控制事件流程和条件判断。
节点-逻辑.png
  • 条件分支:根据布尔条件选择执行不同的分支
  • 等待:延迟指定时间后继续执行
  • 循环:重复执行指定次数
  • 随机触发:随机对之后连接的节点发出触发信号
  • 周期切换:开启时周期性触发事件
  • 开关:每次触发在开/关之间切换
  • 脉冲:触发时发送瞬时信号
  • 反转:将True变False,False变True
  • 且:两个条件都为True时才输出True
  • 或:任意一个条件为True就输出True
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-条件分支-3.6.png
根据布尔条件选择执行不同的分支

输入端口:

  • 触发(Trigger):输入触发信号
  • 条件(Bool):输入要判断条件的真假

输出端口:

  • 真(触发)(Trigger):条件为True时从这里发出触发信号
  • 假(停止)(Trigger):条件为False时从这里发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-等待-3.6.png
延迟指定时间后继续执行

输入端口:

  • 触发(Trigger):触发等待
  • 持续时间(Float):设置等待多少秒

输出端口:

  • 触发(Trigger):等待时间结束后发出触发信号
    • (即使在上一次等待时间内又收到其他触发信号,也不会互相干扰,会确实的按照先后传出正确次数的触发信号)
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-循环-3.6.png
重复执行指定次数

输入端口:

  • 触发(Trigger):触发循环
  • 循环次数(Int):设置一个触发信号内要执行循环的次数

输出端口:

  • 循环体(Trigger):每一个循环周期发出一次触发信号
  • 当期索引(Int):同步传出当期循环周期在所有循环内所排列的序号
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-随机触发-3.7.png
随机对之后连接的节点发出触发信号

输入端口:

  • 触发(Trigger):传入触发信号
  • 触发数量(Int):设置总共可以发出的触发信号数量
  • 重复触发(Bool):默认为False,即之后连接的节点每个最多只能被触发一次;若填入True、且之后连接的节点数量少于最大触发数量时,可以重复触发已经触发过的节点

输出端口:

  • 触发(Trigger):当连接多个节点时,随机向其中发出触发信号
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-周期切换-3.6.png
开启时周期性触发事件

输入端口:

  • 触发(Trigger):传入触发信号开始/关闭周期切换
  • 周期间隔(Float):设置切换周期

输入端口:

  • 周期事件(Trigger):当开始周期切换后,每一个切换周期发出一次触发信号(开始周期的那一次时间点不算)
  • 切换开始时(Trigger):当未开始周期切换时,第一个传入的触发信号会开启周期切换,并传出一次触发信号
  • 切换关闭时(Trigger):当已经在周期切换中,第一个传入的触发信号会关闭周期切换,并传出一次触发信号
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-开关-3.6.png
每次触发在开/关之间切换

输入端口:

  • 触发(Trigger):触发切换开关的True/False状态

输出端口:

  • 状态(Bool):初始状态为False,第一次传入触发信号改为True,之后的触发信号依次在False和True之间切换
  • 状态改变时(Trigger):每一次开关状态改变时(即每一次有触发信号传入)同步发出一次触发信号

使用技巧:

  • 配合 逻辑-等待 等节点,可以在触发某些事件后,暂时阻止另一个事件的触发

节点例题-事件开关.png

  • (当然,你也可以在其他时机关闭开关,比如说已经完成第一个事件)
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-脉冲-3.6.png
触发时发送瞬时信号

输入端口:

  • 触发(Trigger):触发产生脉冲

输出端口:

  • 脉冲触发时(Trigger):发出触发信号(可以当触发信号中继节点使用)
  • 状态(Bool):发出触发信号的这一瞬间,为True(主要用于重置 计数器)
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-反转-3.6.png
将True变False,False变True

输入端口:

  • 输入(Bool):输入布尔值状态

输出端口:

  • 输出(Bool):将反转后的布尔值状态输出
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-且-3.6.png
两个条件都为True时才输出True

输入端口:

  • 条件A(Bool):输入第一个条件
  • 条件B(Bool):输入第二个条件

输出端口:

  • 结果(Bool):当两个条件都为True时,输出True;若仍意一个条件为False时,输出False
最新版本:3.6 最新版本:3.7 说明
节点-逻辑-或-3.6.png
任意一个条件为True就输出True

输入端口:

  • 条件A(Bool):输入第一个条件
  • 条件B(Bool):输入第二个条件

输出端口:

  • 结果(Bool):当仍意一个条件都为True时,输出True;若两个条件都为False时,输出False

比较

  • 背景:粉紫色 #e680b2
  • 作用:比较两个值的大小关系。
节点-比较.png
  • 整数比较:比较两个整数(大于、小于、等于)
  • 浮点数比较:比较两个小数
  • GameObject比较:比较两个对象是否相同
最新版本:3.6 最新版本:3.7 说明
节点-比较-整数比较-3.6.png

输入端口:

  • 值A(Int):输入第一个整数
  • 值B(Int):输入第二个整数

输出端口:

  • 大于(Bool):当整数A大于整数B时,输出True;其他时候输出False
  • 小于(Bool):不废话了……
  • 等于(Bool):……
最新版本:3.6 最新版本:3.7 说明
节点-比较-浮点数比较-3.6.png

输入端口:

  • 值A(Float):输入第一个浮点数
  • 值B(Float):输入第二个浮点数

输出端口:

  • 大于(Bool):当浮点数A大于浮点数B时,输出True;其他时候输出False
  • 小于(Bool):不废话了……
  • 等于(Bool):……
最新版本:3.6 最新版本:3.7 说明
节点-比较-GameObject比较-3.6.png

输入端口:

  • 对象A(GameObject):输入第一个GameObject对象
  • 对象B(GameObject):输入第二个GameObject对象

输出端口:

  • 相同(Bool):当两个GameObject对象相同时,输出True;其他时候输出False

运算

  • 背景:青绿色 #66cc98
  • 作用:进行数学运算。
节点-运算.png
  • 加法:浮点数相加
  • 减法:浮点数相减
  • 乘法:浮点数相乘
  • 除法:浮点数相除
  • 整数加法:整数加法
  • 整数减法:整数减法
  • 整数乘法:整数乘法
  • 整数除法:整数除法(向下取整)
  • 整数取模:
  • 字符串拼接:连接两段文字
  • 随机整数:生成范围内的随机整数
  • 随机浮点数:生成范围内的小数
最新版本:3.6 最新版本:3.7 说明
节点-运算-加法-3.6.png
浮点数相加

输入端口:

  • A(Float):输入第一个浮点数
  • B(Float):输入第二个浮点数

输出端口:

  • 结果(Float):将两个浮点数之和输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-减法-3.6.png
浮点数相减

输入端口:

  • 被减数(Float):输入第一个浮点数
  • 减数(Float):输入第二个浮点数

输出端口:

  • 差(Float):将两个浮点数之差输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-乘法-3.6.png
浮点数相乘

输入端口:

  • A(Float):输入第一个浮点数
  • B(Float):输入第二个浮点数

输出端口:

  • 积(Float):将两个浮点数的积输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-除法-3.6.png
浮点数相除

输入端口:

  • 被除数(Float):输入第一个浮点数
  • 除数(Float):输入第二个浮点数

输出端口:

  • 商(Float):将两个浮点数的商输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-整数加法-3.6.png
整数加法

输入端口:

  • A(Int):输入第一个整数
  • B(Int):输入第二个整数

输出端口:

  • 和(Int):将两个整数之和输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-整数减法-3.6.png
整数减法

输入端口:

  • 被减数(Int):输入第一个整数
  • 减数(Int):输入第二个整数

输出端口:

  • 差(Int):将两个整数之差输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-整数乘法-3.6.png
整数乘法

输入端口:

  • A(Int):输入第一个整数
  • B(Int):输入第二个整数

输出端口:

  • 积(Int):将两个整数的积输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-整数除法-3.6.png
整数除法(向下取整)

输入端口:

  • 被除数(Int):输入第一个整数
  • 除数(Int):输入第二个整数

输出端口:

  • 商(Int):将两个整数的商(向下取整后)输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-整数取模-3.6.png

输入端口:

  • 被除数(Int):输入第一个整数
  • 除数(Int):输入第二个整数

输出端口:

  • 余数(Int):将两个整数整除后留下的余数输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-字符串拼接-3.6.png
连接两段文字

输入端口:

  • A(String):输入第一个字符串
  • B(String):输入第二个字符串

输出端口:

  • 结果(String):将两个字符串前后拼接后输出
最新版本:3.6 最新版本:3.7 说明
节点-运算-随机整数-3.6.png
生成范围内的随机整数

输入端口:

  • 最小值(Int):输入第一个整数
  • 最大值(Int):输入第二个整数

输出端口:

  • 随机整数(Int):在两个整数组成的闭合区间中随机取一个整数输出(每次获取整数时,这个数值都是随机的)
最新版本:3.6 最新版本:3.7 说明
节点-运算-随机浮点数-3.6.png
生成范围内的小数

输入端口:

  • 最小值(Float):输入第一个浮点数
  • 最大值(Float):输入第二个浮点数

输出端口:

  • 随机浮点数(Float):在两个浮点数组成的闭合区间中随机取一个浮点数输出(每次获取整数时,这个数值都是随机的)

变量

  • 背景:青绿色 #66cc98
  • 作用:获取或设置全局变量。
节点-变量.png
  • 获取整数:从整数变量中将数值提取出来
  • 设置整数:为一个整数变量重新设置一个数值
  • 获取浮点数:从浮点数变量中将数值提取出来
  • 设置浮点数:为一个浮点数变量重新设置一个数值
  • 获取布尔:从布尔值变量中将状态提取出来
  • 设置布尔:为一个布尔值变量重新设置一个状态
  • 当你要获取某个变量时,需要从左侧的变量面板内将其拖出来创建节点
最新版本:3.6 最新版本:3.7 说明
节点-变量-获取整数-3.7.png
从整数变量中将数值提取出来

输入端口:

  • 变量(Variable):定位一个整数变量

输出端口:

  • 值(Int):输出该整数变量的值
最新版本:3.6 最新版本:3.7 说明
节点-变量-设置整数-3.7.png
为一个整数变量重新设置一个数值

输入端口:

  • 触发(Trigger):触发修改数值
  • 变量(Variable):定位要修改数值的整数变量
  • 新值(Int):设置要修改成的整数

输入端口:

  • 完成(Trigger):修改完成后发出触发信号
  • 变量(Variable):将修改后的整数变量传出以供其他节点获取
最新版本:3.6 最新版本:3.7 说明
节点-变量-获取浮点数-3.7.png
从浮点数变量中将数值提取出来

输入端口:

  • 变量(Variable):定位一个浮点数变量

输出端口:

  • 值(Float):输出该浮点数变量的值
最新版本:3.6 最新版本:3.7 说明
节点-变量-设置浮点数-3.7.png
为一个浮点数变量重新设置一个数值

输入端口:

  • 触发(Trigger):触发修改数值
  • 变量(Variable):定位要修改数值的浮点数变量
  • 新值(Float):设置要修改成的浮点数

输入端口:

  • 完成(Trigger):修改完成后发出触发信号
  • 变量(Variable):将修改后的浮点数变量传出以供其他节点获取
最新版本:3.6 最新版本:3.7 说明
节点-变量-获取布尔-3.7.png
从布尔值变量中将状态提取出来

输入端口:

  • 变量(Variable):定位一个布尔值变量

输出端口:

  • 值(Bool):输出该布尔值变量的状态
最新版本:3.6 最新版本:3.7 说明
节点-变量-设置布尔-3.7.png
为一个布尔值变量重新设置一个状态

输入端口:

  • 触发(Trigger):触发修改数值
  • 变量(Variable):定位要修改状态的布尔值变量
  • 新值(Bool):设置要修改成的状态

输入端口:

  • 完成(Trigger):修改完成后发出触发信号
  • 变量(Variable):将修改后的布尔值变量传出以供其他节点获取

转换

  • 背景:紫蓝色 #9999ca
  • 作用:在不同数据类型之间转换。
节点-转换.png
  • 整数转浮点数:将整数变为小数
  • 浮点数转整数:将小数变为整数(去掉小数部分)
  • 浮点数转字符串:将数字转为文字
最新版本:3.6 最新版本:3.7 说明
节点-转换-整数转浮点数-3.6.png
将整数变为小数

输入端口:

  • 整数(Int):输入要转化的整数

输入端口:

  • 浮点数(Float):将转化后的浮点数输出
最新版本:3.6 最新版本:3.7 说明
节点-转换-浮点数转整数-3.6.png
将小数变为整数(去掉小数部分)

输入端口:

  • 浮点数(Float):输入要转化的浮点数

输入端口:

  • 整数(Int):将转化后的整数(向下取整后)输出
最新版本:3.6 最新版本:3.7 说明
节点-转换-浮点数转字符串-3.6.png
将数字转为文字

输入端口:

  • 浮点数(Float):输入要转化的浮点数
  • 小数位数(Int):设置要保留的小数位数

输入端口:

  • 字符串(String):将转化后的字符串文本输出

已过时

  • 背景:灰色 #7a7a7a
  • 作用:已经有新形式的老版本节点。
节点-已过时.png
  • 获得旅行词条:给玩家添加旅行模式词条
最新版本:3.6 最新版本:3.7 说明
节点-已过时-获得旅行词条-3.7.png
给玩家添加旅行模式词条

输入端口:

  • 触发(Trigger):触发获得旅行词条

设置端口:

  • 基础词条(Menu):点击打开下拉菜单,可以选择基础词条/强究词条/僵尸词条

键入端口:

  • 0(Text):可以在此输入要获得的词条名称

实战案例

案例1:击杀奖励

目标:每击杀5个僵尸,奖励100金币

[僵尸死亡] →  [计数器]
             ├─ 是否重置 = false
             └─ 计数 →  [整数比较] 判断是否≥5
                       ├─  [条件分支]
                       │   ├─ true →  [获得金币] 100
                       │   │        →  [计数器] 是否重置=true
                       │   └─ false → (不执行)

点击显示案例1参考答案

节点例题-击杀奖励.png

案例2:定时奖励

目标:关卡开始10秒后,显示提示

[关卡开始] →  [等待]
             ├─ 持续时间 = 10
             └─ 完成 →  [显示文本] "游戏已进行10秒"

点击显示案例2参考答案

节点例题-定时奖励.png

案例3:植物保护

目标:当植物血量为0时,自动回血

[植物血量为0时] → [给植物回血]
                      ├─ 植物 =  [植物血量为0时].植物
                      └─ 恢复量 = 300

点击显示案例3参考答案

节点例题-植物保护.png

案例4:开关模式

目标:按Tab键切换攻击/防御模式

[按下Tab键] →  [开关]
               ├─ 状态 →  [条件分支]
               │   ├─ true →  [显示文本] "攻击模式"
               │   └─ false →  [显示文本] "防御模式"

点击显示案例4参考答案

节点例题-开关模式.png

案例5:波次奖励

目标:第3波来临时,获得500金币

[关卡波数增加时] →  [整数比较] 波次 == 3
                     ├─  [条件分支]
                     │   ├─ true →  [获得金币] 500
                     │   └─ false → (不执行)

点击显示案例5参考答案

节点例题-波次奖励.png

案例6:连击检测

目标:连续点击3次,触发特殊效果

[按下P键] →  [计数器]
             ├─ 是否重置 = false
             └─ 计数 →  [整数比较] 计数 == 3
                       ├─  [条件分支]
                       │   ├─ true →  [显示文本] "连击成功!"
                       │   │        →  [计数器] 是否重置=true
                       │   └─ false → (不执行)

点击显示案例6参考答案

节点例题-连击检测.png

案例7:植物卡牌管理

目标:删除所有向日葵卡牌,添加豌豆向日葵

[关卡开始] →  [删除卡槽植物卡牌]
             ├─ 植物类型 =  [植物类型] 向日葵
             └─ 完成 →  [添加植物卡牌]
                         ├─ 植物类型 =  [植物类型] 豌豆向日葵
                         ├─ 冷却时间 = 3
                         ├─ 价格 = 25
                         └─ 使用默认数据 = false

点击显示案例7参考答案

节点例题-植物卡牌管理.png

案例8:僵尸生成波

目标:关卡开始5秒后,在第3行生成3个僵尸

[关卡开始] →  [等待] 持续时间=5
             └─ 完成 →  [循环] 循环次数=3
                     └─ 完成 →  [创建僵尸] 行=2, 列=6

点击显示案例8参考答案

节点例题-僵尸生成波.png

案例9:状态检测

目标:当阳光超过1000时,显示提示

[关卡开始] →  [周期切换] 间隔=10秒
             └─ 周期 →  [获取当前阳光]
                         └─ 阳光 →  [整数比较] 阳光 ≥ 1000
                                   ├─  [条件分支]
                                   │   ├─ true →  [显示文本] "阳光充足!"
                                   │   └─ false → (不执行)

点击显示案例9参考答案

节点例题-状态检测.png

案例10:多重条件

目标:阳光充足且僵尸数量少时,提示可以种植

[按下鼠标时] →  [获取当前阳光]
             └─ 阳光 →  [整数比较] 阳光 ≥ 200
                       ├─ true →  [获取最近僵尸]
                       │           └─ 僵尸 →  [条件分支] 僵尸==null
                       │                       ├─ true →  [显示文本] "安全,可以种植!"
                       │                       └─ false →  [显示文本] "有僵尸!"
                       └─ false →  [显示文本] "阳光不足"

点击显示案例10参考答案

节点例题-多重条件.png

常见问题

Q1:如何删除节点?

A:右键点击节点,选择"删除",或选中节点后按Delete键。

Q2:如何移动多个节点?

A:

  1. 长按左键框选
  2. 拖动任意一个选中的节点
  3. 所有选中的节点会一起移动

Q3:为什么连线失败?

A:检查端口类型是否匹配:

  • 触发端口只能连触发端口
  • 数据端口只能连同类型的数据端口
  • 不同类型的数据端口不能连接

Q4:计数器如何重置?

A:将"是否重置"端口连接到一个布尔值节点:

  • true = 重置为0
  • false = 继续计数+1

Q5:如何让事件只触发一次?

A:使用计数器节点:

[事件] → [计数器]计数结束 → [比较]计数是否为1 → [条件分支]
                                         ├─ true → [执行操作] 
                                         └─ false → (不执行,已触发过)

Q6:如何延迟执行?

A:使用等待节点:

[事件] →  [等待] 持续时间=3
             └─ 完成 →  [要执行的操作]

Q7:如何组合多个条件?

A:使用"且"(AND)或"或"(OR)节点:└─

[条件A] →  [且] 
[条件B] →  [且] → 结果(两个都为true才输出true)


Q8:如何获取植物或僵尸对象?

A:使用"植物种植时"或"僵尸生成时"事件,它们会输出植物/僵尸对象。

Q9:端口颜色代表什么?

A:

  • 🔴 红色端口 = 触发(Trigger)
  • 🔵 蓝色端口 = 数据(各种类型)
  • 不同颜色的数据端口代表不同类型,需要匹配才能连接

Q10:为什么测试时游戏会崩溃

A:可能是某些节点陷入无间隔死循环或循环次数过多。

  • 无间隔死循环经典案例:
[事件] → [循环] 循环次数=2 → [循环] 循环次数=3
           ↑                  │
           └─────────┘
  • 循环次数过多经典案例:
[事件] → [循环] 循环次数=999 → [循环] 循环次数=999

Q11:如何在显示文本中插入变量/计数器

A:使用"字符串拼接"和"转换"中的节点:

  • 插入变量示例:
[整数变量]"整数变量A" → [获取整数] → [整数转浮点数] → [浮点数转字符串]
[事件] → [显示文本] 持续时间=3                               │    
             └─ 文本 ←──── 结果 [字符串拼接]┬─ A ←─┘
                                                   └─ B ←──[字符串]"个"
  • 插入计数器示例:
[计数器]计数 → [整数转浮点数] ──────────→ [浮点数转字符串]
[事件] → [显示文本] 持续时间=3                               │    
             └─ 文本 ←──── 结果 [字符串拼接]┬─ A ←─┘
                                                   └─ B ←──[字符串]"个"

进阶技巧

分组管理

  • 使用框选功能选中相关节点,右键选择"创建分组",方便管理复杂的事件。

复制粘贴

  • 选中节点后按Ctrl+C复制,Ctrl+V粘贴,可以快速创建相似的节点结构。

性能优化

  • 避免创建过多的周期性事件
  • 合理使用"等待"节点而非快速循环
  • 及时清理不需要的连接



祝你创作愉快! 🌻