字号:

魔兽宏(普及型)⑥终结篇

时间:2006-04-03 09:50 作者:原罪 手机订阅 参与评论(0) 【投稿】
文 章
摘 要
昨天发了几篇文章,很多网友说看不懂,今天发一点都看得懂的东东上来!申明今天是转载哈

宏命令中级进阶教程(下)――在宏里运用函数写程序(续)



 



如果感觉看不明白本章内容,请先浏览第六章,我们继续讲解,直接从例子开始:



 



例子(二)猎人标记+宠物攻击
/script CastSpellByName("
猎人印记(等级 3)")



/script SpellStopCasting()
/script PetAttack()




函数说明:PetAttack()



这个函数的作用是让宠物攻击当前选定的目标




宏说明:前面已经讲过“/script CastSpellByName("猎人印记")”是施放猎人印记这个技能,就此宏来看第一行换成“/施放 猎人印记”也是可以的。在第五章中我们讲到,在第一技能不触发第二技能的公共冷却情况下可以连用,但中间必须跟上“/script SpellStopCasting()”结束施法动作这个函数才能将两个个技能连接起来。第三行的意思是让宠物攻击当前目标。这个函数很简单,也没什么可将的了。只是记住使用函数的格式是“/script 函数”



这个宏的最后是否还可以增加施放一个宠物的技能呢?有兴趣的玩家可以实践一下



相关动作:



/script PetFollow()   作用:宠物跟随
/script PetWait()  
作用:宠物等待
/script CastPetAction(
宠物技能序号)   作用:施放括号中指定序号的宠物技能
/script PetAggressiveMode()  
作用:将宠物设为好斗模式
/script PetDefensiveMode()  
作用:将宠物设为防御模式
/script PetPassiveMode()  
作用:将宠物设为被动模式




例子(三):主副手武器互换



/script PickupInventoryItem(16)



/script PickupInventoryItem(17)



 



这个例子很简单,我先对函数“PickupInventoryItem()”做一下说明



/script PickupInventoryItem()代表用鼠标左键点击人物属性窗口中装备栏相应格子的动作,括号里面填写格子对应的编号
装备格子的编号:1:头;2:颈;3:肩;4:衬衣;5:胸;6:腰带;7:腿;8:脚;9:手腕;10:手套;11:手指112:手指213:饰品114:饰品215:背;16:主手;17:副手;18:远程武器;



最后我来描述一下这个例子中各个动作完成的样子:



首先,用鼠标左键点击主手武器,请注意此时武器在鼠标上。然后用鼠标左键点击副手武器栏,也就是把此时正在鼠标上的主手武器放到副手武器栏中。之后,系统会自动完成副手武器换到主手武器栏的过程。大家可以实际用鼠标模拟一下这个过程。



这个例子中我们不止是用到了函数,还用到了系统一些自动的功能来帮助完成我们的动作。



 



相关动作:



/script PickupContainerItem(bag,slot)    作用:鼠标左击,参数bag指定的背包中、参数slot指定的格子(编号规则我们在之前的章节已经讲过)
/script UseContainerItem(bag,slot)   
作用:鼠标右击,参数bag指定的背包中、参数slot指定的格子
/script UseInventoryItem(id)   
作用:鼠标右击(注意是右击)人物属性窗口中,参数id指定装备格子



 



例子(四):使用奥暴,当法力值不足400,用法力红宝石补充并提醒队友



/script if (UnitMana("player")>400) then CastSpellByName("魔爆术(等级 6)") else UseContainerItem(4, 1);SendChatMessage(“魔法将要耗尽,大家小心!”,”yell”); end;



宏说明:



UnitMana(“player”)是检测玩家的法力值,如果大于400直接使用奥暴,否则(也就是else的部分)使用法力红宝石。宏虽然简单,危机时刻不用寻找红宝石的确可以救命!



将这个宏放上来是提醒玩家很多技能可以用宏来代替,简化操作步骤



缺点:法力红宝石要放在第四个包的第一个位置。不到60的法师可以酌情修改法力判定标准和奥暴的级别,也可以换成其他补品。




例子(五)德鲁依猫科形态连击
/script if ( GetComboPoints() >= 3 ) then CastSpellByName("
凶猛撕咬(等级 3)"); else CastSpellByName("爪击(等级 4)") end



函数说明:GetComboPoints()



这个函数的作用是取出当前人物的连击点数量。



宏的说明:这个宏是从网上找到的,感觉作为例子还不错。在执行宏的时候先判断当前连击点数是否大于等于3,如果符合条件(也就是大于等于3)那么就使用“3级凶猛撕咬”如果不符合条件(小于3),则使用“4 抓击”积攒连击点数。



把两个技能捆绑在一个快捷键上,可以根据连击点的数量来自动判断使用什么技能。这是需要大家着重了解的宏的作用,判断当前情况使用不同的技能。根据这个例子换不同的判断条件使用不同技能可以为所有职业节省不少力气



 



相关动作:



/script CastShapeshiftForm(编号)
作用:切换到“编号”指定的形态/姿态(职业相关)
德鲁依:1 = 熊形态、2 = 水中形态、3 = 猫形态、4 = 旅行形态
盗贼:1 = 潜行
战士:1 = 战斗姿态、2 = 防御姿态、3 = 狂暴姿态
==========


终于完成啦,哈哈,国际惯例,


六区,破碎岭,DZ,部落牌木粮醇.感谢:猎杀狂,墨雪,牛祭司,红瞳

加入17173玩家俱乐部,100%领《原神》月卡、《王者荣耀》888点券、《魔兽世界》T恤等周边好礼!
加入方式:微信关注“17173服务号”

热点推荐

游戏头条