任务完成语句
ofp:missioncompleted()
如何触发就随便你了.
============================
刷兵方法
首先点击 右侧create栏右边的explorer
在 entety sey view 目录下面空白处点一下 再选择+ add entity set
增加一个entity set 我们这里他命名为es1.单击es1灰色目录图标打勾,
然后再右键es1选exportable 最后图标就是一个黄色打勾的目录.
然后create加入几个suqad,拖选整个suqad,在squad的modify里的entity set 里选择刚
才创建的es1
这里整个entity set的es1 是不激活的状态.默认只激活startup.所以进游戏后并不会刷
兵,这样我们就可以在编辑器里随便放兵,然后再增加刷兵条件.注意刷出的兵+存活的不
能大于64否则出不来.
添加脚本增加刷兵的事件.
创建一个脚本 create-systems-scripting-level script(can handle evets)
激活,激活后兵就刷出来了.
ofp:activateentityset("es1");
刷兵,不激活刷不出来.
ofp:spawnentityset("es1");
下面举出几个例子双击level.lua
=================================
游戏一开始时刷es1里的兵
function onmissionstart()
ofp:activateentityset("es1");
end
=================================
进触发区时刷兵
创建一个触发区
create-systems-mission-triggers events.......(红色那个图标)
这里我们将检测命名为 zone1
之后在level.lua加入
------------------------------
增加一个计数,看要刷几次
function onmissionstart()
ckzon1 = 0;
end
进入触发区,判断=0时第一次刷所以只要激活es1就可以,下次就要用spawnentityset
function onenter_zone1(zonename, unitname)
if ckzon1 == 0 then
ofp:activateentityset("es1");
ckzon1 = 1;
else
ofp:spawnentityset("es1");
ckzon1 = ckzon1 + 1;
end
end
离开触发区,判断刷5次后就关闭刷兵事件,下次再进触发区就不刷了.
function onleave_zone1(zonename, unitname)
if ckzon1 > 5 then
ofp:disableevent("onenter_zone1");
end
end
====================================
还有一种就是单位死亡检测
建议用小队检测.
单个检测就选个ai,name这里我改为sz1
小队的话就在小队echeloni盾牌上命名
当 sz1死亡时触发
function ondeath_sz1(victim, killer)
ofp:spawnentityset("es1");
end