1.魔兽争霸的所有地图都是用它来制作的,它是一款万能编辑器,其功能非常强大。
2.点击触发事件编辑器(按F4也可以),创建新的触发类别,在新的类别里创建新的触发器,你可以给他命名,新的触发器包括 事件—条件—动作 三个元素。我给你解释一下。
事件:即一个事件或是任务、剧情的开始,也可以这样理解,举个例子,上课铃响了就是一个事件,或是早上8.00到了也是一个事件,这意味着接下来我们该上课了,也可以把事件理解成为导火索吧!
条件:接着上面的例子来说,早上8.00到了,如果是周一至周五。那么我们就得上学(班),如果是周末,我们就休息,也就是说不做出相应的动作!这里上学及上班就是动作!
动作:具体的各项命令,如上学,上班,吃饭等,当然这里是用现实生活中的例子来打比方!那么下面我们就来看一个例子以帮助大家理解这三个部份!
引用某位圣人的一个经典例子:
有一个花园,花园里面有一条狗!
事件-一个人进入花园
环境-此人是狗的主人
动作-狗摇尾巴
或者是
事件-一个人进入花园
环境-此人不是狗的主人
动作-狗就叫
这个就是一个简单的触发器了。
3.下面是一个简单的触发事件,用它作为例子。
事件:每30秒周期 (操作:事件类型选择时间,然后选择时间周期事件,把时间改为30秒)
条件:无(条件可有可无,根据你的意愿来编辑,这个触发器不需要条件)
动作:创建10个步兵给玩家一在XX矩形区域.默认朝建筑物的方向.(操作:动作类型选择单位,然后选择创建单位(面向角度),把数量改为10,把指定点里的可用地图区域改为你创建的区域(区域在工具面板里的区域面板里创建)
这样一个简单的触发事件就创建完成!接下来可以去测试一下!
如果是自己想要更进一步了解更多的话则可以找一些其他的教程或是演示!
事件里面可以分为时间,单位,初始化等多个类型,各位可以打开WE里的触发器自己研究,环境和动作的内容则就更多了,在这里不可能都作介绍,这些都还得自己去研究学习了!
圣人的例子完整版(不为分,只为吸引你到WE的世界中)
首先解释TRIGGER的概念,在详细解释前先看这么一个例子:“有一个花园,里面有一只狗,除了这只狗的主人以外,任何其他人进入花园就会被狗咬。”
不难看出这个例子一共由2大部分组成,1个是参与者,1个是事件。
先看看参与者是哪些,也就是如果要让例子里面的事件发生,必须有哪些东西。首先,事件发生的场地是花园,其次事件的主角是人,最后配角是狗,当然主角配角什么的各位也不必搞那么清楚,只要知道这个事件的参与者是花园,人,狗就可以了。
接着是看看发生了什么事件,分几个步骤,首先如果没有人进入花园就什么也不会发生,那么整个事件的开端就是一个人进入花园。接下来即使有人进入了花园,但是如果那个人是狗的主人,那么狗也什么都不会做,所以发生“狗咬人”事件的必要条件就是进入的人不是狗的主人。最后,如果以上2点都满足了,那么进入的人就会被狗咬啊那个被狗咬(狗:嘿嘿,没错,被咬~),所以这个事件的结果就是狗咬进入的人。
通过以上的例子,大家应该看出来,一个事件是由参与者来执行的,而事件本身是由开端,必要条件,结果3部分组成的。
好了,回到上面的例子,在WE(World Editor-世界编辑器)里面,一个事件通常被成为一个trigger(触发),而参与事件的东西称做object"对象“而事件的开端被称为event“开端”,必要条件称为condition“条件”,事件结果被称为action“动作”。那么现在上面那个例子就可以写成这个样子了:
events
一个人进入花园
conditions
进入的人不是狗的主人
actions
狗咬进入的人
现在根据上面这个改造版的事件来说明一个trigger各部分的具体含义,首先在events中出现了“人”和“花园”2个object,在WE中,类似“人”这种object,被称做unit“单位”,在魔兽中,步兵啊,生命之树啊,恶魔猎人啊,统统属于unit这个类别。而说到花园这个东西,首先要明白“人”进入的是1个区域,而这个区域在以上例子里面就是这个花园,所以花园,峡谷,房间或者什么都没有就一片空地等类似的让unit可以enter“进入”的玩意,被叫做region“区域”。
所以上面的event现在可以写成:
a unit enters REGION_花园(一个单位进入“花园”)
其次来看看condition:“进入的人不是狗的主人”,这在WE里面是一个单位的判断,也就是说看看entering unit“进入的单位”到底是不是狗的主人这个特定的单位,那么这个condition就可以写成这样了:
entering unit not equal to UNIT_狗的主人(进入的单位不是“狗的主人”)
最后来看看action部分——“狗咬进入的人”,那么这句话的具体含义就是给狗下达了一个命令,这个命令的目标是“进入的单位”,命令的内容是“攻击”。所以这个action应该写成这样:
order UNIT_狗 to attack entering unit(命令狗攻击进入的单位)
最后把以上3部分综合起来,就成了这样的:
events
a unit enters REGION_花园
conditions
entering unit not equal to UNIT_狗的主人
actions
order UNIT_狗 to attack entering unit
那么让我们在WE里面实现上面这个trigger吧~~
在WE里按F4打开trigger编辑面板,把Initialization-Melee Initialization这个trigger里面除了的Melee game-Use melee time of day(for all player)这个actions以外的所有其他actions全部删除,那些actions是为melee设计的,在目前我们要做的地图里面没用。接着左上方点白色方块图标来创建一个新的trigger。
新建好的trigger会自动命名为untitled trigger 001,你可以通过点击—F2的方法修改名字。点击上中的红旗(不要告诉我你找不到.很好找的),创造一个新的事件,然后选择unit-unit enter regions,这时候会出现一个对话框。
我们要选择一个区域,这个区域相当于“花园”,点击红色的region,接着在跳出的面板中点击select a region,接着会跳回地形编辑界面,按一下空格键使区域面板左上的那个方形按钮处于按下的状态,按住鼠标左键并且拖动鼠标在地图上拉出一个方形的框,然后放开鼠标左键,还可以点击四个角拖动进行放大缩小。
这个时候一个区域就创建好了(直接打开区域面板的方法是在地形编辑界面中按R),按下空格使区域面板左上的那个方形按钮处于弹起状态,点一下刚才创建的区域区域,这样就在event中选定创建的区域了,接下来连点2次OK,这样这个trigger的enevt就创建好了。然后在地形面板中按R,双击刚才选定的区域,将之改名为“HuaYuan”(注意,region的名字不能输入中文)
这时候所创建的event应该是:
events
Unit - A unit enters HuaYuan
这里的
接着是condition,在trigger面板中按鼠标右键,选择new coditions,然后选择unit comparison,接着点击triggering unit,在下拉菜单中将之改为entering unit。
点击equal to将之改为not equal to
点击value,再点select a unit,在出现的单位面板中选择山丘之王,在地图上点一下创建一个山丘之王(注意,按ctrl+R打开查看region的功能,确保山丘之王没有被放在刚才创建的region-"HuaYuan"里面),然后按下空格关闭创建单位,再点一下创建好的的山丘之王,这样就在condition里面选中山丘之王了。
连续点OK2次,这时候的condition应该是这样的:
conditions
(Entering unit) Not equal to 山丘之王0000
山丘之王后面的数字是单位的编号,不用去管它。这时候conditions也创建完毕~~呼呼,好累,打字手打肿了………………
最后只有actions啦,有了以上的经验,我就不那么详细介绍了,过程是这样的:new action - unit - issua order targeting a unit - order “幽灵狼”(和山丘之王创建方法相同,只不过创建在“HuaYuan”内而已) to Attack Entering unit。这样创建好的action应该是这样:
actions
Unit - Order 幽灵之狼 (等级1) 001
最后,在unit editor里面把山丘之王的名字改成“主人”,幽灵狼的名字改成“狗”,再把“HuaYuan”这个区域铺上草,在区域外面放些unit就ok啦(打开unit面板的快截键是U),按ctrl+F9测试一下吧~~,怎么样除了“主人”以外的所有unit进入“花园”都要被“狗”K吧。遇到什么问题参照给出的演示自己修改吧~
如果你需要更多,可以告诉我,或者到 魔兽地图编辑器吧 里找精品贴看