现在根据上面这个改造版的事件来说明一个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,接着会跳回地形编辑界面,按一下空格键使区域面板左上的那个方形按钮处于按下的状态,按住鼠标左键并且拖动鼠标在地图上拉出一个方形的框,然后放开鼠标左键,还可以点击四个角拖动进行放大缩小。
这时候所创建的event应该是: events Unit - A unit enters HuaYuan<gen> 这里的<gen>只是一个识别符号,没有特殊意义,可以不去管它。 接着是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<gen> 山丘之王后面的数字是单位的编号,不用去管它。这时候conditions也创建完毕~~呼呼,好累,打字手打肿了……………… 最后只有actions啦,有了以上的经验,我就不那么详细介绍了,过程是这样的:new action - unit - issua order targeting a unit - order “幽灵狼”(和山丘之王创建方法相同,只不过创建在“HuaYuan”内而已) to Attack Entering unit。这样创建好的action应该是这样: actions Unit - Order 幽灵之狼 (等级1) 001 <gen> to Attack (Entering unit)