首页 闪点行动2编辑器

闪点行动2编辑器

举报
开通vip

闪点行动2编辑器《闪点行动2》任务编辑器教程 任务编辑器感想:该编辑还是比较容易懂的。对脚本语言一巧不通的人也摸出了点门道。 教程一-------------------初识界面,放置单位,单位属性 教程二-------------------路径点 教程三-------------------部队编组 教程四-------------------初识lua脚本 教程五-------------------如何显示小黄棋 教程六-------------------如何制作任务 教程七-------------------如何...

闪点行动2编辑器
《闪点行动2》任务编辑器 教程 人力资源管理pdf成真迷上我教程下载西门子数控教程protel99se入门教程fi6130z安装使用教程 任务编辑器感想:该编辑还是比较容易懂的。对脚本语言一巧不通的人也摸出了点门道。 教程一-------------------初识界面,放置单位,单位属性 教程二-------------------路径点 教程三-------------------部队编组 教程四-------------------初识lua脚本 教程五-------------------如何显示小黄棋 教程六-------------------如何制作任务 教程七-------------------如何刷兵,如何删除出来的刷兵 教程八-------------------路径点高级应用 教程九-------------------实例应用 教程一:初识界面,放置单位,单位属性。 可以看到图片所示。界面很简单。 要做个最最简单的地图就是把解放军,和美军拖到地图上,然后选中一个单位在属性界面里把AI换成player就可以了。下面图片的属性的简单介绍 如图 没什么难点随便选择了玩玩就可以了。 教程二: 路径点 因为路径设置已经有人写过比较好的帖子,我(所有的“我”代表原作者)复制如下(感谢原作者vid190): 很多人都要问道怎么让AI自动走路,下面简单介绍下,会了这个你也就差不多能做个极为简单的防御地图了 举例做一个让AI一开始就自己移动一段距离的任务 (1)首先加入AI,在Create面板里的USMC跟PLA下的,Fireteams 火线小组 Soldiers 单兵 Squads 一个班 ,这些就不多介绍了,自己选择个小队加入。然后在设置自己,这里要注意了,如果让AI自己移动那么这个移动的队伍里不能有你自己。不然系统会自己默认让你自己发号施令指挥队友。自己在Soldiers选择个自己喜欢的加上,让后在地图上在自己加入的这个人物图标上单击右键选择Set Control Mode Of This Character - Player 就设置为自己了,但是如果设置的为敌方那就不用考虑自己了。 (2)然后是设置路径点。在Create面板里的Systems下的,Mission里选择 Waypoint 路径点。然后在地图上画出路径点,这里要注意,每到一个路径点队长都会 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 下一个路径点,所以不要点太多,不然每走几步队长就得乌拉乌拉的。然后选择AI,不包括你自己,这里可以全选也可以点击小队的盾牌,也可以单选。怎么都可以。选择后在他们的图标上点右键选择Pick Waypoint 这时图标会变灰但是路径点还是亮着的,选择你刚才设置的第一个起始路径点就可以了。 技巧一. 关于怎么样设置迂回,同理只要在终点路径点上右键单击并选择Pick Next Waypoint 然后点击起始路径点即可。这时会看见路径线的两个箭头会重合相对,意思就是AI会在这两点上来回游走。当然你也可以画个圈,反正怎么画随你。 技巧二. 如果你想让AI跑步以最快的速度行进,那只要点击路径点然后选择右边Modify-Waypoint下的Rapid Move,把它点亮就可以了。然后你会看见路径线变成多箭头,既是成功。 技巧三. 当然这时你可能看到Rapid Move下的Stance选项,它是设置到这个路径点用什么样的姿态,依次为正常直立行进,蹲着行进,还有匍匐前进。 技巧四. 然后你会看到Stance下面的Doctrine选项,虽然这个单词很难理解,但也是跟姿态有关。依次说下你们就明白了。第一个命令后的姿态,就是说队长命令AI什么样AI就保持什么样的姿态,然后第二个是巡逻姿态,就是心不在焉的那种。第三个事正常姿态。第四个也是个巡逻姿态,但是是非常警觉的那种,也可以理解成搜寻姿态。第五个就是战斗姿态了。然后这里下面的Formation我们简单介绍下,就是行进队形。明白了吧,什么代表什么队形游戏中熟悉这里就不做多介绍了。 技巧五. 然后是Delay选项,顾名思义就是延迟,就是到达次路径点后等待多长时间再移动到下个路径点。单位是毫秒,注意不是秒。1000毫秒=1秒。要是设置60分钟就得是 3600000 教程三:部队编组 因为部队编组已经有人写过比较好的帖子,我复制如下(感谢原作者vid190): (1)我们先在Soldiers重选择5个单兵,放到地图上去,因为一个小队最多5个人,你选6个也编不到一块去。 然后我们在看Create-Systems-AI-下的Echelon图标。这个事我们以后编辑任务的常用图标,就是小队图标。 我们在地图上加一个。 (2)然后我们就可以把这5个人编辑成一小组,我们可以在Echelon图标上点击右键选择Pick Parent Echelon单个选择单兵, 也可以在单兵图标上点击右键选择Pick Parent Echelon指向Echelon图标。在就可以用鼠标全选,或者按住Ctrl挑选。 (3)这时我们看到五个单兵都用线指向Echelon图标,并且Echelon图标被点亮了。然后我们看到这五个单兵中有一个带有白色黑点小盾牌图标的,这个就是队长了。怎么样设置队长呢,我们来说下。首先选择你那个要设置队长的单兵,然后在右下角Modify面板中找到Hierarchy面板中的Leadership选项,我们看到数值有100,200,300这样的,说到这有的人明白了吧,数越大级别越高。小队中级别最高的就是队长。 而后面的Reset就是还原成默认,还有就是什么样的级别对应什么样军衔,在下一课中Rank属性中有介绍,不然一个小兵命令一个将军就糗大了,(400为小队长,800为大队长。) (4)小队任务说完了,然后我们再说编辑班级队伍,就是把编辑好的几个小队组成一个大队。 把刚才编辑好的Ctrl+c Ctrl+v再复制出4个来。然后再加入一个Echelon图标,聪明人到这个都应该明白再怎么设置了吧, 在每个小队的Echelon图标上点击右键选择Pick Parent Echelon指向新加入的Echelon图标。这时你会看到。新加入的图标变成两个黑点。 这就是一个大队的标志。5个小队都选择完毕后你会看到这25人其中有一个人有两点白色盾牌标记,那个就是大队长了。关于怎么设置大队长,同上面的第3节,这里就不啰嗦了。 要点:加入军官时要小心,只要一个就够了,不要重复加入,系统不支持多军官。 还有就是你最多只能控制9个单位,就是说最多只能命令24个人,1到9,1是你自己,2到5是你小队的人,6.7.8.9是另外4个小队。 教程四:初识lua脚本 编写level.lua是此编辑器的灵魂核心。 请不要看见代码就犯晕,其实都很简单。 我之前对脚本语言一窍不通,不对之处多多指教。 首先我们点到右上角界面中system然后拖动 图标在地图上。地图上选中该图标,在标签栏就会出现level.lua标签。如图所示。 二我们打开标签level.lua,在输入界面里输入: function onMissionStart() OFP:showLetterBoxOsd(true); end 请不要晕,我们慢慢的一行行的解释。 首先第一行: function onMissionStart() 意思可以这么理解“当游戏开始的时候”这段代码就是这个意思。看到function就是“当什么什么的时候”。onMissionStart()意思是游戏开始。 再看第二行 OFP:showLetterBoxOsd(true); OFP:触发。showLetterBoxOsd(true)意识是给出信框。 end为结束,记得end要和function连用。 很简单把.整段代码的作用是: 当游戏开始的时候 触发:出现信框。             --要满足function onMissionStart()否则不触发。 效果: 就是我们在玩任务的时候一开始,屏幕上下的黑幕。 再看个例子: function onDeath_huang(victim, killer) OFP:missionFailed(); end 看到function就是“当”, 第一行意为“当huang这个单位死了” 第二行:触发:任务失败;        --要满足function onDeath_huang(victim, killer)否则无法触发。 效果:只要huang这个名称的兵死了任务将失败。 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 下:写level.lua不外乎就是当什么什么的时候,触发什么什么。很简单吧。 教程五:如何显示小黄棋 这个图标在游戏中起到指南的作用,让玩家一步步顺者提示走。(该图标只有指南作用,没有完成任务的作用,也就是说这个图标配合任务图标才能完美任务) 用法很简单就是点击system里的把 拖动到地图上就可以了,如果拖动多个 就要将他们之间互相连接起来,类似路径点。属性里设置下名称大小等就可以了。 但是很多朋友可能遇到这样个问题,明明把 放在了地图上。但是测试游戏里面就是不见!!!!!!! 其实关键是我们没有触发。 好,一一来实现。 首先拖动 图标到地图上,然后再拖动 到地图上,并且在 的属性name命名为point1,让后点击level.lua标签 输入: function onMissionStart() OFP:activateRVChain("point1"); End 这样看来就很简单了把: 当游戏开始的时 触发:point1这个旗。 效果: 进入游戏后我们就能看到这个小黄棋在坐标上啦。 备注:如果有多个00并且之间相连,那么在level.lua里只要触发第一个棋子的名字就可以了,其他后面的棋子都可见到了。 教程六:如何制作任务 要制作好的任务必须配合上一章的内容。根据小黄棋的提示来完成任务。(当然你不用小黄旗也是可以的) 我们先来做个最简单的任务。 首先在右上角的界面里击system标签然后把 拖到地图上,然后点击 把属性里把name写成objective,后在把type里面选择成primary objictive 1.意思是这个是主要任务一,再把army设置成PLA,意思是PLA的任务。如图所示: 这样任务就能显示了。 不过现在还没有任务的实际内容,所以我们还要写level.lua 再拖一个 到地图上,再随便拖一辆坦克在地图上并且在name里设置为tank1.然后后打开.lua 输入以下代码: function onDeath_tank1(victim, killer) OFP:setObjectiveState("objective"," COMPLETE "); End 这个代码很容易懂。 意思是: 当tank1被摧毁 触发:任务objective完成。 效果:把坦克打爆,则任务完成 哈哈 是不是超级简单 当然这里你要把 和坦克放在一起,或者在 的属性栏里面的linked to里面选择tank1。这样才能准确的定位坦克的位置,不然任务和内容就不匹配了。 这样一个简单的任务就制作完成了。 还可以对该代码改进一下,如: function onDeath_tank1(victim, killer) OFP:setObjectiveState("objective"," COMPLETE "); OFP:missionCompleted(); end 意思是该任务完成并且所有任务完成退出游戏。 下面介绍下复杂一点的任务编辑。 我们怎样来制作2个或3任务呢? 那就很简单了直接放两个 分别命名为objective1和objective2,设置好阵营,分别设置primary objictive 1和primary objictive 2 然后拖 到地图上。再分别拖一辆坦克命名为但tank1个一个兵命名为bin1,如图所示: 代码为: function onDeath_tank1(victim, killer) OFP:setObjectiveState("objective1"," COMPLETE "); end function onDeath_bin1(victim, killer) OFP:setObjectiveState("objective2"," COMPLETE "); end 很好理解: 意思为: 当tank1爆炸则任务1完成 当bin1死亡则任务2完成 2个任务制作很简单吧!!!哈哈 不过细心的同学发现了,以上代码是无论你先完成哪个任务都可以,但如果想完成了任务1才能完成任务2那怎么办? 我们必须加入个判断: 代码修改如下: function onMissionStart() ob=0; end function onDeath_tank1(victim, killer) OFP:setObjectiveState("objective1"," COMPLETE "); ob=1; end function onDeath_bin1(victim, killer) if ob==1 then OFP:setObjectiveState("objective2"," COMPLETE "); OFP:missionCompleted(); end end 我们详细讲解下: 首先看到function onMissionStart()就知道是“当游戏开始时" 下面ob=0;则是设定了个变量!!且把0(为假)赋值给ob 再看下一段 function onDeath_tank1(victim, killer) OFP:setObjectiveState("objective1"," COMPLETE "); ob=1;            ---这里多了个ob=1,意思是当objective1这个任务完成后让1(真)赋值给ob end 接着看最后段 function onDeath_bin1(victim, killer) if ob==1 then      ---这里是如果 ob等于1则触发objective2任务完成,达到了完成任务1后才能完成任务2的效果。注意下语法结构。 OFP:setObjectiveState("objective2"," COMPLETE "); OFP:missionCompleted(); end   - -这里注意凡有if必须有end结束 end   - -这里的end对function 超级简单吧!! 哈哈 其实不外乎多1个变量让他完成任务1时ob变成1,任务判断ob是否等于1才触发第二个任务! 那么三个任务就不多讲了! 此章介绍到这里。 任务完成可以是多样性的,可以是某单位被杀,或者进入某区域,或者某段时间内。 学到这里应该可以制作“1公里开外匍匐在草丛中,抬个狙,听着风吹过草地的声音,等待着目标的出现!!!狙杀!!!!!!!“ 大家灵活应用可以做出绚丽的任务来! 教程七:如何刷兵,如何删除出来的刷兵 此游戏只能同时拥有64个单位,确实少了点。以上内容是能编辑小规模战争mod。 但是学了此章后,你能把场面放大无数倍,可以制作出面对成百上千敌人的超级大场面。 可以制作绚丽的海滩登陆。 可以率领25辆99式坦克面对200辆M1坦克的超级坦克大对轰。 还可制作数十辆武装直升机飞过头顶的震撼效果!!! 可以制作出绚丽的桥头保卫战,村庄保卫战等等 在学习此章之前,我们先来了解下地区: ,位置在右上角的system里面可以找到。如图: 这个东西主要是用于:某单位进入该地区时发生什么事。 多用于刷兵,删除刷兵,触发任务完成等。 代码为:function onEnter(zoneName, unitName) 来个例子: 首先拖动 和 在地图上,把 的name命名为zone然后再拖一个兵并把该兵的name命名为han并设置为player. 放好后,点击标题栏的level.lua 输入以下代码: function onEnter_zone_han(zoneName, unitName) OFP:missionFailed(); end 意思是:当han这个单位进入zone这个地区时 触发总任务完成 效果: 当玩家操作han这个单位进去zone这个区域则弹出任务完成菜单,游戏胜利。 很简单吧。 好了现在我们对地区已经了解了。 现在我们就利用地区这个工具来制作刷兵。 在此之前我们先了解为什么要刷兵。 这里在罗嗦下这个编辑器只能支持64个单位在地图上,这明显限制的游戏的规模,但是我们可以在64个单位死后,再刷出新的兵,这样我就能把战斗做到无限大!不过注意一个地图上同一时间只能有64个单位,不然刷不新的兵来。 刷兵语句:OFP:activateEntitySet(); 好我们来例子: 例1: 首先点击 右侧Create栏右边的Explorer 在 Entety Sey View 目录下面空白处点一下(防止建在根目录里) 再选择+ ADD Entity Set 增加一个Entity Set 我们这里他命名为E1.单击E1灰色目录图标打勾, 然后再右键E1选Exportable 最后图标就是一个黄色打勾的目录. 这样我们就建立了个实体。 然后拖动一组兵到地图上在属性界面里的modify里的Entity Set 里选择刚 才创建的E1。命名为bin1 现在这组兵事E1这个实体里的单位。 那么我们要实现刷兵就必须触发这个实体(E1这个实体里的单位在游戏一开始是不会出现的) 在地图上拖一个地区 命名为:zone,再拖一个 ,再拖一个兵命名为han设置成player。点击level.lua输入以下代码: function onEnter_zone_han(zoneName, unitName) OFP:activateEntitySet("E1"); end意思是: 当han这个单位进入zone这个区域时 触发刷实体E1 那么我们知道刚才的bin1是在实体E1中,那么触发E1也就实现了bin1的出现。 效果: 当han进入zone这个地区时,bin1刷出来! 哈哈哈哈哈哈是不是超级简单。不过要注意刷出来的兵或者说实体E1里面的单位必须要有小队队长。不然会出错。 好了我们再来学习删除刷兵。 代码为:OFP:destroyEntitySet(); 为什么要删除刷兵? 那么一队敌人远离你1公里,这队敌人也没办法追上你,那么我就可以把这个小队删除,释放出内存给其他的单位!真正实现大规模的战斗。 我们继续以例1来讲解。 再拖动一个地区到地图上00命名为shanbingzone 现在地图上有两个地区00分别为zone和shanbingzone,一个han兵,一个bin1,和一个level.lua 我们点击level.lua 输入以下代码: function onEnter_zone_han(zoneName, unitName) shuabin1=OFP:activateEntitySet("E1"); end function onEnter_shanbingzone_han(zoneName, unitName) OFP:destroyEntitySet(shuabin1); end 代码的意思是: 当han这个单位进入zone这个区域时 shuabin1=触发刷兵E1实体 当han这个单位进入shanbingzone这个地区时 触发删除shuabin1这个变量。 我们来讲解下: shuabin1=OFP:activateEntitySet("E1");这段代码和例1有所不同,这里必须把OFP:activateEntitySet("E1")赋值给shuabin1才能执行后面的消除刷兵。Shuabin1这个变量可以取自己容易记的名字。 再看下面: OFP:destroyEntitySet(shuabin1);为触发删除刷出来的兵。 看到了把后面括号里是(shuabin1)而不是E1。如果是E1的话则代码不能出现效果,切记.那么这里删除了shuabin1也就删除了E1这个实体也就删除了bin1这组兵。(注意格式(shuabin1)没有双引号) 效果: 当han进入zone时刷兵,当han进入shanbingzone时删除刚才所刷的兵. 呵呵 也很简单把 不外乎把刷兵的触发效果给他赋值个变量,在删除刷兵的时候只要删除这个变量就可以了。 休息下继续。。。。。。。。。。。。。。。。。。。。 但是细心的同学又发现了 上面这个例子,当han单位进入zone这个地区刷兵,然后进去shanbingzone这个地区删除刷出来的兵,但是当han再进入zone这个区域时又刷兵了,这明显不是我们 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 的本意。 那么我们该如何只让zone这个区域只刷一次兵,以后再进入zone地区时不再刷兵呢。 我们就必须加入判断。 例3 来看代码: function onMissionStart() panduan1=0; end function onEnter_zone_han(zoneName, unitName) if panduan1==0 then shuabin1=OFP:activateEntitySet("E1"); panduan1=1; end end function onEnter_shanbingzone_han(zoneName, unitName) OFP:destroyEntitySet(shuabin1); end 很好理解把 在游戏开始的时候设置个变量panduan1=0。 当han进入zone时,先判断panduan1是不是0后才刷兵。 当触发刷兵后让panduan=1,则以后再进入zone地区时因为panduan=1所以不会再刷兵了。 当然对于例3的功能还有更简单的办法: function onEnter_zone_han(zoneName, unitName) shuabin1=OFP:activateEntitySet("E1"); OFP:disableEvent("onEnter_zone_han") ;    --消除该触发器,也可以达到例3的效果,且更简单方便,不需要变量来判断。 end function onEnter_shanbingzone_han(zoneName, unitName) OFP:destroyEntitySet(shuabin1); end 我们来个牛的例子 例4: 假设我们有实体E1和E2还有兵若干,地区4个分别为zone,zone1和shanbingzone,shanbingzong1玩家han. 代码为 function onMissionStart() panduan1=0; panduan2=0; end function onEnter_zone_han(zoneName, unitName) if panduan1==0 then shuabin1=OFP:activateEntitySet("E1"); panduan1=1; end end function onEnter_zone1_han(zoneName, unitName) if panduan2==0 then shuabin2=OFP:activateEntitySet("E2"); panduan2=1; end end function onEnter_shanbingzone_han(zoneName, unitName) OFP:destroyEntitySet(shuabin1); end function onEnter_shanbingzone1_han(zoneName, unitName) OFP:destroyEntitySet(shuabin2); end 意思是: 当han进入zone时 触发刷E1 当han进入zone时 触发刷E2 当han进shanbingzone时 触发删除E1 当han进入shanbingzone1时 触发删除E2 以上代码刷兵区域只能刷1次兵 效果:略 值得注意的是一次刷兵判断时,变量只能用一次 function onEnter_zone_han(zoneName, unitName) if panduan1==0 then shuabin1=OFP:activateEntitySet("E1"); panduan1=1; end end function onEnter_zone1_han(zoneName, unitName) if panduan1==1 then ――用了同一个变量,错误 shuabin2=OFP:activateEntitySet("E2"); panduan1=2;――错误end 这样写是错误的,所以我们必须有panduan1=0;和panduan2=0;两个变量来判断刷兵。切记!!!!! 要做大规模战斗例4必须要学会。 本章说到这里结束了,希望大家多多练习,作出超级大战场来给我玩^_^ 这章稍微有点难度,有什么困难可以联系我,大家一起讨论。 教程八:路径点高级应用 在教程二中已经认识了路径点,那么这里我们对路径点的功能拓展一下 此章我们用三个部分来给大家讲解: 一:如何让刷出来的兵安路径点移动 二:如何让AI防守路径点 三:当达到路径点触发事件 一:我们在学习完教程七的后已经学会刷兵,但是如果喜欢钻研的同学发现,刷出来的兵不会按路径点走,无论你怎么设置路径,他们只是呆呆的站在原地,或者是发现敌人就一拥而上。 现在我们解决这个问题: 例1: 首先我们设置好事体E1(见教程七),拖动一组兵命名为bing1选择实体E1,拖2个地区分别命名为:shuabingzone和yidongzone.在拖3个路径分别命名为:way1,way2,way。并把3个路径相连。拖一个level.lua再来一组兵命名为han选择为player. 现在我们的任务是进入shuabingzone时,触发刷bing1,进入yidongzone时让bing1按路径移动。(哈哈明白了吧,要让刷出来的兵按路径移动,就必须去触发)。 好我们输入以下代码: function onEnter_shuabingzone_han(zoneName, unitName) OFP:activateEntitySet("E1"); - -刷兵 end function onEnter_yidongzone_han(zoneName, unitName) OFP:move(“bing1”,”way1p”) End 我们讲解下:第一段没问题,看第二段:当进入yidongzone时触发移动move(“兵的名字”,”路径点名称+p”): 呵呵是不是很简单。 但是请注意OFP:move(“bing1”,”way1p”)这里必须是way1+p而不是way1,这里一定要在路径点名称后面加个P,才能让bing1沿着way1到way2到way3,如果不加p,兵1只会到达way1就不动了。 二:如何让AI防守路径点。 我们要让刷出来的敌人,防守某个路径点,而不是乱跑,或者原地不动 例2:在例1的基础上再加一个路径点命名为fangshouway和一个地区命名为fangshouzone,且该路径点不能和其他路径相连. 我们要让刷出来的兵防守路径点fangshouway. 代码如下: function onEnter_shuabingzone_han(zoneName, unitName) OFP:activateEntitySet("E1"); - -刷兵 end function onEnter_fangshouzone_han(zoneName, unitName) OFP:defendPos("bing1","fangshouway",10); end 也很简单 当han进入shuabing地区时触发刷兵,再触发防守。 OFP:defendPos("bing1","fangshouway",10);这里时(“兵名称”,”路径点”,范围/米) 三:当达到路径点触发事件 例如我们有一辆卡车,上面装满了兵,当到达某个路径时触发所有兵下车。 我们再拖一辆卡车命名为kache1,拖一组兵命名为bing2,让bing2装上卡车。在把bing2和路径way1相连。 代码如下: function onArriveAtWaypoint_kache1_way1(entityName, waypointName) OFP:move("bin1","way1","OVERRIDE"); end function onArriveAtWaypoint_kache1_way1(entityName, waypointName) OFP:land("bing2"); end 第一段触发移动。 第二段触发下卡车。 严重注意:一个地区zone只能对应一类OFP 例如: function onEnter_shuabingzone_han(zoneName, unitName) OFP:activateEntitySet("E1"); - -刷兵 OFP:activateEntitySet("E2"); - -刷兵 OFP:activateEntitySet("E3"); - -刷兵 end 这个是正确的,因为一个为地区只对应了触发刷兵,虽然有多个但是是属于同一类。 而: function onEnter_shuabingzone_han(zoneName, unitName) OFP:activateEntitySet("E1"); - -刷兵 OFP:move("bin1","way1","OVERRIDE"); end 这样是错误的:一个地区不能对应两种类型触发。 再看 function onEnter_zone_han(zoneName, unitName) shuabin1=OFP:activateEntitySet("E1"); OFP:disableEvent("onEnter_zone_han") ;    end 这样情况例外!这个是正确的shuabin1=OFP:activateEntitySet("E1");和OFP:disableEvent("onEnter_zone_han") 属于同一类触发, 好第八章就讲到这里。 教程九:实例应用 一:什么是虚拟单位 二:存盘点的制作 三:实例下载 一:什么是虚拟单位 我们知道一辆坦克需要配上一个驾驶员,一个指挥,和一个炮手,连上坦克本身就需要4个单位。 我们知道地图只能有64个单位,那么是不是只能有16辆坦克同时在地图上,答案是否定的。 我们可以把一辆坦克配置上虚拟驾驶员虚拟指挥和虚拟炮手,那么1辆完整的坦克只占用1个单位 方法: 拖一辆坦克到地图上,并在属性栏里面选择has virtual crew就可以了 二:存盘点制作 这个很简单 在地图上拖一个Mission progress checkpoint就是圆圈里有个勾勾那个图标, 命名为save1。(在右上角的system里面找到),再拖一个地区命名为zone1, 再拖一个兵到地图上明命名为han,设置成player,再来一个level.lua (save1和zone1最好在一起。) 输入代码: function onEnter_zone1_han(zoneName, unitName) OFP:enableCheckpoint("save1") end 这样就可以了。 意思是当han进入zone1这个区域时触发存盘点save1,并且恢复体能,AI弹药得到补充。 三:实例下载 这里有个本人制作的例子供大家参考: t6解压到游目录data_win\missions\Mission Editor\下,进入游戏玩选择死single mission\mission editer\duo hui shu yu wo men de dao yu1.3 介绍: 任务目标1:攻占山头,击毙美军军官。 任务目标2:埋伏在小道两侧,突袭M1主战坦克。 任务目标3:占领南北村庄。 敌人单位:步兵若干(100+),30+辆M1主战坦克,两辆运兵车。 解放军单位:20+辆99式主战坦克,玩家带领17人小队,援兵若干。 战线长度:4公里。 更新:解决坦克堵车,和游戏非法操作问题。 功略: 顺着指南小旗走就可以了。不要硬拼,多用战术。 全文完(^.^) 祝大家战斗愉快! 补:如何调整游戏时间:在任务编辑器右下角,找到mission properties标签点击找到Date And Time就可以更改游戏里面的时间了.(24小时制)
本文档为【闪点行动2编辑器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_597436
暂无简介~
格式:doc
大小:76KB
软件:Word
页数:0
分类:互联网
上传时间:2019-07-23
浏览量:16