发表于 2010-10-13 21:001#
楼主
本帖被 admin 设置为精华(2010-10-12)
声明:本人的教程需有一定修改基础的人看的懂。如果你是初入学子,请先了解流星任务基本。在来看此贴。
下面开始介绍任务中常常用到的函数。屡次来介绍:
这是剧情我文件控制的主文件。依次排列下去才会执行。
if (trg0 == 0)
{
SetTarget(0, "char", 兵兵);
SetTarget(1, "char", player);
if(兵兵>=0 && Distance(0, 1) < 200)
{
这函数乃是NPC见到自己说话的函数,那200是距离。
下一个:
if (GetHP(兵兵)<GetMaxHP(兵兵)) {
本函数乃是NPC受创后执行的,哪怕受伤1滴血也会执行。
下一个:
if (GetHP(兵兵)<GetMaxHP(兵兵)-1000) {
本函数乃是NPC受伤100血执行,数值自己按剧情设置。
下一个:
if (GetHP(兵兵)<1000) {
本函数乃是NPC还剩余100血执行。
下一个:
if (GetHP(兵兵)<0) {
本函数乃是NPC死亡执行
下一个:
SetTarget(1,"waypoint",路点);
ChangeBehavior(兵兵,"attacktarget",1);
本函数乃是NPC跑路点,路点照剧情设置。
下一个:
SetTarget(0, "char", 兵兵);
SetTarget(1, "waypoint", 路点);
if (Distance(0, 1) < 100)
{
本函数是NPC到达路点执行 . 100 乃是距离 就是离指定路点的距离判断。
报告完毕:
忽忽.. 今天太晚了,先发这点。这些函数看着没什么,但是任务中全是靠这几个函数。
你可以根据剧情随机设置出不同不样的剧情。
当然,我现在说,大家也只是觉得头上一片黑,因为你们还不太懂。
随之你们慢慢的了解,这个不用我说,你们自己也知道该怎么设置,因为剧情是自己想的。
这次的只是单个执行函数,下次就要发出,群体指定函数和其中某一NPC存在执行函数。
众多NPC其中某一人存在群体执行函数,NPC指令...
拜拜,睡觉去了。
.gif)
好,今天我们继续,讲下一段函数。这些也是很有用的,因为可以省掉很多不必要的指令。
if(GetHP(c1)<GetMaxHP(c1)-1000 || GetHP(c2)<GetMaxHP(c2)-1000)
{
本函数乃是 c1和c2两个NPC其中任何1个受伤100血后就会执行。
同样你也可以弄成其他的函数,比如你弄成这样
if(GetHP(c1)<0 || GetHP(c2)<0)
{
这样就是NPC死亡会执行。
下一个重要:
for(i=2; i<=16; i++)
{
NPC全数修正行为。2是从2开始计算,小于16是超出16人的NPC不在内,但是系统只能容纳16人,所以这没关系。
玩家是数字1
if(GetTeam(i)==2,1,0 )
{
这是NPC阵营判断,1是自己人,2是蝴蝶,0是盟主。
我先透漏这么多吧!还有很多,先不必介绍,这个就足以弄个任务,就是剧情简单点,
作者:『流星奇迹』_兵兵
要不先看看这个剧本吧,有修改基础的可能稍微看的懂。
如果看懂我这个剧本,你做任务就会省掉很多没有用的指令。
关于AI。指定武器选择使用,
WeaponLXQJ()
{
int LXQJ=Rand(9);
if(LXQJ==0){LXQJ=13;}
if(LXQJ==1){LXQJ=14;}
if(LXQJ==2){LXQJ=15;}
if(LXQJ==3){LXQJ=16;}
if(LXQJ==4){LXQJ=17;}
if(LXQJ==5){LXQJ=18;}
if(LXQJ==6){LXQJ=50;}
if(LXQJ==7){LXQJ=54;}
if(LXQJ==8){LXQJ=58;}
return LXQJ-0;
}
int Weapon = WeaponLXQJ();
这样AI使用的武器就是以上这9种高攻武器。 自己琢磨去。
有时间接着更新...........................................
UID 87371


