AI函数 |
||||||||||||||||||||||||||||||||||||
函数 |
GetChar() |
|||||||||||||||||||||||||||||||||||
语法 |
GetChar(string name); |
|||||||||||||||||||||||||||||||||||
功能 |
得到目标ID,如果没有返回-1 |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
GetChar("player");//得到第一位玩家的ID(这是没用的指令,因为第一位玩家一定是1号) |
|||||||||||||||||||||||||||||||||||
|
GetChar("vip");//得到己方队长编号,这个指令在SN档中使用会容易得到-1(不存在)的值,仅能用在NPC档中才能正确启用。 |
|||||||||||||||||||||||||||||||||||
|
GetChar("enemyvip");//得到敌方队长编号,这个指令在SN档中会不易指定,用在NPC档中就能正确启用。 |
|||||||||||||||||||||||||||||||||||
|
GetChar("flag ");//得到持镖者编号,没有持镖者值一定是-1. |
|||||||||||||||||||||||||||||||||||
|
GetChar("XXX ");//得到指定人物的编号,游戏中没有这个人物值一定是-1. |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a; a = GetChar("无名"); 如果无名不存在 a的值为-1 如果无名存在 a就等于无名的当前ID |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
GetAnyChar() |
|||||||||||||||||||||||||||||||||||
语法 |
GetAnyChar (string name); |
|||||||||||||||||||||||||||||||||||
功能 |
得到目标ID,如果没有返回-1 |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
GetAnyChar("player");//得到第一位玩家的ID(这是没用的指令,因为第一位玩家一定是1号) |
|||||||||||||||||||||||||||||||||||
|
GetAnyChar("vip");//得到己方队长编号,这个指令在SN档中使用会容易得到-1(不存在)的值, 仅能用在NPC档中才能正确启用。 |
|||||||||||||||||||||||||||||||||||
|
GetAnyChar("enemyvip");//得到敌方队长编号,这个指令在SN档中会不易指定,用在NPC档中就能正确启用。 |
|||||||||||||||||||||||||||||||||||
|
GetAnyChar("flag ");//得到持镖者编号,没有持镖者值一定是-1. |
|||||||||||||||||||||||||||||||||||
|
GetAnyChar("XXX ");//得到指定人物的编号,游戏中没有这个人物值一定是-1. |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a; a = GetAnyChar("无名"); 如果无名不存在 a的值为-1 如果无名存在 a就等于无名的当前ID 这个指令基本上跟GetChar()一样,但不一样的是它可以在NPC档中侦测HP<=0的人物,NPC档中只要NPC的HP=0, GetChar()将不再运作.如果你用NPC集合档则需用上这个指令.SN档只要用GetChar()即可. |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
GetHP() |
|||||||||||||||||||||||||||||||||||
语法 |
GetHP (int ID); |
|||||||||||||||||||||||||||||||||||
功能 |
得到ID目标的目前生命值,如果没有返回-1 |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
GetHP (GetChar("无名"));//获取无名目前的生命值 |
|||||||||||||||||||||||||||||||||||
|
GetHP (GetAnyChar ("无名"));//获取无名目前的生命值 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a; int b; a = GetChar("无名"); b = GetHP (a); 如果无名不存在 b的值为-1 如果无名存在 b就等于无名的当前生命值 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
GetTeam() |
|||||||||||||||||||||||||||||||||||
语法 |
GetTeam (int ID); |
|||||||||||||||||||||||||||||||||||
功能 |
得到ID目标的所在队伍. |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
GetTeam(GetChar("无名"));//得到无名的所在队伍 |
|||||||||||||||||||||||||||||||||||
|
GetTeam(GetAnyChar ("无名"));//得到无名的所在队伍 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a; int b; a = GetChar("无名"); b = GetTeam(a); 如果无名不存在或无名并没有分队b的值为0 如果无名在流星,b的值为1 如果无名在蝴蝶,b的值为2 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
GetEnemy() |
|||||||||||||||||||||||||||||||||||
语法 |
GetEnemy(int ID); |
|||||||||||||||||||||||||||||||||||
功能 |
得到ID目标当前锁定的对手ID. |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
GetEnemy(GetChar("无名"));//得到无名当前锁定的对手ID |
|||||||||||||||||||||||||||||||||||
|
GetEnemy(GetAnyChar ("无名"));//得到无名当前锁定的对手ID |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a; int b; a = GetChar("无名"); b = GetEnemy(a); 如果无名不存在或无名目前并没有锁定对手b的值为-1 如果无名没有分队已锁定预设对手,b的值为1(就是玩家) 如果无名已锁定对手,b的值为对手的ID 如果b值等于-1但不是无名不存在照成的,那么NPC可能会站着发呆. |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
GetGameTime() |
|||||||||||||||||||||||||||||||||||
语法 |
GetGameTime(); |
|||||||||||||||||||||||||||||||||||
功能 |
得到入游戏后所过的秒数 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a; a = GetGameTime() + 30; Say(2, "已经过了",a,"秒");//由ID 编号2号的NPC计算目前时间并说出来 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
ChangeBehavior() |
|||||||||||||||||||||||||||||||||||
语法 |
ChangeBehavior(int id, string behavior, ...); |
|||||||||||||||||||||||||||||||||||
功能 |
控制AI的行动 |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
ChangeBehavior(int id, "wait");//AI在原地做警戒 |
|||||||||||||||||||||||||||||||||||
|
ChangeBehavior(int id, "idle");//AI在原地不动 |
|||||||||||||||||||||||||||||||||||
|
ChangeBehavior(int id, "run");//AI在出生点附近乱跑(大多是绕圈圈)。 |
|||||||||||||||||||||||||||||||||||
|
ChangeBehavior(int id, "follow", string name/ int id);// AI跟随到指定人物[人物参照GetChar()函数]或是指定ID人物. |
|||||||||||||||||||||||||||||||||||
|
ChangeBehavior(int id, "patrol", int waypoint1, int waypoint2..);// AI在所规定的巡逻点实施巡逻 |
|||||||||||||||||||||||||||||||||||
|
ChangeBehavior(int id, "attacktarget", int idx, int a);// AI不顾一切的跑到IDX的目标位置,若a为不存在则为跑到目标位置,a值大于0则到目标位置实施攻击. |
|||||||||||||||||||||||||||||||||||
|
ChangeBehavior(int id, "Kill", string name/ int id);// AI追杀指定人物[人物参照GetChar()函数]或是指定ID人物,若为同队则同于“follow”副指令 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a; SetTarget(1, "char","冷燕"); a = GetChar("无名"); ChangeBehavior(a, "wait");//无名在原地做警戒,看到敌人就跑去攻击 ChangeBehavior(a, "idle");//无名啥事情都不做 ChangeBehavior(a, "run");//无名在出生点附近乱跑 ChangeBehavior(a, "follow", "player");//无名跟着玩家行动 ChangeBehavior(a, "patrol", 1, 3, 5, 7, 9);//无名在1,3,5,7,9的巡逻点巡逻 ChangeBehavior(a, "attacktarget", 1, 1);//无名不顾一切的跑到冷燕旁边不管他是不是同队先海扁一下再说 ChangeBehavior(int id, "Kill", "冷燕");//无名追杀冷燕如果是同队则死命跟着冷燕 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
Perform() |
|||||||||||||||||||||||||||||||||||
语法 |
Perform(int id, string pose, ...); |
|||||||||||||||||||||||||||||||||||
功能 |
AI做指定动作 |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
Perform (int id1, "faceto", int id2);// AI id1面朝着id2 |
|||||||||||||||||||||||||||||||||||
|
Perform (int id, "say",string say);// AI发出交谈内容 |
|||||||||||||||||||||||||||||||||||
|
Perform (int id, "pause",int min);// AI做出上个动作后过了几秒再做下个指定动作,但程序仍然在执行中 |
|||||||||||||||||||||||||||||||||||
|
Perform (int id, "aggress");//AI做出挑衅的动作 |
|||||||||||||||||||||||||||||||||||
|
Perform (int id, "jump");//AI做出跳跃的动作 |
|||||||||||||||||||||||||||||||||||
|
Perform (int id, "attack");//AI做出攻击的动作 |
|||||||||||||||||||||||||||||||||||
|
Perform (int id, "guard", int min);// AI做出防御动作几秒钟 |
|||||||||||||||||||||||||||||||||||
|
Perform (int id, "crouch", int min);//AI做出蹲下动作几秒钟 |
|||||||||||||||||||||||||||||||||||
|
Perform (int id, "use", int itemID);// AI使用编号道具 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a = GetChar("无名"); int b = GetChar("冷燕"); Perform (a, "faceto", b);//无名面对冷燕 Perform (a, "say", "你上次砍我文章,觉悟吧!");//无名送出了交谈内容 Perform (b, "say", "放弃吧!你是打不赢我的"); Perform (a, "pause",1);//无名等待了1秒钟 Perform (a, "aggress");//无名做出了挑衅动作 Perform (b, "attack");//冷燕做攻击了一下. Perform (a, "jump");//无名跳了一下 Perform (a, "guard", 1);//无名做出防御动作1秒钟. Perform (a, "crouch", 1);//无名蹲下1秒钟. Perform (a, "say", "看我的厉害!哈哈"); Perform (a, "use", 2);//无名使用了华陀最大生命+50. Perform (a, "use", 1);//无名使用了肉包生命回复30. Perform (a, "use", 3);//无名使用了铜皮防御上升 Perform (a, "use", 4);//无名使用了嗜战最大生命+50. Perform (a, "use", 7);//无名使用了风水隐身 Perform (a, "use", 8);//无名使用了气元气力全满 Perform (a, "say", "哇哈哈!去死吧"); Perform (a, "say", "该死!怎么会这样?"); Perform (a, "use", 20);//无名使用了神骨最大生命到达999. Perform (a, "use", 15);//无名使用了神灵生命回复1/2. Perform (a, "use", 19);//无名使用了爆怒攻击力大幅提升 Perform (a, "use", 34);//无名使用了嗜血攻击力再提升. Perform (a, "use", 23);//无名使用了火属练化武器 Perform (a, "use", 40);//无名使用了金钟罩防御上升 Perform (a, "use", 8);//无名使用了气元气力全满 Perform (a, "use", 27);//无名使用了蛋糕变身雪人 Perform (a, "use", 29);//无名使用了围巾防御上升 Perform (a, "use", 30);//无名使用了手套攻击提升 Perform (a, "use", 31);//无名使用了长靴速度提升. Perform (a, "use", 32);//无名使用了头套自动回血 Perform (a, "use", 5);//无名使用了猫足速度提升 Perform (a, "use", 41);//无名使用了豹灵速度大幅提升 Perform (a, "say", "?!放你一马..."); Perform (b, "say", "= =!!"); |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
PlayerPerform() |
|||||||||||||||||||||||||||||||||||
语法 |
PlayerPerform(int id, string pose, ...); |
|||||||||||||||||||||||||||||||||||
功能 |
叫玩家做指定动作,这个指令区网没有作用 |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
PlayerPerform("say",string say);//发出孟星魂交谈内容(这是电脑会设定玩家名称为孟星魂) |
|||||||||||||||||||||||||||||||||||
|
PlayerPerform("pause",int min);//孟星魂做出上个动作后过了几秒再做下个指定动作,但程序仍然在执行中 |
|||||||||||||||||||||||||||||||||||
|
PlayerPerform("aggress");//孟星魂做出挑衅的动作 |
|||||||||||||||||||||||||||||||||||
|
PlayerPerform("jump");//孟星魂做出跳跃的动作 |
|||||||||||||||||||||||||||||||||||
|
PlayerPerform("crouch", int min);//孟星魂做出蹲下动作几秒钟 |
|||||||||||||||||||||||||||||||||||
|
PlayerPerform(int id, "use", int itemID);//孟星魂使用编号道具 |
|||||||||||||||||||||||||||||||||||
|
PlayerPerform(int id, "block", 0&1);//孟星魂暂时不能操控开关1为不能控制0为可以 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
参考Perform ()函数 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
StopPerform() |
|||||||||||||||||||||||||||||||||||
语法 |
StopPerform(int id); |
|||||||||||||||||||||||||||||||||||
功能 |
停止AI的指定动作 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a; a = GetChar("无名"); Perform (a, "guard", 1);//无名做出防御动作1秒钟 StopPerform(a);//取消刚才指定的动作 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
SetTarget() |
|||||||||||||||||||||||||||||||||||
语法 |
SetTarget(int idx, string type, ...); |
|||||||||||||||||||||||||||||||||||
功能 |
设定IDX编号所代表物 |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
SetTarget(int idx, "char", string name);//设定IDX编号物件为某一玩家或NPC |
|||||||||||||||||||||||||||||||||||
|
SetTarget(int idx, "waypoint", int waypoint);//设定IDX编号物件为某一路径点 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
参考ChangeBehavior()函数的范例 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
Distance() |
|||||||||||||||||||||||||||||||||||
语法 |
Distance(int idx1, int idx2); |
|||||||||||||||||||||||||||||||||||
功能 |
计算IDX1及IDX2之间的距离 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
SetTarget(0, "char", "无名"); SetTarget(1, "char", "冷燕"); int a = Distance(0, 1); a的值为座标值,倘若无名的座标在1202,111,0冷燕的座标为-101,111,0,那么a值即为1202+101的数值,300以内的数值几乎就算是面对面了 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
Rand() |
|||||||||||||||||||||||||||||||||||
语法 |
Rand(int n); |
|||||||||||||||||||||||||||||||||||
功能 |
一定范围内的随机整数 |
|||||||||||||||||||||||||||||||||||
用法 |
|
|||||||||||||||||||||||||||||||||||
|
Rand(100); |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a = Rand(10); a的值即为0-9的随机数 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
AddNPC() |
|||||||||||||||||||||||||||||||||||
语法 |
AddNPC(AI档名); |
|||||||||||||||||||||||||||||||||||
功能 |
加入AI |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
AddNPC("npc13_01");//加入冷燕到流星队 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
RemoveNPC() |
|||||||||||||||||||||||||||||||||||
语法 |
RemoveNPC(int id); |
|||||||||||||||||||||||||||||||||||
功能 |
指定AI离开 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a = GetChar("无名"); RemoveNPC(a); 指定无名离开游戏中 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
Say() |
|||||||||||||||||||||||||||||||||||
语法 |
Say(id, a, b, c, ...); |
|||||||||||||||||||||||||||||||||||
功能 |
送出组合式谈话内容 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a = GetChar("无名"); int h = GetHP(a); Say(a, "我现在有", h,"滴的血"); 通报自己有多少血. |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
GetWeaponType() |
|||||||||||||||||||||||||||||||||||
语法 |
GetWeaponType(int id); |
|||||||||||||||||||||||||||||||||||
功能 |
侦测目标ID的武器类型(传回值为武器类别) |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
GetWeapon() |
|||||||||||||||||||||||||||||||||||
语法 |
GetWeapon(int id); |
|||||||||||||||||||||||||||||||||||
功能 |
侦测目标ID的武器编号(传回值为武器编号) |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
武器编号请参考武器资料表 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
GetAnger() |
|||||||||||||||||||||||||||||||||||
语法 |
GetAnger(int id); |
|||||||||||||||||||||||||||||||||||
功能 |
侦测目标ID的气元值,100=气满,0-目前没气 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
OpenFile() |
|||||||||||||||||||||||||||||||||||
语法 |
OpenFile("files name",command); |
|||||||||||||||||||||||||||||||||||
功能 |
开启一个资料存取档 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int fileID = OpenFile("files name",command); command为w即为输入档,r即为输出档 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
CloseFile() |
|||||||||||||||||||||||||||||||||||
语法 |
CloseFile(int fileID); |
|||||||||||||||||||||||||||||||||||
功能 |
关闭一个指定的资料存取档 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
WriteFile() |
|||||||||||||||||||||||||||||||||||
语法 |
WriteFile(int fileID, int a); |
|||||||||||||||||||||||||||||||||||
功能 |
将资料写入档案中 |
|||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||
函数 |
ReadFile() |
|||||||||||||||||||||||||||||||||||
语法 |
ReadFile(int fileID); |
|||||||||||||||||||||||||||||||||||
功能 |
将资料从档案中读出来 |
|||||||||||||||||||||||||||||||||||
范例 |
|
|||||||||||||||||||||||||||||||||||
|
int a = ReadFile(int fileID); |
|||||||||||||||||||||||||||||||||||
|
|