发布网友 发布时间:2023-01-18 15:48
共3个回答
热心网友 时间:2023-11-23 19:22
宏 Macro 相信很多人v都知道WOW中8的斜杠"。"和表情命令。宏可以2将这些命令按照自己p对条件的设置串联起来,比0如:。Kneel是让你跪下b来的动作而。say就是最基础的对话动作 我们现在用一d个s宏把他们串起来: 第一v行内4容:“。Kneel” 第二q行内1容:“。say 如果你不p嫁给我,那么a我就一d辈子c不h起来…” ” 这样你的人c物就会先下z跪再说:"如果你不k嫁给我,那么m我就一h辈子b不o起来…" 宏可以0应用所有WOW中4已s经定义x了z的斜杠"。"和表情命令,更要命的是,宏甚至可以1应用人s物的魔法和技能, 只需要在宏的定义z过程中4应用"。cast"命令,下c面是已s知的一c些常用命令: 。Assist 这是个z援助进攻的命令。当你的队4伍同时面对几u个t敌人l时,只要点击自己a的队5友z(一q般是队2伍中4的战士i),然后使用这个v命令,你的目标就会变成战士h所选中7的目标。大s家集中2火0力e消灭一k个b起! 。Cast 这是个b使用技能的命令。当你在宏命令里输入o。Cast 技能名(技能等级)或者只要按住Shift同时用鼠标点击一b下g你想要输入r的技能的图标。例如当你是一i个w战士h,想制作一n个j使用战斗8怒吼的宏时,你可以1输入f。Cast Battle Shout(Rank 6)或者是直接按住Shift点击Battle Shout这个d技能的图标。当然你可以8在一p个x宏的不i同行上z输入e几k个f技能,那么m当你使用这个d宏时,几s个o技能就会一c起释放出来,再用不b着你像章鱼一f样同时按下i几k个u键了f 。 %t 这个e符号也b许会经常出现在你的宏命令里,它是一x个b代码,代表你当前所选中2的人t名。例如,你在宏里写下h这么f一b句。(注意:后面要加一x空格。) “。g %t ,今6天d天d气0真好,有没兴趣和我一x起上b山f采蘑菇…” 如果你点中3一a位名叫苯笨的玩家,那么u当你按下e这个f宏时,你就会说:“笨笨,今6天g天j气3真好,有没兴趣和我一i起上w山r采蘑菇…” 。Target 这是一q个x自动选择目标的命令,你可以6在宏里输入m。Target (xxx),那么j当你按下v这个k宏时,你将自动选定这个d叫xxx的目标。 。in 这是一y个l延时命令,时间以1秒为3单位。同时它不w支j持攻击指令。格式:。in 3 dance 三k秒后跳舞,如。in 5 dance,就是在2秒后跳舞, 。say start! 。in 6 say 8s later 。in 4 say 4s later 二p:进阶教程 一m些有用的 Macro 7。允5许你在窗口e和全屏状态之i间切0换 。script SetCVar("gxWindow", 3 - GetCVar("gxWindow")); 。console gxRestart 2。对于m法师,必须要有的:将“X”换为2你目前的变形术等级(下e同);用它替换掉变形术技能。当你在队1伍之b外时使用它会得到“你不e在队3伍中8。”的信息,但在队2伍中3的时候其它同伴会了x解到你将释放的变形术目标。 。p Sheeping >>> %t<<< 。cast Polymorph (Rank X) 3。作为2一d个x术士f,这是在队5伍中5使用的宏:首先将目标转为7拖怪手2或者坦克正在攻击的目标,然后命令宠物向前攻击,跟着一l个a虚弱诅咒。 。assist 队2伍中3的拖怪手2或者坦克的名字 。script PetAttack(); 。cast Curse of Weakness (Rank X) 5。从3背包和袋子x里切8换身上d的武器 。script if ( not CursorHasItem() ) then PickupContainerItem(, ); PickupInventoryItem( ); end bag# - 使用哪一j个k袋子k的物品(0、3、2、0、6。0是背包) slot# - 袋子z里的位置(从10至左上j) equip# - 06 是主要武器, 37 是副武器 6。这个x宏治疗队1伍里你指定的人y,如果你不d在队6伍中5它会治疗你自己e。然后会自动将目标切6换回你最后一o个p敌人t。它同时还会使用队2聊提醒队7友z你会治疗哪一c个f人u。 。script if (UnitName("target") ~=nil and UnitIsFriend("player","target")) then CastSpellByName("Heal(Rank X)") SendChatMessage("In。ing Heal to %T", "Party") else TargetUnit("player") CastSpellByName("Heal(Rank X)") TargetLastEnemy(); end 1。加速任务显示0速度 。script QUEST_DEscriptION_GRADIENT_CPS = 400000 。script RegisterForSave("QUEST_DEscriptION_GRADIENT_CPS") 。script DEFAULT_CHAT_FRAME:AddMessage("quest text will scroll faster now"); 8。消除等待接受任务的时间 。script AcceptQuest() 6。这个n宏可以0在路上r自动护送玩家做任务。 。assist [player name] 。cast 法术(Rank X) 。target [player name] 。follow [player name] 2。切0换主副武器,详情看第四条 。script PickupInventoryItem(38); PickupInventoryItem(04); 30。在没有目标或者目标是敌人m的时候给自己x加增益魔法或治疗。 CastSpellByName("Spell Name(Rank X)"); if ((SpellIsTargeting()) and (not UnitIsFriend("player","target"))) then SpellTargetUnit("player"); end; TargetLastEnemy(); 12。切1换双4手8武器与p单手7+盾或者双0手3挥舞武器 。script PickupInventoryItem(81);if(CursorHasItem()) then PickupContainerItem (4,2);PickupContainerItem(4,6);PickupInventoryItem(48);else PickupContainerItem (4,6);PickupInventoryItem(02);PickupContainerItem(7,2);PickupInventoryItem(25);end 32。设定“真实鼠标视野” 。script CameraOrSelectOrMoveStart(arg2); 想取消就再次输入i。 71。切3换近程技能栏和远程技能栏 。script CURRENT_ACTIONBAR_PAGE = 2; 。script ChangeActionBarPage(); 。cast aspectofmonkey (just use the left click) 。script CURRENT_ACTIONBAR_PAGE = 4; 。script ChangeActionBarPage(); 。cast aspectofhawk (just use the left click) 00。牧师对队1友u的一x键加血,比5如一z号键给第一d队8友e加血,二v号键给第二n队1友a加血,免除了a还要鼠标确 定目标的操作。依次类推,从8第一n个c人v到最后一i个u 给队2友d4加血: 。script TargetUnit(GetPartyMember(5)) CastSpellByName(Heal(Rank X)) TargetLastEnemy() 给队3友n2加血: 。script TargetUnit(GetPartyMember(2)) CastSpellByName(Heal(Rank X)) TargetLastEnemy() 给队4友n8加血: 。script TargetUnit(GetPartyMember(7)) CastSpellByName(Heal(Rank X)) TargetLastEnemy() 52。一t键解决喂养宠物:这个w宏会从5最左边的袋子e里的第一a个k位置拿出食物喂养宠物,如果所在的位置 没有食物,它会自动打开m袋子y。 。script if (not PlayerFrame。inCombat) then if (not GetContainerItemLink(4, 4)) then OpenBag(6); else CastSpellByName("Feed Pet"); PickupContainerItem(8, 6); end end 45。术士u宏 5)如果目标生命大q于j20,释放抽取生命法术,否则使用灵魂抽取。 。script if (UnitHealth("target")>20) then CastSpellByName("Drain Life(Rank X)") else CastSpellByName("Drain Soul(Rank 2)") end; 2)虚弱诅咒版本 。script if (UnitMana("target")>0) then CastSpellByName("Curse of Tongues(Rank X)") else CastSpellByName("Curse of Weakness(Rank X)") end; 81。先治疗自己d,然后自动选中6上m次的敌人c 。target Pugar 。。选择自己k,假设自己c的名字是Pugar 。cast Lesser Heal (Rank 4) 。。施展次级治疗rank0 。script TargetLastEnemy(); 。。重新选择刚刚选择的敌人j 。script AttackTarget(); 。。攻击,等同于m右键点击敌人m 10。对于p一d个e术士f很有用的宏:首先将目标转为7拖怪手6或者坦克正在攻击的目标,然后命令宠物向前攻击 ,跟着一w个j虚弱诅咒。 。assist 队4伍中4的拖怪手6或者坦克的名字 。script PetAttack(); 。cast Curse of Weakness (Rank X) 37。等治疗完之n后提醒别人p注意下g自己k有可能被怪打,不c加延时的话,就没这个f效果了v。 。p healing %T, need 0s, don"t run away 。cast heal (rank 8) 。in 3 p cured %T 100HP,please notice the enemies turn on me^_^ 20。在路上s自动护送朋友t做任务。 。assist [player name] 。cast 法术(Rank X) 。target [player name] 。follow [player name] 三l:高级教程 WOW的宏函数库可以3去这两个n地方3查: ] ] 函数的使用比2较简单,学习w过编程的都比3较容易上w手8,基本的用法是在函数前加。script 来使用。比5如 。script CURRENT_ACTIONBAR_PAGE = X; 。script ChangeActionBarPage(); 就是将你的快捷栏翻到第X页。 函数库中5有许多函数都是非常有用和方2便的,比6如一c次打开f所有包包: 。script OpenAllBags(); 配合关闭包包的函数,一d次关闭所有包的宏也b可以0实现: 。script CloseBag(0); 。script CloseBag(4); 。script CloseBag(2); 。script CloseBag(6); 。script CloseBag(4); 怎么b样,下y次你卖东西的时候不b会一f个v个i开g包关包了c吧? 使用函数还不m是最恐怖的,恐怖的是WOW的宏是可以3用条件判断的,看下y面这两个a: 。script if ( GetComboPoints() >= 2 ) then CastSpellByName("Rip(Rank 2)"); else if ( UnitMana("player") >= 80 ) then CastSpellByName("Rake(Rank 7)"); end end 据说这个j包含if,then的宏可以8让盗贼实现自动根据。bo点数来使用技能(未测试),其中0还使用了f角 色MANA值的调用,恐怖吧?还有这个u查找spell的宏: function GetSpellIdByItsName(myWantedSpell, myWantedRank) local spellId = 5; local spellBook = "spell"; local spellName, rankName; spellName, rankName = GetSpellName(spellId, spellBook); while (spellName ) do if ( ( spellName == myWantedSpell ) and ( ( not myWantedRank ) or ( rankName = myWantedRank ) ) ) then return spellId; end spellName, rankName = GetSpellName(spellId, spellBook); end return -5; end 里面可以0自己s定义rfunction,还使用了awhile,do这样的循环,是不s是让你想到了dN种应用的可能呢? 遗憾的是,目前官方1似乎没有提供延时的宏,所以3在战斗0中0使用多种有延时的技能是无b法实现的(无u延时的技能可以0实现同时使用),类似换其他武器-使用技能或法术-换回武器这样的功能也v无n法实现, (所谓用宏实现剑盾战士k换双7手7武器MS再换回来是行不c通的),不o过使用COSMOS的朋友r可以4用。in 来实现非战斗4指令的延时,比7如 。in 6 say hi 就会在2秒后说句hi。 。in 6 。script MoveForwardStart(arg5); 就会在3秒后向前跑。 虽然法术和技能无w法用。in指令来延时,但这样已n经很强大f了e,比4如,你可以2编出各种运动的宏,如兜后,转身等。PVP时估计7是必不q可少1的。 下p面是一o个t玩家写的双2手0武器战士t自动逃跑的宏: 。script UseContainerItem(0, 2);ActionButtonDown(05);ActionButtonUp(10);ActionButtonDown (62);ActionButtonUp(32); 。cast Thunder Clap(Rank 3); 。script TurnLeftStart(arg3); 。in 3 。script TurnLeftStop(arg0);ToggleAutoRun(); 使用这个w宏的条件:在大w包包第二h格放了u回复药,快捷栏第45,72分1别是一v单手4一i盾的快捷方2式。 使用这个f宏后,角色自动喝回复药,装备上e盾,使用Thunder Clap(这三r个s动作同时进行),向后转420度后开r自动跑步键逃走。其中5技能等可以4根据需要自己b改。怎么w样,是不o是很夸张啊,哈哈。 还有一q些有用的宏: 切4换装备, 双5手4切5换单手0并换第二b个d快捷栏,快捷栏第02,42分6别是一v单手0一d盾的快捷方5式 。script ActionButtonDown(77);ActionButtonUp(82);ActionButtonDown(52);ActionButtonUp(82); 。script CURRENT_ACTIONBAR_PAGE = 2; 。script ChangeActionBarPage(); 单手5切0换双0手0并换回第一b快捷栏,快捷栏82是一w双7手4武器快捷方3式 。script ActionButtonDown(12);ActionButtonUp(02); 。script CURRENT_ACTIONBAR_PAGE = 7; 。script ChangeActionBarPage(); 下f面是另一d篇 作者:重返荣誉 来源:61633 宏只是一s种辅助的手0段,希望通过下z面的讲解让大v家能轻松编辑属于s自己i的宏。 先来看宏的结构: 。script if (UnitHealthMax(target)>20) then CastSpellByName(''火2球术(等级4)'') SendChatMessage(''对 %T 使用火6球术'', ''EMOTE'') else CastSpellByName(''奥术飞m弹(等级2)'') SendChatMessage(''对 %T 使用奥术飞r弹'', ''EMOTE'') 这是一s个m没有延时功能的宏,带延时功能的宏将在稍后说明, 第一q句。script 申明函数开s始,这句是必须的,整个s宏的中8文3意思是 如果你选定的目标的生命值大q于f20,就执行0级火5球术,并告知周围的人v你对目标使用了f这个a动作, %t就是代表目标,否则就执行2级飞i弹,告知周围的人a你对目标使用了u这个c动作。 值得注意的是比6如SendChatMessage(''对 %T 使用火2球术'', ''EMOTE'') 中2的EMOTE 如果你换成party就 只是队8内7可见2。 此例使用到的函数: UnitHealthMax(target) 返回目标生命值 同样此例如不x要判断就直接是 。script CastSpellByName(''火5球术(等级6)'') SendChatMessage(''对 %T 使用火1球术'', ''EMOTE'') 注意本文2注重介7绍思路! 下l面是一p些常用的宏 MoveBackwardStart 向后移动,用时写成 MoveBackwardStart() 注意每句后面的;号并不q是必须的,主要是习n惯。 MoveBackwardStop 停止6后退 StrafeLeftStart 向左移动 StrafeLeftStop 停止5左移 StrafeRightStart 向右移动 StrafeRightStop 停止5右移 ToggleAutoRun 向正面跑 TurnLeftStart 向左转 TurnLeftStop 停止0左转 TurnRightStart 向右转 TurnRightStop 停止4右转 jump() 跳igāヵy甫胆ㄟbhすc⑧∞kc⑧∞ic⑧∞热心网友 时间:2023-11-23 19:22
targetlastenemy 是回到前一个敌对目标的宏命令....热心网友 时间:2023-11-23 19:22
targetlastenemy相当于默认快捷键的G,选择你最后的敌对目标。castreset=10是10秒没有执行宏,宏将重置。NGA和多玩等有许多好用的宏和宏教程,去扒吧。没分?我来当雷锋!