CocoStudio新功能教程——触发器
不知道大家有没有玩过魔兽争霸。打油诗“一刀刀一天,单手能逆天,妹子放一边,基友围一圈”充分描述了这个游戏对于玩家的吸引力。
为什么它能够这么吸引人呢?我想自定义地图应该是贡献最大的地方。千人千面,一千个人也必然会做出一千个地图出来,虽然界面、任务都是类似的,但玩法却会各不相同。玩家再也不会因为地图单一而感觉枯燥了。
事实上这个地图编辑器的核心技术就是我们今天讲的“触发器”。“触发器”就是负责控制和疏导游戏玩法以及剧情走向的工具。创建游戏内剧情动画、玩家活动、创建和跟踪任务目标等等,都是通过“触发器”来进行的。触发器是对编程的高度抽象化。你可以不用程序代码来实现一个游戏的效果。
“触发器”可以视作为一组游戏指令的最基本构成单元。无论你何时想要在游戏中产生何种事件,你都可以使用一个“触发器”来指示游戏,游戏会准确地按照你的要求产生事件。
一个触发器由以下几种元素组成:
- 事件:即导致“触发器”运行的原因。如果我们想创建一个“当屏幕被点击时如果英雄A在屏幕的左边则移动英雄A到屏幕右边”的触发器时,那么这个触发器的事件就应该是“点击屏幕”。事件是触发器的核心,只有当事件被触发(可以理解为当某些事或某个条件发生)的时候才可能继续其他的功能。
- 条件:条件是指该“触发器”运行所需要满足的特定条件。只有当条件满足的时候才认为事件是自己需要的事件。通过条件我们可以过滤事件,使只有符合要求条件的事件才能够完成一个“触发器”的最终操作。如上边的例子中的条件就是“英雄A在屏幕的左边”。
- 动作:动作即是当该“触发器”运行时游戏将会执行的指令。这个指令可以是任何对游戏的操作。在上边的例子就是“移动英雄A到屏幕右边”
通过上面的描述大家应该对“触发器”有了一定的认识,下面带领大家认识一下在cocostudio场景编辑器的使用。
首先打开场景编辑器,我们直接选择Cocostudio给我我们准备的示例资源,点击“FightScene”这个格斗场景。
编辑器会自动给我们拷贝一份工程。通过这个场景我们可以实现一个上面说过的“触发器”。点击触发器按钮可以打开触发器编辑窗口。
在左侧列表中点击右键创建一个触发器。

第一步先选择一个事件。这一步很简单,只需要在列表中选一个就好。
第二步设置条件,我们这里选择“IsNodeInRect”,它是判断一个节点是否在指定区域的条件。 先设定好判断的node的tag值,然后设置区域大小,Rext.origin表示区域的中心点,Rect.size表示区域的大小。
第三部设置动作 我们选择“Move to”移动到。设置节点tag,并设置移动终点的位置x/y;Duration表示持续时间。
为了移动的时候有效果,我们再在这个触发器里添加一个“ArmaturePlayAction”的动作。选择node的tag,然后修改AniName为“run”。
这样一个完整的触发器已经编辑完成了。
因为这个功能是直接在模拟器里查看效果,我们直接运行模拟器看下效果。
以上这些事利用场景编辑器自带的配置实现的效果,上面所有的配置我们都是可以自己设计修改的。







我看了你ID一眼就知道你又来水了
说不定以后码农只用做打包工作了