剑网三宏

发布时间:2018-06-30 14:17:57   来源:文档文库   
字号:

剑网3怎么设置宏

命令为内置的/cast ,只是参数被替换掉了,第一行要为#duowan最新版的优点和缺点键盘执行的是多玩宏鼠标执行的是内置宏优点:不会和上一个版本 一样卡了,设置简单缺点:需要把技能 都拖放到技能栏上,只能用键盘去执行使用指南:1、设置宏,把内容写好2、把宏中使用到的技能拖动到技能栏上   

要把宏中使用到的技能 拖动到技能栏上

宏参数说明:1、mana(><=)0.5tmana(><=)0.5判断自身或目标内力百分比,支持大于、小于、等于2、distance(><=)8判断和目标的距离,单位尺,支持大于、小于、等于3、fight和nofight判断是否战斗4、horse 和nohorse判断自身是否在马上5、buff:状态名称(><=) 层数     tbuff:状态名称(><=) 层数判断自身或目标身上的buff状态例子:buff:生阳<15tbuff:破防<56、nobuff:状态名称      tnobuff:状态名称判断自身或目标没有什么状态7、bufftime:状态名称(><=)时间      tbufftime:状态名称(><=)时间判断自身或者目标身上的状态时间8、life(><=)0.5tlife(><=)0.5判断自身或目标的生命百分比9、prepare 判断目标读条状态10、prepare:技能名称判断目标的读条技能是什么11、target:npc 或 target:player判断自己的目标是玩家,还是NPC12、qidian(><=)2纯阳和少林判断自己的连击点13、tname:玩家或NPC名字tnoname:玩家或NPC名字判断玩家或NPC得名字14、btype:类型tbtype:类型检测自身或目标的Buff类型,类型分为:        阳性        阴性        混元性15、detype:类型tdetype:类型检测自身或目标的DEBuff类型,类型分为:        阳性        阴性        混元性        DOT        点穴16、gbuff:buff名字和buff类型     gdebuff:buff名字和buff类型说明:gdebuff的类型和detype的类型是一样的gbuff的类型和tbyte的类型是一样的17、rage(><=)剑气值说明:判断藏剑 剑气值rage>80


 剑网3宏命令教程之查找技能ID和技能等级

  大家把鼠标移动你所需要找技能ID的技能上,按住CTRL键,技能描述里面红字部分为技能ID和技能等级,如下图所示

  buffID与技能ID是不同的,但是找的方法是一样的,只需鼠标移动到人物buff

 剑网3宏命令教程:if语句学习以及其他控制语句

  基本语句:

  if条件then

  语句

  end

  if就是如果的意思,真是true,假是false如果条件为真则执行语句如果条件为假,则直接结束if语句块

  扩展格式:

  if条件then

  语句

  else(if条件then)

  语句

  end

  if语句的具体用法,我会在后面给大家具体详细的说明,这里不举例了。

  如果有多个条件可以用and(并且)or(或者)连接

  其他控制语句:

  流程控制语句

  while表达式do

  语句块

  end

  如果表达式的结果为true,则执行语句块,到end后返回while再循环。如果表达式的结果为false,则跳过语句块执行end后的语句。

  repeat

  语句块

  until表达式

  先执行语句块,再判断表达式是否为true,是则继续向下执行,否则返回repeat重复。

  循环内可用break语句跳出包含该break的一层循环。

  for循环变量=初值,终值do

  语句块

  end

  for循环变量=初值,终值,每次的增量do

  语句块

  end

  绝对不要在for语句块中修改循环变量。

  函数

  函数即可被重复调用的语句块。

  function函数名(参数列表)

  语句块

  end

  参数列表为用逗号分隔的变量名列表,当执行到函数体内部时,他们就是函数体内的局部变量,并且已用调用时指定的实参赋值。参数列表可以为空。

  函数可以返回值给调用者,使用

  return返回值

  执行return之后将从函数返回调用者的下一条语句继续执行。

  例:

  functionmax(a,b)

  ifa>bthen

  returna

  else

  returnb

  end

  localc=max(10,20)--c==20

  调用函数时使用

  函数名(参数列表)或函数名()

  注意括号必须加上,这样才表示函数调用,执行函数内的语句。

  如果不加则表示一个函数类型的值。*

  当需要返回多个值时,使用

  return返回值1,返回值2...

  调用时用多个变量接收返回值,例:

  localv1,v2,v3

  v1,v2,v3=a_multi_return_value_funtion()

  注意尽量不要使用多返回值,因为脚本解释器不检查变量的个数是否匹配,多则丢弃,少则置nil,容易倒致错误而不易发现


  剑网3宏命令教程:表达式

  表达式就是算式概念的扩展。

  数学表达式的运算符有+,-,*(),/(),^(指数)-(负号)

  如果操作数是字符串类型,并可以被转换成数值,则将自动转换成数值

  关系运算符返回布尔值truefalse,有:==(等于),~=(不等于),<(小于),>(大于),<=(小于等于),>=(大于等于)

  注意,对数值类型不要用==比较,应判断两数的差是否小于一个足够小的数,否则对有些数看起来相等却不相等。0除外。

  逻辑运算符包括:and(和,并且),or(或者),not(非,不)

  逻辑运算的操作数一定要是布尔类型或nilnil表示空,被当作false处理。使用其他类型的操作数不会报错,因为有其特定的功能,但坚决不推荐使用。

  字符串连接运算符:..(取得两个字符串连接后的字符串)

  如果操作数是数值型,则自动转换为字符串

  优先级,从底到高:

  or

  and

  <><=>=~===

  ..

  +-

  */

  not-(负号)

  ^

  ..^是右结合,就是说2^2^3==2^(2^3)

  例:

  hp<10andnotplayer.frozen--hp小于10并且玩家没有被冰冻时为真

 剑网3宏命令教程:写出你的第一个宏

  宏解说:

  纯阳的自动生太极,当自身无生太极是,对自己释放生太极

  宏语句:

  /scriptN=GetClientPlayer();

  /scriptSelectPlayer()

  /scriptfor_,pBinpairs(N.GetBuffList())do

  ifpB.dwID~=374thenOnUseSkill(358,1)end

  end;

  第一句:/scriptN=GetClientPlayer();

  申请一个变量N,且获得当前客户端玩家,并赋值于N。简单说来,就相当于你出生的,你爸妈给你取的名字一样,只是个代号,随便你取什么。

  第二句:

  /scriptSelectPlayer()

  这个语句的意思就是选择你自己,也就是把你自己作为当前目标。SelectPlayer()这个函数,无可解说,是客户端的API,目前没有被和谐掉的选择人的函数,期待不要被和谐了

  吧

  第三句:

  /scriptfor_,pBinpairs(N.GetBuffList())do

  ifpB.dwID~=374thenOnUseSkill(358,1)end

  end;

  这里涉及到一句判断自身buff的语句(不是debuff:

  /scriptfor_,pBinpairs(GetClientPlayer().GetBuffList())do

  ifpB.dwID==BUFFIDthen执行语句end

  end;

  格式套用而已

  ifpB.dwID==BUFFIDthen执行语句end

  详细解说:

  374为自己生太极buffID358为生太极的技能ID1是生太极等级

  pB.dwID~=374判断自身buff列表中是否有生太极buff,没有为真(~=不等于)

  此为一个典型的if语句块。

  这个宏有一定的错误,不知道大家发现没有,将会在下一步中指出

 剑网3宏命令教程:建议添加的函数封装

  说明:在本步骤中,所有的id都指的是buffid或者debuffID

  /scriptN=GetClientPlayer()

  /scriptt=GetTargetHandle(N.GetTarget())

  /scriptfunctioncheckbuff(id)

  for_,Dinpairs(N.GetBuffList())doifD.dwID==idthen

  returntrueendendreturnfalseend

  /scriptfunctionchecknobuff(id)for_,Dinpairs(N.GetBuffList())doifD.dwID~=idthenreturntrueendendreturnfalseend

  /scriptN=GetClientPlayer()

  /scriptt=GetTargetHandle(N.GetTarget())

  这2句我不就解说了,相信仔细看过的人都知道。

  /scriptfunctioncheckbuff(id)

  for_,Dinpairs(N.GetBuffList())doifD.dwID==idthen

  returntrueendendreturnfalseend

  这个函数是检查自己是否有buff有则返回true没有则返回false.

  建议大家采用我这个步骤中给大家的编辑的函数来判断是否有无buff

  如果要判断目标的buff呢?则这样改:

  /scriptfunctioncheckbuff(id)

  for_,Dinpairs(T.GetBuffList())doifD.dwID==idthen

  returntrueendendreturnfalseend

  如果要判断自身的debuff呢?则这样改:

  /scriptfunctioncheckbuff(id)

  for_,Dinpairs(N.GetBuffList()or{})doifD.dwID==idthen

  returntrueendendreturnfalseend

  那么判断目标的debuff怎么改?请大家自己琢磨……

  /scriptfunctionchecknobuff(id)for_,Dinpairs(N.GetBuffList())doifD.dwID~=idthenreturntrueendendreturnfalseend

  这个函数是检查自己是否有buff没有则返回true有则返回false.

  而在luanot表示非

  那么我们可以省略第四句

  用notcheckbuff(ID)可以表达和第四句一模一样的意思

  这里大家如果觉得有难度,多看看,多用下就理解了

  最后建议大家在写宏之前,添加的函数

  /scriptN=GetClientPlayer()

  /scriptt=GetTargetHandle(N.GetTarget())

  /scriptfunctioncheckbuff(id)

  for_,Dinpairs(N.GetBuffList()or{})doifD.dwID==idthen

  returntrueendendreturnfalseend

  这个是判断自身的buffdebuff,如果需要判断目标的buffdebuff,相信大家如果理解了,就会改

  所以第三步中,自动生太极正确的写法是:

  /scriptN=GetClientPlayer();

  /scriptfunctionchecknobuff(id)for_,Dinpairs(N.GetBuffList())doifD.dwID~=idthenreturntrueendendreturnfalseend

  /scriptSelectPlayer()

  /scriptifchecknobuff(374)thenOnUseSkill(358,1)end


/fcast宏指令有什么用

增加/fcast宏指令,可用于在运功状态时施放其他招式。句式组合如:【/fcast [条件1&条件2|条件3] 技能名】

mbuff 目标身上属于自己弄上的BUFF
monbuff目标身上没有自己弄上的BUFF
当然 BUFF名要自己定义
mbuff:致残
monbuff:定军
nobuff 自己身上无什么BUFF
加个t
tnobuff 目标身上无什么BUFF

本文来源:https://www.2haoxitong.net/k/doc/03b8baff6c175f0e7dd13726.html

《剑网三宏.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式