爱问知识人 爱问教育 医院库

WOW的宏命令是什么意思啊?

WOW的宏命令是什么意思啊?


        

提交回答

全部答案

    2018-06-05 04:48:04
  •   宏 Macro  
    相信很多人都知道WOW中的斜杠"/"和表情命令。宏可以将这些命令按照自己对条件的设置串联起来,比如:/Kneel是让你跪下来的动作而/say就是最基础的对话动作
    我们现在用一个宏把他们串起来:

    第一行内容:“/Kneel”
    第二行内容:“/say 如果你不嫁给我,那么我就一辈子不起来…” ”
    这样你的人物就会先下跪再说:"如果你不嫁给我,那么我就一辈子不起来…"

    宏可以应用所有WOW中已经定义了的斜杠"/"和表情命令,更要命的是,宏甚至可以应用人物的魔法和技能,

    只需要在宏的定义过程中应用"/cast"命令,下面是已知的一些常用命令:

    /Assist 这是个援助进攻的命令。
      当你的队伍同时面对几个敌人时,只要点击自己的队友(一般是队伍中的战士),然后使用这个命令,你的目标就会变成战士所选中的目标。大家集中火力消灭一个起!

    /Cast 这是个使用技能的命令。当你在宏命令里输入/Cast 技能名(技能等级)或者只要按住Shift同时用鼠标点击一下你想要输入的技能的图标。
      例如当你是一个战士,想制作一个使用战斗怒吼的宏时,你可以输入/Cast Battle Shout(Rank 1)或者是直接按住Shift点击Battle Shout这个技能的图标。当然你可以在一个宏的不同行上输入几个技能,那么当你使用这个宏时,几个技能就会一起释放出来,再用不着你像章鱼一样同时按下几个键了 。
      

    %t 这个符号也许会经常出现在你的宏命令里,它是一个代码,代表你当前所选中的人名。例如,你在宏里写下这么一句。(注意:后面要加一空格。) “/g %t ,今天天气真好,有没兴趣和我一起上山采蘑菇…”
    如果你点中一位名叫苯笨的玩家,那么当你按下这个宏时,你就会说:“笨笨,今天天气真好,有没兴趣和我一起上山采蘑菇…”

    /Target 这是一个自动选择目标的命令,你可以在宏里输入/Target (xxx),那么当你按下这个宏时,你将自动选定这个叫xxx的目标。
      

    /in 这是一个延时命令,时间以秒为单位。同时它不支持攻击指令。格式:/in 3 dance 三秒后跳舞,如/in 3 dance,就是在3秒后跳舞,
    /say start!
    /in 3 say 3s later
    /in 6 say 6s later

    二:进阶教程

    一些有用的 Macro

    1。
      允许你在窗口和全屏状态之间切换

    /script SetCVar("gxWindow", 1 - GetCVar("gxWindow"));
    /console gxRestart

    2。
      对于法师,必须要有的:将“X”换为你目前的变形术等级(下同);用它替换掉变形术技能。当你在队伍之外时使用它会得到“你不在队伍中。”的信息,但在队伍中的时候其它同伴会了解到你将释放的变形术目标。

    /p Sheeping >>> %t20) 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;


    17。
      先治疗自己,然后自动选中上次的敌人
    /target Pugar //选择自己,假设自己的名字是Pugar
    /cast Lesser Heal (Rank 1) //施展次级治疗rank1
    /script TargetLastEnemy(); //重新选择刚刚选择的敌人
    /script AttackTarget(); //攻击,等同于右键点击敌人


    18。
      对于一个术士很有用的宏:首先将目标转为拖怪手或者坦克正在攻击的目标,然后命令宠物向前攻击

    ,跟着一个虚弱诅咒。
    /assist 队伍中的拖怪手或者坦克的名字
    /script PetAttack();
    /cast Curse of Weakness (Rank X)

    19。
      等治疗完之后提醒别人注意下自己有可能被怪打,不加延时的话,就没这个效果了。
    /p healing %T, need 3s, don"t run away
    /cast heal (rank 1)
    /in 4 p cured %T 300HP,please notice the enemies turn on me^_^

    20。
      在路上自动护送朋友做任务。

    /assist [player name]
    /cast 法术(Rank X)
    /target [player name]
    /follow [player name]

    三:高级教程

    WOW的宏函数库可以去这两个地方查:

    ] http://www。
      cosmosui。org/texts/BlizzardCommands。xml

    ] http://www。wowwiki。com/index。php/World_of_Warcraft_API

    函数的使用比较简单,学习过编程的都比较容易上手,基本的用法是在函数前加/script 来使用。
      比如
    /script CURRENT_ACTIONBAR_PAGE = X;
    /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 end

    据说这个包含if,then的宏可以让盗贼实现自动根据combo点数来使用技能(未测试),其中还使用了角

    色MANA值的调用,恐怖吧?还有这个查找spell的宏:
    function GetSpellIdByItsName(myWantedSpell, myWantedRank)
    local spellId = 1;
    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 -1;
    end

    里面可以自己定义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 1);
    /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 = 2;
    /script ChangeActionBarPage();
    单手切换双手并换回第一快捷栏,快捷栏12是一双手武器快捷方式
    /script ActionButtonDown(12);ActionButtonUp(12);
    /script CURRENT_ACTIONBAR_PAGE = 1;
    /script ChangeActionBarPage();


    下面是另一篇


    作者:重返荣誉
    来源:17173
    宏只是一种辅助的手段,希望通过下面的讲解让大家能轻松编辑属于自己的宏。
      

    先来看宏的结构:

    /script
    if (UnitHealthMax(target)>80)
    then
    CastSpellByName(''火球术(等级4)'')
    SendChatMessage(''对 %T 使用火球术'', ''EMOTE'')
    else
    CastSpellByName(''奥术飞弹(等级2)'')
    SendChatMessage(''对 %T 使用奥术飞弹'', ''EMOTE'')

    这是一个没有延时功能的宏,带延时功能的宏将在稍后说明,
    第一句/script 申明函数开始,这句是必须的,整个宏的中文意思是
    如果你选定的目标的生命值大于80,就执行4级火球术,并告知周围的人你对目标使用了这个动作,
    %t就是代表目标,否则就执行2级飞弹,告知周围的人你对目标使用了这个动作。
      
    值得注意的是比如SendChatMessage(''对 %T 使用火球术'', ''EMOTE'') 中的EMOTE 如果你换成party就
    只是队内可见。
    此例使用到的函数:
    UnitHealthMax(target) 返回目标生命值
    同样此例如不要判断就直接是
    /script
    CastSpellByName(''火球术(等级4)'')
    SendChatMessage(''对 %T 使用火球术'', ''EMOTE'')

    注意本文注重介绍思路!
    下面是一些常用的宏
    MoveBackwardStart 向后移动,用时写成 MoveBackwardStart() 注意每句后面的;号并不是必须的,主要是习惯。
      
    MoveBackwardStop 停止后退
    StrafeLeftStart 向左移动
    StrafeLeftStop 停止左移
    StrafeRightStart 向右移动
    StrafeRightStop 停止右移
    ToggleAutoRun 向正面跑
    TurnLeftStart 向左转
    TurnLeftStop 停止左转
    TurnRightStart 向右转
    TurnRightStop 停止右转
    jump() 跳。
      

    黄***

    2018-06-05 04:48:04

类似问题

换一换

相关推荐

正在加载...
最新资料 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):