发表于 2019-5-24 21:005108#
楼主| 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("无名"); AddNPC(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); | ||||||||||||||||||||||||||||||||||||
签名:本站QQ群:35814411,加群请注明论坛账号
UID 3
