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