魔兽世界远古魔力作用宏的作用和用法

魔兽世界宏命令教程(一)
一:基础教程&
  1.什么是宏命令?&
  玩过EQ的都知道一点宏的知识,比如组队时用来告诉队友你的行动,告诉目标等。最简单的比如puller 常用的: /v
%t过来了,大家集中火力。 法师常用的: /v 我要催眠%t,大家不要打醒他
这些宏个性鲜明,是EQ的一大乐趣之一。&
  然而EQ毕竟是N年前的游戏,宏也比较简单,和它比起来。WOW的宏就复杂和强大的多了。它的函数就有上千种,如果都掌握,能实现许多匪夷所思的功能。&
  一个宏可以完成一个相对比较复杂的命令.比如战斗中发布命令,如果打字当然不算麻烦,但在战斗中却很要命.浪费了时间和生命.一个简单的宏便可以用一个键来完成这一切.&
  2.宏命令的设置流程:&
  首先,回车,再敲/MACRO。看见了吧?会弹出一个窗口,上面有New(新建宏命令)和Complete(完成宏命令)两个按键。点New,又会弹出一个窗口,哇,花花绿绿的,里面包括了WOW几乎所有的技能图标,随你喜欢,随便选一个!它就是你设置的宏命令的图标了,给它取个名字吧!方便你用的时候好找。然后回到第一个窗口,在它上面有一个输入菜单(别告诉我找不到…它可是占了这个窗口的一半多…)在里面输入特定的内容,然后点Complete。接下来你要做的就是把这个代表你宏命令的图标用鼠标左键拉到快捷栏里,想怎么用就怎么用…&
  3.下面就是怎样设置宏的内容了,简单的设置大家可以看我们网站上"基础"篇的宏介绍.&
  相信很多人都知道WOW中的斜杠"/"和表情命令.宏可以将这些命令按照自己对条件的设置串联起来,比如:/Kneel是让你跪下来的动作而/say就是最基础的对话动作&
  我们现在用一个宏把他们串起来:&
  第一行内容:“/Kneel”&
  第二行内容:“/say 如果你不嫁给我,那么我就一辈子不起来…”
  这样你的人物就会先下跪再说:"如果你不嫁给我,那么我就一辈子不起来…"&
  宏可以应用所有WOW中已经定义了的斜杠"/"和表情命令,更要命的是,宏甚至可以应用人物的魔法和技能,&
  只需要在宏的定义过程中应用"/cast"命令,下面是已知的一些常用命令:&
  /Assist
这是个援助进攻的命令。当你的队伍同时面对几个敌人时,只要点击自己的队友(一般是队伍中的战士),然后使用这个命令,你的目标就会变成战士所选中的目标。大家集中火力消灭一个起!&
  /Cast 这是个使用技能的命令。当你在宏命令里输入/Cast
技能名(技能等级)或者只要按住Shift同时用鼠标点击一下你想要输入的技能的图标。例如当你是一个战士,想制作一个使用战斗怒吼的宏时,你可以输入/Cast
Battle Shout(Rank 1)或者是直接按住Shift点击Battle
Shout这个技能的图标。当然你可以在一个宏的不同行上输入几个技能,那么当你使用这个宏时,几个技能就会一起释放出来,再用不着你像章鱼一样同时按下几个键了
这个符号也许会经常出现在你的宏命令里,它是一个代码,代表你当前所选中的人名。例如,你在宏里写下这么一句。(注意:后面要加一空格。)
,今天天气真好,有没兴趣和我一起上山采蘑菇…”&
  如果你点中一位名叫苯笨的玩家,那么当你按下这个宏时,你就会说:“笨笨,今天天气真好,有没兴趣和我一起上山采蘑菇…”&
  /Target 这是一个自动选择目标的命令,你可以在宏里输入/Target
(xxx),那么当你按下这个宏时,你将自动选定这个叫xxx的目标。&
  /in 这是一个延时命令,时间以秒为单位.同时它不支持攻击指令.格式:/in 3 dance 三秒后跳舞,如/in 3
dance,就是在3秒后跳舞,&
  /say start!&
  /in 3 say 3s
  /in 6 say 6s
  二:进阶教程&
  一些有用的 Macro&
  1。允许你在窗口和全屏状态之间切换&
  /script SetCVar("gxWindow", 1 -
GetCVar("gxWindow"));&
  /console
gxRestart&
  2。对于法师,必须要有的:将“X”换为你目前的变形术等级(下同);用它替换掉变形术技能。当你在队伍之外时使用它会得到“你不在队伍中。”的信息,但在队伍中的时候其它同伴会了解到你将释放的变形术目标。&
  /p Sheeping &&& %t
class=Apple-converted-space&&
  /cast Polymorph (Rank
  3。作为一个术士,这是在队伍中使用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击,跟着一个虚弱诅咒。&
  /assist
队伍中的拖怪手或者坦克的名字&
  /script
PetAttack();&
  /cast Curse of Weakness (Rank
  4。从背包和袋子里切换身上的武器&
  /script if ( not CursorHasItem() ) then PickupContainerItem(,
  PickupInventoryItem( );
  bag# -
使用哪一个袋子的物品(0、1、2、3、4。0是背包)&
  slot# -
袋子里的位置(从0至左上)&
  equip# - 16 是主要武器, 17
  5。这个宏治疗队伍里你指定的人,如果你不在队伍中它会治疗你自己。然后会自动将目标切换回你最后一个敌人。它同时还会使用队聊提醒队友你会治疗哪一个人。&
  /script if (UnitName("target") ~=nil and
UnitIsFriend("player","target")) then
  CastSpellByName("Heal(Rank X)") SendChatMessage("Incoming Heal to
%T", "Party") else&
  TargetUnit("player") CastSpellByName("Heal(Rank X)")
TargetLastEnemy();
  6。加速任务显示速度&
  /script QUEST_DEscriptION_GRADIENT_CPS =
  /script
RegisterForSave("QUEST_DEscriptION_GRADIENT_CPS")&
  /script DEFAULT_CHAT_FRAME:AddMessage("quest text will scroll
faster now");&
  7。消除等待接受任务的时间&
  /script
AcceptQuest()&
  8。这个宏可以在路上自动护送玩家做任务。&
  /assist [player
  /cast 法术(Rank X)&
  /target [player
  /follow [player
  9。切换主副武器,详情看第四条&
  /script PickupInventoryItem(16);
PickupInventoryItem(17);&
  10。在没有目标或者目标是敌人的时候给自己加增益魔法或治疗。&
  CastSpellByName("Spell Name(Rank
  if ((SpellIsTargeting()) and (not
UnitIsFriend("player","target")))&
  SpellTargetUnit("player");&
  TargetLastEnemy();&
  11。切换双手武器与单手+盾或者双手挥舞武器&
  /script PickupInventoryItem(17);if(CursorHasItem()) then
PickupContainerItem&
  (4,2);PickupContainerItem(4,1);PickupInventoryItem(16);else
PickupContainerItem&
  (4,1);PickupInventoryItem(16);PickupContainerItem(4,2);PickupInventoryItem(17);end
  12。设定“真实鼠标视野”&
  /script
CameraOrSelectOrMoveStart(arg1);&
  想取消就再次输入。&
  13。切换近程技能栏和远程技能栏&
  /script CURRENT_ACTIONBAR_PAGE =
  /script
ChangeActionBarPage();&
  /cast aspectofmonkey (just use the left
  /script CURRENT_ACTIONBAR_PAGE =
  /script
ChangeActionBarPage();&
  /cast aspectofhawk (just use the left
  14。牧师对队友的一键加血,比如一号键给第一队友加血,二号键给第二队友加血,免除了还要鼠标确&
  定目标的操作。依次类推,从第一个人到最后一个&
  给队友1加血:&
  /script
TargetUnit(GetPartyMember(1))&
  CastSpellByName(Heal(Rank X))
TargetLastEnemy()&
  给队友2加血:&
  /script TargetUnit(GetPartyMember(2)) CastSpellByName(Heal(Rank
TargetLastEnemy()&
  给队友3加血:&
  /script TargetUnit(GetPartyMember(3)) CastSpellByName(Heal(Rank
TargetLastEnemy()&
  15。一键解决喂养宠物:这个宏会从最左边的袋子里的第一个位置拿出食物喂养宠物,如果所在的位置&
  没有食物,它会自动打开袋子。&
  /script if (not PlayerFrame.inCombat) then if (not
GetContainerItemLink(4, 1))
  OpenBag(4); else CastSpellByName("Feed Pet");
PickupContainerItem(4, 1); end
  16。术士宏&
  1)如果目标生命大于20,释放抽取生命法术,否则使用灵魂抽取。&
  /script if (UnitHealth("target")&20) then
CastSpellByName("Drain Life(Rank X)")
  CastSpellByName("Drain Soul(Rank 2)")
  2)虚弱诅咒版本&
  /script if (UnitMana("target")&0) then
CastSpellByName("Curse of Tongues(Rank X)")
  CastSpellByName("Curse of Weakness(Rank X)")
  17.先治疗自己,然后自动选中上次的敌人&
  /target Pugar
//选择自己,假设自己的名字是Pugar&
  /cast Lesser Heal (Rank 1)
//施展次级治疗rank1&
  /script TargetLastEnemy();
//重新选择刚刚选择的敌人&
  /script AttackTarget();
//攻击,等同于右键点击敌人&
  18.对于一个术士很有用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击&
  ,跟着一个虚弱诅咒。&
  /assist
队伍中的拖怪手或者坦克的名字&
  /script
PetAttack();&
  /cast Curse of Weakness (Rank
  19.等治疗完之后提醒别人注意下自己有可能被怪打,不加延时的话,就没这个效果了。&
  /p healing %T, need 3s, don"t run
  /cast heal (rank
  /in 4 p cured %T 300HP,please notice the enemies turn on
  20.在路上自动护送朋友做任务。&
  /assist [player
  /cast 法术(Rank X)&
  /target [player
  /follow [player
  三:高级教程&
  WOW的宏函数库可以去这两个地方查:&
 ] http://www.cosmosui.org/texts/BlizzardCommands.xml&
 ] /index.php/World_of_Warcraft_API&
  函数的使用比较简单,学习过编程的都比较容易上手,基本的用法是在函数前加/script
来使用。比如&
  /script CURRENT_ACTIONBAR_PAGE =
  /script
ChangeActionBarPage();&
  就是将你的快捷栏翻到第X页。&
  函数库中有许多函数都是非常有用和方便的,比如一次打开所有包包:&
  /script
OpenAllBags();&
  配合关闭包包的函数,一次关闭所有包的宏也可以实现:&
  /script
CloseBag(0);&
  /script
CloseBag(1);&
  /script
CloseBag(2);&
  /script
CloseBag(3);&
  /script
CloseBag(4);&
  怎么样,下次你卖东西的时候不会一个个开包关包了吧?&
  使用函数还不是最恐怖的,恐怖的是WOW的宏是可以用条件判断的,看下面这两个:&
  /script if ( GetComboPoints() &= 3 ) then
CastSpellByName("Rip(Rank 2)"); else if
  UnitMana("player") &= 40 ) then
CastSpellByName("Rake(Rank 1)"); end
  据说这个包含if,then的宏可以让盗贼实现自动根据combo点数来使用技能(未测试),其中还使用了角&
  色MANA值的调用,恐怖吧?还有这个查找spell的宏:&
  function GetSpellIdByItsName(myWantedSpell,
myWantedRank)&
  local spellId =
  local spellBook =
  local spellName,
  spellName, rankName = GetSpellName(spellId,
spellBook);&
  while (spellName )
  if ( ( spellName == myWantedSpell ) and ( ( not myWantedRank ) or
( rankName =
myWantedRank&
  ) ) ) then return spellId;
  spellName, rankName = GetSpellName(spellId,
spellBook);&
  return -1;&
  里面可以自己定义function,还使用了while,do这样的循环,是不是让你想到了N种应用的可能呢?&
  遗憾的是,目前官方似乎没有提供延时的宏,所以在战斗中使用多种有延时的技能是无法实现的(无延时的技能可以实现同时使用),类似换其他武器-使用技能或法术-换回武器这样的功能也无法实现,&
  (所谓用宏实现剑盾战士换双手武器MS再换回来是行不通的),不过使用COSMOS的朋友可以用/in
来实现非战斗指令的延时,比如&
  /in 3 say hi
就会在3秒后说句hi。&
  /in 6 /script
MoveForwardStart(arg1);&
  就会在6秒后向前跑。&
  虽然法术和技能无法用/in指令来延时,但这样已经很强大了,比如,你可以编出各种运动的宏,如兜后,转身等。PVP时估计是必不可少的。&
  下面是一个玩家写的双手武器战士自动逃跑的宏:&
  /script UseContainerItem(0,
2);ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown&
  (12);ActionButtonUp(12);&
  /cast Thunder Clap(Rank
  /script
TurnLeftStart(arg1);&
  /in 1 /script
TurnLeftStop(arg1);ToggleAutoRun();&
  使用这个宏的条件:在大包包第二格放了回复药,快捷栏第11,12分别是一单手一盾的快捷方式。&
  使用这个宏后,角色自动喝回复药,装备上盾,使用Thunder
Clap(这三个动作同时进行),向后转180度后开自动跑步键逃走。其中技能等可以根据需要自己改。怎么样,是不是很夸张啊,哈哈。&
  还有一些有用的宏:&
  切换装备,&
  双手切换单手并换第二个快捷栏,快捷栏第11,12分别是一单手一盾的快捷方式&
  /script
ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown(12);ActionButtonUp(12);&
  /script CURRENT_ACTIONBAR_PAGE =
  /script
ChangeActionBarPage();&
  单手切换双手并换回第一快捷栏,快捷栏12是一双手武器快捷方式&
  /script
ActionButtonDown(12);ActionButtonUp(12);&
  /script CURRENT_ACTIONBAR_PAGE =
  /script
ChangeActionBarPage();&
==================================================================================
宏就是一列以斜杠(/)开头的命令集合
/说 (/s, /say)
/密语 (/whisper, /w, /talk, /t)
/表情 (/emote, /e, /em, /me)
/跳舞 (/dance)
/吐口水 (/spit)
把宏放到动作条上,你就可以通过点击来使用。
注意:必须拼写正确,所有空格、符号、数字都是半角字符。
例:大喊“所有的人,来跳舞吧!”并同时使你的角色开始跳舞。
/y 所有的人,来跳舞吧!
注意:你的宏会在点击后立刻执行其中的所有命令,宏无法实现“等待一段时间”的功能,你不能先大喊然后等待数秒才开始跳舞。
二、建立一个宏
按ESC选择“宏命令设置”选项(或在聊天框内输入/macro(/m)打开面板。在最上方可选择宏的作用对象,“通用宏”作用于你的所有角色,“专用宏”仅作用于当前角色。
往下是一共18格的栏位用来放置设定好的宏(点击可修改已存在的宏)。最后在面板底部分别是三个按钮:删除,新建,退出。
例:按照上面的方法建立一个跳舞宏
打开宏命令设置面板,点击“新建”。在弹出的小窗口中设定宏的名字与图标(如果选择问号图标,则系统会自动根据宏内容自动选择),点击“确定”。
现在刚才选择的图标已经出现在了18格的栏位中,并且处于选中状态。在下面的输入框中编写内容
/y 所有的人,来跳舞吧!
把图标拖曳到动作条上,一个简单的宏就完成了!
三、更多的功能
除了说话做动作,宏还可以实现很多功能,比如施放法术。
/cast 暗言术:痛
注意:未指定法术等级时,宏会自动施放你已经学会的最高等级。
例:法师变羊怪物后通知小队。
/cast 变形术
/p %t已变羊,打醒的自己抗!
注意:%t在宏被使用时永远自动替换成目标的名字。一旦使用这个宏,法师就会立刻开始说话,不论变羊术是否施放成功。
例:法师变羊后通知小队,如果变羊失败则不通知
/aftercast /p %t已变羊,打醒的自己抗!
/cast 变形术
四、施放法术和技能:/cast
影响/cast命令的要素:
法术名字和法术等级
法术名字必须和法术书上的一直,法术名字后跟随等级则宏使用指定的法术等级,否则使用已经学会的最高等级。
例:使用2级腐蚀术。
/cast 腐蚀术(等级 2)
公共冷却时间GCD
有GCD的法术即使瞬发也无法同时使用,反过来讲,瞬发的且不触发GCD的法术可以同时使用,用/stopcasting来隔开它们。
例:法气定核弹宏
/cast 奥术强化
/stopcasting
/cast 气定神闲
/stopcasting
/cast 炎爆术
五、使用物品和装备:/use
/use 物品名称
例:使用坐骑
/use 绿色机械陆行鸟
/use 装备名称装备槽编号
这个命令允许把指定的装备放进指定的装备槽内(比如两个饰品栏中指定的那一栏),编号可以参照下面的表格:
表一:装备槽编号
0 = ammo 弹药
1 = head 头
2 = neck 颈
3 = shoulder 肩膀
4 = shirt 衬衣
5 = chest 胸部
6 = belt 腰带
7 = legs 腿
8 = feet 鞋
9 = wrist 手腕
10 = gloves 手套
11 = finger 1 手指1
12 = finger 2 手指2
13 = trinket 1 饰品1
14 = trinket 2 饰品2
15 = back 背部
16 = main hand 主手
17 = off hand 副手
18 = ranged 远程武器
19 = tabard 公会徽章
20 = first bag (the rightmost one) 右起第一个包(行囊)
21 = second bag 第二个包
22 = third bag 第三个
23 = fourth bag (the leftmost one) 第四个
表二:银行空格编号:
40 to 67 = the 28 bank slots
68 = first bank bag slot
69 = second bank bag slot
70 = third bank bag slot
71 = fourth bank bag slot
72 = fifth bank bag slot
73 = sixth bank bag slot
74 = seventh bank bag slot
/use 背包编号包内格子编号
使用指定背包中指定格子内的物品。
注意:只适合背包内物品永远整洁有序的玩家。
表三:包囊编号
背包编号由0-4组成,0总是代表行囊,1是行囊左边的第一个背包,以此类推。
格子编号从1开始,1总是包内第一行左起第一个格子。
例:一个永远把宠物饲料放在第一个背包(行囊)的第一格的猎人,喂养宠物宏
/cast 喂养宠物
用/target来指定物品使用的目标。
例:将名叫张三的玩家选为当前目标
/target 张三
注意:如果周围没有叫张三的玩家,此宏会自动选择一个名字最相近的。
例:将/target命令和/use结合起来
/target 张三
/use 厚丝质绷带
例:将/target命令和/cast结合起来
/target 李四
/cast 痛苦诅咒
这个宏的弊端是如果周围没有叫李四的玩家,那么这个宏很有可能引起误会。因此原则是尽量避免在宏里使用某个具体的名字。
给游戏中不同的单位分类并使用特定称呼是个不错的办法,例如把自己定为“player”,把目标定为“target”,把自己的宠物定为“pet”,以下是详细的列表:
"focus" = 焦点
"player" = 自己
"pet" = 自己的宠物
"partyN" = 队友,N代表由1-4表示你的另外4个队友
"partypetN" = 队友的宠物,同样N由1-4表示
"raidN" = 团队成员,N由1-40表示
"raidpetN" = 团队成员的宠物
"target" = 你的当前目标
"playertarget" = 永远只指你的当前目标
"mouseover" 鼠标正指向的目标(没有选中!)
"none" = 没有目标的情况
"npc" or "NPC" = 你正在互动的NPC
在这些特定称呼后再加一个"target"来表示它们的目标,比如"pettarget"就是你的宠物的目标
例:猎人选择自己宠物的目标
/target pettarget
其他指定目标命令
/assist 选中当前目标的目标(比如,我的目标是张三,你的目标是我,当你使用/assist后,你的目标直接变为张三)
/cleartarget 清除目标
/targetlasttarget 选择最后一次选中的单位
/targetenemy 相当于TAB键,在敌对单位内依次选择
/targetfriend 相当于CTRL+TAB,在友方单位内依次选择
/targetparty,/targetraid 在小队里,在团队里
六、焦点:/focus
/focus可以把当前目标变为焦点。如果说/target命令是选中目标直接观察,那么/focus命令就是偷偷选中一个目标进行监视。
两个概念“焦点目标”和“目标焦点”
“焦点目标”把当前目标设置成为焦点,“目标焦点”把正在监视的焦点立刻选中成为当前目标。
例:打哈卡时,法师不但要输出伤害,还要同时注意变羊战士。这时法师可以提前将战士设定为焦点。使用下面的宏当法师在输出时一旦发现战士被控制,就可以第一时间变羊。
/cast [target=focus] 变形术
同样治疗职业在RAID时将MT设置为焦点,可以方便的在照顾本组队员时注意MT的状态
注意:使用这类宏你不需要改变当前目标!另外,/focus同样可以使用表四中的单位名称
例:更复杂的变羊宏,或许可以在战场里用用?
/focus [target=focus,noexists] [target=focus,dead]
[target=focus,help]
/stopmacro [target=focus,noexists]
/cast [target=focus] 变形术
如果还没有焦点,如果焦点已经死了,如果现存的焦点是友方单位,那么重新把当前目标设置为焦点。同时将其变羊。
例:在目标与焦点间切换
/cleartarget [target=target, dead]
/clearfocus [target=focus, dead]
/target focus
/cleartarget [target=focus, noexists]
/targetlasttarget
/focus target
/targetlasttarget
第一、二行清除已经死亡的目标或焦点。
七、控制宠物
/cast 法术或技能名称 & 使用宠物的法术或技能
/petattack - 宠物攻击
/petfollow - 宠物跟随
/petstay - 宠物原地停留
/petpassive - 被动状态
/petdefensive - 防御状态
/petaggressive - 主动状态
/petautocaston 法术技能名称 - 打开法术或技能的自动施放
/petautocastoff 法术技能名称 - 关闭法术或技能的自动施放
八、注释信息:#showtooltip
#showtooltip命令写在宏的第一行,在把宏拖曳到动作条后,把鼠标停留在按钮上,就可以显示该宏的详细信息。
九、其他重要命令
装备物品/equip
/equip 物品名称
将指定的装备装备到默认装备槽中
/equipslot 装备槽编号 装备名称
把指定的装备装备到指定的位置。编号请见表一。
例:把架子上的胡萝卜装备到第二个饰品栏中(下面那个)
/equipslot 14 棒子上的胡萝卜
如果例19的命令是:/equip 棒子上的胡萝卜 则胡萝卜会被装备到默认的第一个饰品栏
在/equipslot后还可以根据具体情况加上条件,以使宏更为灵活
例:只有在室外时才会装备胡萝卜。
/equipslot [outdoors] 14 棒子上的胡萝卜
关于宏条件我们会在第二部分具体讲到。
依次施法:/castsequence
很多时候我们会按照一定的规律来使用某些法术,比如在练级时,/castsequence命令可大大简化这类重复操作。
例:术士的常规套路
/castsequence 献祭,腐蚀,痛苦诅咒,生命吸虹
这个宏按第一下施放献祭,第二下施放腐蚀,第三痛苦,第四吸虹,然后继续从第一个法术开始施放。
通过下面的参数,可以控制/castsequence的重置顺序及方式:
reset=n/target/combat/shift/alt/ctrl
reset=n 在指定时间后重置宏,n为秒
target:在切换目标后重置宏
combat:在离开战斗后重置宏
shift/alt/ctrl:按住该键时重置宏
例:添加重置条件后的术士宏
/castsequence rest=target/combar 生命虹吸,痛苦诅咒,腐蚀术
注意:/castsequence不会自动一个个施放你设定好的法术!你必须自己按!
另外,目前CWOW 2.0版本这个命令的条件项有问题,常常会无法重置法术顺序,MF在2.1.2版本中进行了修正。
随机施法:/castrandom,随机使用物品:/userandom
例:比较简单的随机使用坐骑
/userandom 坐骑1,坐骑2,坐骑3
攻击:/attack
大多数时候战斗总是以技能或法术开始,所以这个命令使用很少。当然,如果你愿意,用普通攻击开始战斗也没有错,另外试试下面两个命令
/startattack & 开始攻击
/stopattack & 停止攻击
控制动作条:/changeactionbar,/swapactionbar
/changeactionbar后面只需要跟一个表示动作条的号码,宏会通过执行命令直接跳转到指定的动作条。
例:猎人开启灵猴守护并切换到动作条2。
/cast 灵猴守护
/changeactionbar 2
例:开启雄鹰守护并切换到动作条1。
/cast 雄鹰守护
/changeactionbar 1
/swapactionbar命令后需要跟两个表示动作条的号码。
例:跳转到动作条1或2
/swapactionbar 1 2
执行这个宏后,如果你正在使用动作条1,那么跳转到动作条2。反之,正在使用动作条2的话,那么跳转到动作条1。如果你既不在1也不在2,那么跳转到1。
移除BUFF:/cancelaura
移除不需要的BUFF
例:移除拯救祝福
/cancelaura 拯救祝福
解除形态:/cancelform
很多职业都有不同的形态,比如德鲁伊,牧师等等。这个命令可以令你立刻接触当前形态,更深入的讲解会在本教程第二部分提到。
停止施法:/stopcasting
作用非常重要,需要立刻打断目前正在施放的法术或技能,去做更重要的事时,你就需要他了。
例:术士立刻打断当前正在施放的法术,对目标使用暗影灼烧
/stopcasting
/cast 暗影灼烧
解除坐骑:/dismount
这个命令使你立刻下马,如果你在飞行坐骑上遨游星空时不小心点了……加上条件[noflying]吧
例:立刻下马,如果在飞行坐骑上宏不起作用。
/dismount [noflying]
模拟点击动作条按钮:/click
通过指定的框架名称模拟点击动作,在默认情况下它模拟鼠标左键点击,当然这可以通过设置来改变。
例:模拟右键点击宠物动作条上的第五个按钮的动作
/click PetActionButton5 RightButton
另外,你可以通过下面这个宏来得到,鼠标所停留的框架的名字
/run i = ( GetMouseFocus():GetName() )
/run DEFAULT_CHAT_FRAME:AddMessage(i)
个人试验过 貌似现在的版本里没有 /equip 这个命令了
希望大家都能在WOW中找到属于自己的世界
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。WOW宏是什么,怎么设置,怎么用?_百度知道您现在的位置:&>>&&>>&
扫盲班来了!魔兽世界关于宏的基础知识及应用
作者:佚名
来源:本站原创
发布时间: 23:13:41
关键词>>技术,宏
摘要:魔兽世界关于宏的一些基础知识和盗贼的宏应用举例。
  一直看各种宏的教学,没有发现比较足够清晰严格的。
  在这些教学里,函数的变量和作用都没有说明,宏的语法也没有说明,这样对玩家自己改进宏十分不利。
  那些写宏教程的也很奇怪,难道都不屑于说明语法么?恩,对大多数人可能不管黑猫白猫复制下来能用的宏就万事ok了...但我个人不喜欢不求甚解的态度,
  而且看见过的多数拿出来分享给别人用的宏,用计算机专业的标准衡量,代码往往冗余,这就意味着效率的损失,也就意味着片刻的延时,或许片刻就是生死的分界线....
  这篇宏的经验文章写给那些想多了解一些宏的知识的玩家,如果想自己动手写宏的玩家请往下看。
  1,宏的基本常识
  宏是一个脚本,发送到服务器端执行。这个脚本由一组命令序列构成,长度不超过255个字符。
  序列中的每一个命令,由一个/ 开头,例如/say /script 等等。
  /script 后面跟随脚本特有的语句和函数。
  你可以罗列多个/script命令在一个脚本里,也可以在一个/script命令中写多个函数,这都可以。
  因为宏就是依次执行所有的命令,所以不需要在宏的最后添加end 标记,或在命令之间加;
  事实上,end标记 是if语句的组成部分,你在写if语句时才用到end关键字。命令和命令之间用换行或; 隔开都可以,我喜欢用换行..呵呵,省掉不必要的; 代码也清楚些
  常用的if语句语法如下:
  /script if [条件表达式] then [命令序列] end
  /script if [条件表达式] then [命令序列1] else [命令序列2] end
  这里条件表达式不需要在外面套括号,和C,java的习惯不同,应该是为了减少不必要的字符数,毕竟WOW宏有长度限制。
  条件表达式 中 相等用 == , 否定用not, 不等于可以写 not (A == B),暴雪没有提供!= 作为不等于,很奇怪。 例子:
  if sword == GetInventoryItemLink("player", 16) then ....
  if not (sword == GetInventoryItemLink("player", 16)) then ....
  注1,这里的sword是全局变量。每一个全局变量的生命周期是一次登陆中从声明变量到退出魔兽,通常在每次登陆后额外运行一个设定宏来设定我们所需要的全局变量。
  注2,GetInventoryItemLink()是一个取装备link的函数,
  GetInventoryItemLink("player", number)是从人物身上取装备的link,number代表人物装备画面的不同槽, 头部,颈部,依次递增,于是16代表主手武器,17代表副手武器
  GetInventoryItemLink("player", 16) 就代表了主手武器的link
下一页:盗贼专用宏的编制思路
魔兽世界7.0版本内容汇总
最新职业改动
         
TGBUS Corporation, All Rights Reserved

参考资料

 

随机推荐