王朝知道
分享
 
 
 

魔兽世界宏制作与使用的详细讲解......

王朝知道·作者佚名  2009-05-06  
宽屏版  字体: |||超大  
 
分类: 游戏 >> 魔兽世界
 
问题描述:

听说魔兽世界里有非常庞大的宏系统,掌握了将会有很大的用处。所以恳求明白人不惜赐教...详细的讲一下如何制作宏 大多数常用的宏 如双手武器与单手武器的切换...告诉队友站住不动...等等 重谢!!

参考答案:

几个常用的宏

/script if (UnitName("Target") ~=nil and UnitIsFriend("player","Target")) then CastSpellByName("复生");SendChatMessage("帅哥,快起来吧,前面还有很多好装备在等着我们呢.... ","Whisper","兽人语",UnitName"Target"); end

复活队友,并密语告诉对方

/script if UnitSex("target") == 2 then g="帅哥" else if UnitSex("target") == 3 then g="靓女" end;end;s="复活吧 "..g.." >>>%T<<<";c="say";if GetNumRaidMembers()>0 then c="raid" elseif GetNumPartyMembers()>0 then c="party" end;SendChatMessage(s,c)

/sc ript CastSpellByName("复生");

同上,不过加了个性别判断

/script if (UnitName("Target") ~=nil and UnitIsFriend("player","Target")) then CastSpellByName("激活");SendChatMessage("已对你使用了[激活],20秒内法力恢复速度400%,请赶紧坐下回蓝。 ","Whisper","兽人语",UnitName"Target"); end

/y 已经对 %t 使用<<激活>> 大家接替下~~~

给队友使用激活,并密语通知对方

/script r=7;l={1,10,20,30,40,50,60};if not UnitIsFriend("player","target")then TargetUnit("player");end;t=UnitLevel("target");for j=r,1,-1 do if (t>=l[j]-10) then CastSpellByName("野性印记(等级 "..j..")");break;end;end

根据对方的等级使用相应的野性印记

/script r=6;l={6,14,24,34,44,54};if not UnitIsFriend("player","target")then TargetUnit("player");end;t=UnitLevel("target");for j=r,1,-1 do if (t>=l[j]-10) then CastSpellByName("荆棘术(等级 "..j..")");break;end;end

根据对方的等级使用相应的荆棘术

/script SpellStopCasting();

/cast 自然迅捷

/script SpellStopCasting();

/cast 治疗之触

瞬加大血技能

/script SpellStopCasting();CastSpellByName("自然迅捷");SpellStopCasting();CastSpellByName("治疗之触")

/script SpellTargetUnit("player")

同上

/cast 治疗之触

/script if UnitIsFriend("Player","target") then if UnitAffectingCombat("target") then if ((UnitHealthMax("target"))-(UnitHealth("target"))<1500) then SpellStopCasting();end;end;elseif SpellIsTargeting() then TargetUnit("Player");end

当队友血低于多少时加血,高于这个值时自动打断

/script H=UnitHealthMax("target")-UnitHealth("target");S={41,98,213,394,617,799,1004,1285,1621,2010};

/sc ript for j=10,1,-1 do if (H>=S[j]) then CastSpellByName("治疗之触(等级 "..j..")"); break;end;end;

同上

/script TargetNearestEnemy()

/script PetAttack()

/script PetDefensiveMode()

/script CastPetAction(6)

/施放 猎人印记

/script SpellStopCasting();

/施放 自动射击

LR自动标记,宠物攻击,自动射击

/script for i=1,16,1 do if (UnitBuff("player",i)~=nil) then if (string.find(UnitBuff("player",i),"Mon")~=nil) then CastSpellByName("猛禽一击");break;end end if(i==16) then CastSpellByName("灵猴守护");end end

LR近战时换灵猴守护状态,使用猛禽一击

/script p,a,S,U="player","targettarget",SendChatMessage,UnitName;t=U(a);if(t~=nil and U(p)~=t)then S("正在嘲讽'%t', ["..t.."]已OT!请暂停攻击.","Yell");S("你已OT,请暂停攻击!","WHISPER","兽人语",t);CastSpellByName("嘲讽");end

战士宏,通知OT者停止攻击,使用嘲讽拉住怪

1.友好魔法

1.A 对友好单位或自己施法

/cast 治疗术(等级1)

/sc ript TargetUnit("player")

如果你当前选择的目标是可以对其使用此魔法的友好单位的话,则对其使用魔法。

如当前目标是不能接受此魔法的单位,或没有选择任何目标的话,则对自己使用魔法。

而且不会对当前目标进行切换,不会中断对当前敌人的攻击。

将 “治疗术(等级1)” 换成任何能对友好单位释放的魔法与技能。

如在最后再加上如下代码

/scr ipt if ( UnitName("target") ~=nil and UnitInParty("player","target") ) then SendChatMessage("<治疗 %T >", "PARTY"); end

则在治疗队友时,在party中发出相应的信息。

将<治疗 %T>换成任何你喜欢的信息,%T表示接受治疗的目标的名字。

将UnitInParty换成UnitIsFriend,则对任何友好单位施法时都发出信息。

将"PARTY"换为"EMOTE",则以自定义表情的方式发出信息。如SendChatMessage(" 将在3秒内治疗 %T", "EMOTE"),则别人在聊天窗口中看到:"汉客将在三秒内治疗小郎"

将"PARTY"换成"WHISPER", "COMMON", UnitName("target"),则采用密语形式对你施法的目标发送信息。"COMMON"表示密语所用的语言种类。下面是一个语言列表:

Common 人类语,联盟通用语

Orcish 兽人语,部落通用语

Dwarvish 矮人语

Gnomish 侏儒语

Darnassian 暗夜精灵语

还有其他的一些实现方法如:

/cast 治疗术(等级1)

/scr ipt if SpellIsTargeting() then TargetUnit("player")

/scr ipt if ( not UnitIsFriend("player", "target") ) then CastSpellByName("治疗术(等级1)"); end

/scr ipt if ( SpellIsTargeting() ) then SpellTargetUnit("player"); end

/scr ipt if (UnitName("target") ~=nil and UnitIsFriend("player","target")) then CastSpellByName("治疗术(等级1)") SendChatMessage("即将治疗 %T", "Party") else TargetUnit ("player") CastSpellByName("治疗术(等级1)") TargetLastEnemy(); end

并不值得推荐。而且后一个宏会切换当前目标,中断攻击。

1.B 只对自己使用

如果想在任何条件下都只对自己使用治疗的话,用如下的宏:

/target "player"

/cast 治疗术(等级1)

/scr ipt TargetLastEnemy()

但这个宏同样有切换当前目标,中断攻击的弊病。

1.C 对特定队员施法

下面的这个宏只对队伍中的第一名队员施法。party1,party2,party3,party4分别指代队伍中的其他4名成员。也可以结合组队相关中的目标设置宏来使用。

/scr ipt if (UnitName("party1") ~= nil) then CastSpellByName("治疗术(等级1)") SpellTargetUnit("party1") SendChatMessage("即将治疗 >>" .. UnitName("party1") .. "<< (3.5s)", "Party") TargetLastEnemy(); end

1.D 按目标的职业分别使用不同魔法

下面是圣骑士的一例。如果目标职业为盗贼或战士则使用力量祝福,否则使用智慧祝福。

/scr ipt class = UnitClass("target"); if ( ( class == "Rogue" ) or ( class == "Warrior" ) ) then

CastSpellByName("Blessing of Might(Rank 1)"); else CastSpellByName("Blessing of Wisdom(Rank 1)"); end

1.E 按目标等级使用不同级别的魔法

下面牧师的一例,对目标使用其所能接受的最高等级的“圣言术:韧”

/scr ipt P="Power Word: Fortitude(Rank " S={1,2,14,26,38} if (UnitLevel("target") ~= nil and UnitIsFriend("player","target")) then for j=5,1,-1 do if (UnitLevel("target") >= S[j]) then CastSpellByName(P..j..")") return end end end

下面是60级的牧师的实例,另外一种实现方法,语句书写略为不同,更为易读。

/scr ipt r=6;l={1,12,24,36,48,60};t=UnitLevel("target");if (t==0) then t=UnitLevel("player");end;if UnitIsFriend("player","target") then for j=r,1,-1 do if (t>=l[j]-10) then CastSpellByName("Power Word: Fortitude(Rank "..j..")");break;end;end;end

下面是60级德鲁依的一例,使用对方能接受的最高级野性印记。实现方法和上面2例略有不同:

/scr ipt r=7;l={1,10,20,30,40,50,60};if not UnitIsFriend("player","target")then TargetUnit("player");end;t=UnitLevel("target");for j=r,1,-1 do if (t>=l[j]-10) then CastSpellByName("Mark of The Wild(Rank "..j..")");break;end;end

2. 判断HP,MP,连击点量

2.A 按HP消耗量不同使用不同治疗魔法

在下面的例子中,宏会对玩家自己的HP消耗量进行判断,如小于200则不使用治疗,并在聊天窗口中提示:"health is good",如消耗两大于200小于400,使用3级的Flash of Light治疗,如大于400,则使用5级的Holy Light进行治疗。你也可以用当前的HP量进行判断。

/scr ipt x="player";d=UnitHealthMax(x)-UnitHealth(x);if (d>200) then if (d<400) then CastSpellByName("Flash of Light(Rank 3)") else CastSpellByName("Holy Light(Rank 5)") end;SpellTargetUnit(x);else DEFAULT_CHAT_FRAME:AddMessage("Health is good"); end;

2.B 根据目标HP量决定是使用灵魂抽取还是抽取生命

术士根据目标HP量决定是使用灵魂抽取还是抽取生命。大于20则使用抽取生命,否则使用灵魂抽取。

/scr ipt if (UnitHealth("target")>20) then CastSpellByName("Drain Life(Rank X)") else CastSpellByName("Drain Soul(Rank 2)"); end

2.C 根据敌人是否使用魔法来决定是使用结舌诅咒还是虚弱诅咒

下面这个是根据敌人是否使用魔法(使用魔法的敌人其MANA肯定大于0)来决定是使用结舌诅咒还是虚弱诅咒。

/scr ipt if (UnitMana("target")>0) then CastSpellByName("Curse of Tongues(Rank X)") else CastSpellByName("Curse of Weakness(Rank X)"); end

2.D 根据连击点的多寡和能量的多少来决定使用技能种类

下面是德鲁依猫形态(盗贼也是一样)根据连击点的多寡和能量的多少来决定是使用Rip还是Rake。如连击点大于等于3,则使用Rip,如连击点小于3并且能量有40点以上,则使用Rake。

/scr ipt if ( GetComboPoints() >= 3 ) then CastSpellByName("Rip(Rank 2)"); else if (UnitMana("player") >= 40 ) then CastSpellByName("Rake(Rank 1)"); end end

3.绷带

3.A 对友好单位或自己使用绷带

/sc ript UseContainerItem(2,1)

/sc ript TargetUnit("player")

如果你当前选择的目标是可以对其使用绷带的友好单位的话,则对其使用绷带。

如当前目标是不能被打绷带的单位,或没有选择任何目标的话,则对自己使用绷带。

而且不会对当前目标进行切换,不会中断对当前敌人的攻击。

使用此宏,你必须把你要用的绷带放在背包的特定位置中。UseContainerItem(2,1)中的2是背包的编号,1是格子的编号。(2,1)表示右数第3个包的第一个格子。把它们换成对应你绷带位置的编号。

5个背包按照排列位置编号如下:

[4][3][2][1][0]]

6格包的格子编号如下:

_____[1][2]

[3][4][5][6]

16格包的格子编号如下:

[ 1][ 2][ 3][ 4]

[ 5][ 6][ 7][ 8]

[ 9][10][11][12]

[13][14][15][16]

其他格数以此类推。

将第一行换成/ UseAction(25,0,1),则不需将绷带放在背包特定位置,但必须将绷带拖入技能栏的特定位置。25表示技能栏的编号。第一排第一格编号为1,最后一格为12。第二排第一格编号为13,最后一格为24。以此类推。25表示第三排的第一格。

将第一行换成/use "Linen Bandage",则不需将绷带放在背包的特定位置,也不需将其拖入技能栏。将Linen Bandage换成你使用的绷带的名字。推荐尝试,但此宏没有经过测试。

此宏也还有如下的实现方法:

/scr ipt UseContainerItem(0,1)

/scr ipt if ( SpellIsTargeting() ) then TargetUnit("player"); end

3.B 如果想在任何条件下都只对自己使用绷带的话,用如下的宏:

/target "player"

/use "Linen Bandage"

/scr ipt TargetLastEnemy()

同样,这个宏会切换当前目标,中断攻击,盗贼的连击点也会被清空。

下面这个宏也只对自己使用绷带,但在使用后会切换回先前的目标(不管是敌对中立还是友好的)。

/scr ipt p="player";t="target";if(not UnitCanAttack(t, p))then ot=UnitName(t);TargetUnit(p);else ot=nil;end;

UseAction(ActionID);if(SpellIsTargeting()) then SpellTargetUnit(p); end if(ot) then TargetByName(ot);end

4.武器相关

Bag:物品存放背包编号

Slot:物品存放格子编号

MainhandBag:备用主手武器存放背包编号

MainhandBagSlot:备用主手武器存放格子编号

OffhandBag:备用副手武器存放背包编号

OffhandBagSlot:备用副手武器存放格子编号

TwohandsBag:备用双手武器存放背包编号

TwohandsBagSlot:备用双手武器存放格子编号

4.A 对主手武器或双手武器使用砺石

/scr ipt UseContainerItem (Bag,Slot)

/scr ipt PickupInventoryItem (16)

4.B 更换备用主手武器或双手武器

/scr ipt UseContainerItem (Bag,Slot)

/scr ipt PickupInventoryItem (16)

副手的对应宏,将16换为17即可。

4.C 切换主手武器和副手武器

/scr ipt PickupInventoryItem(16);PickupInventoryItem(17)

盗贼可以用这个宏来互换手中的剑与匕首。

4.D 双手武器 -> (主手武器+副手物品)

/scr ipt PickupContainerItem(MainhandBag, MainhandBagSlot)

/scr ipt PickupInventoryItem(16)

/scr ipt PickupContainerItem(TwohandsBag, TwohandsBagSlot)

/scr ipt PickupContainerItem(OffhandBag, OffhandBagSlot)

/scr ipt PickupInventoryItem(17)

(主手武器+副手物品) -> 双手武器

/scr ipt PickupInventoryItem(17)

/scr ipt PickupContainerItem(OffhandBag, OffhandBagSlot)

/scr ipt PickupContainerItem(TwohandsBag, TwohandsBagSlot)

/scr ipt PickupInventoryItem(16)

/scr ipt PickupContainerItem(MainhandBag, MainhandBagSlot)

副手物品可以是盾牌、副手武器、副手装备品。注意以上几个宏使用之时,鼠标上不要拖有物品,否则会出错。如要避免,可以使用CursorHasItem()来进行预判断。参看下面的几个宏:

4.E(主手武器+副手物品)<-> (单手武器+副手物品)

/scr ipt if ( not CursorHasItem() ) then PickupContainerItem(mainhandBag, mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag, mainhandBagSlot); PickupContainerItem(offhandBag, offhandBagSlot); PickupInventoryItem(17); PickupContainerItem(offhandBag, offhandBagSlot); end

4.F 单主手武器或双手武器 -> (主手武器+副手物品)

/scr ipt if ( not CursorHasItem() ) then PickupContainerItem(mainhandBag, mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag, mainhandBagSlot); PickupContainerItem(offhandBag, offhandBagSlot); PickupInventoryItem(17); if ( CursorHasItem() ) then PickupContainerItem(offhandBag, offhandBagSlot); end end

(主手武器+副手物品)-> 单主手武器或双手武器

/scr ipt if ( not CursorHasItem() ) then PickupInventoryItem(17); if ( CursorHasItem() ) then PickupContainerItem(offhandBag, offhandBagSlot); end PickupContainerItem(mainhandBag, mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag, mainhandBagSlot); end

4.G 更换备用主手武器

/scr ipt if ( not CursorHasItem() ) then PickupContainerItem(mainhandBag, mainhandBagSlot); PickupInventoryItem(16); PickupContainerItem(mainhandBag, mainhandBagSlot); end

5.组队相关

5.A 设置辅助目标+自动辅助

下面是2个配合使用的宏。先在宏窗口第一个空位建立一个宏,选择一个图标,内容为空。

再另建一个宏如下:

/scr ipt if (UnitName("target") ~= nil) then EditMacro(1, "Assist "..UnitName("target"), nil, "/assist "..UnitName("target"), 1) end

/ SaveMacros()

对选择的队友使用第二个宏,则自动将第一个宏设置为辅助选择的目标。也就是用宏来更换自动协助的目标,不用手动编辑宏来更换。

5.B 变羊+信息提示

这是一个法师在组队的时候用的宏,在变羊的同时,在PARTY中说明变羊目标的等级名字。

/scr ipt if ( UnitExists("target") and UnitIsEnemy("player","target") ) then SendChatMessage("Sheeping Level " ..UnitLevel("target") .." " ..UnitName("target") ..". Don't Attack it!", "PARTY") CastSpellByName("Polymorph(Rank 1)"); if not PlayerFrame.inCombat then ClearTarget(); end end

超简化的一个版本,功能上差一点。

/p Sheeping >>> %t <<<

/cast Polymorph (Rank X)

6.打开/关闭背包

/scr ipt ToggleBag(0) 背囊

/scr ipt ToggleBag(1) 右数第二个包

/scr ipt ToggleBag(2) 右数第三个包

/scr ipt ToggleBag(3) 右数第四个包

/scr ipt ToggleBag(4) 右数第五个包

上面的几个是切换特定背包的状态,如果当前是打开着的则关闭。如果当前是关闭着的,则打开。

适当的组合可以让你设定只打开特定的几个背包。如猎人可以选择不打开箭筒或子弹袋。

/scr ipt OpenAllBags()打开所有背包

7.宠物相关(猎人、术士)

下面的一些宏虽是对应猎人,术士只需稍加改动就可以用了。

7.A 施放猎人印记的同时宠物攻击

/cast Hunter's Mark(Rank 1)

/scr ipt PetAttack()

7.B 切换到宠物正在攻击的目标并施放毒蛇刺击

/scr ipt TargetUnitsPet("Player")

/assist

/cast Serpent Sting(Rank 1)

7.C 召回宠物并使用散射

此宏是有散射技能的玩家所必需的。

/scr ipt PetFollow()

/Cast Scatter Shot()

7.D 选择目标,开始攻击

如果当前目标是友好目标,则协助目标。使用猎人印记,宠物攻击,如果没有在战斗状态,开始自动射击。如果目标是敌人的话,则直接使用技能。此宏在SOLO组队中都比较实用。

/scr ipt if (UnitIsFriend("player","target")) then AssistUnit("target"); end

/cast Hunter's Mark(Rank X)

/cast PetAttack()

/scr ipt if(not PlayerFrame.inCombat) then CastSpellByName("Auto Shot"); end

7.E 喂食

最简单的一键喂食,把食物放入对应的背包格子中。

/cast Feed Pet

/scr ipt PickupContainerItem (Bag,Slot)

下面这个会先判断玩家是否处于战斗之中。如对应的格子中没有食物,则会打开相应的背包。

/scr ipt if (not PlayerFrame.inCombat) then if (not

GetContainerItemLink(Bag, Slot)) then OpenBag(Bag); else CastSpellByName("Feed Pet"); PickupContainerItem(Bag, Slot); end end

8.判断目标身上是否有特定BUFF

8.A 猴之守护+物理攻击

下面的宏会先判断玩家身上是否加有猴之守护,如果没有,使用猴之守护。如果玩家未在战斗状态,则开始物理攻击。也可以把Attack换为Raptor Strike。

/scr ipt if (not string.find(UnitBuff("player", 1), "Mon")) then CastSpellByName("Aspect of the Monkey"); end

/scr ipt if (not PlayerFrame.inCombat) then CastSpellByName("Attack"); end

8.B 鹰之守护+自动射击

而这个则是先开始自动射击,再判断身上是否有鹰之守护的效果,没有的话,使用鹰之守护。

/cast Auto Shot

/scr ipt if (not string.find(UnitBuff("player", 1), "Raven")) then CastSpellByName("Aspect of the Hawk(Rank X)"); end

8.C 鹰之守护+瞄准射击

瞄准射击的版本

/scri pt if (not string.find(UnitBuff("player", 1), "Raven")) then CastSpellByName("Aspect of the Hawk(Rank X)"); else CastSpellByName("Aimed Shot(Rank Y)"); end

9.影遁相关(暗夜专用)

9.A 藏身

影遁的同时躺下,藏身之用……

/cast Shadowmeld(Racial)

/laydown

9.B 进食

吃饭喝水的同时影遁,也是出于安全考虑……

/target "player"

/scr ipt UseContainerItem(FoodBag, FoodSlot);

/scr ipt UseContainerItem(DrinkBag, DrinkSlot);

/cast Shadowmeld(Racial)

10.切换技能栏

/scr ipt CURRENT_ACTIONBAR_PAGE = X

/scr ipt ChangeActionBarPage()

将3换成你想切换到的技能栏页数

此宏可以有这样的用法

/cast Aspect of the Monkey

/scr ipt CURRENT_ACTIONBAR_PAGE = 3

/scr ipt ChangeActionBarPage()

切换技能栏的同时使用猴之守护。

还可以加上前面的BUFF判断

/scr ipt if (not string.find(UnitBuff("player", 1), "Mon")) then CastSpellByName("Aspect of the Monkey"); end

/scr ipt CURRENT_ACTIONBAR_PAGE = 3

/scr ipt ChangeActionBarPage()

11.目标信息

/scr ipt if UnitClassification("target")=="elite" then SendChatMessage("".. UnitLevel("target") .. "+ " .. UnitName("target"), "party") else SendChatMessage("" .. UnitLevel("target") .. " " .. UnitName("target"), "party"); end

这个宏在PARTY频道中发出当前目标的一些相关信息。"+"代表精英。效果如下:

[Party]Hank:50 Stormwind Guard

[Party]Hank:43+ King Bangalash

下面是一个目标信息的相关函数列表:

UnitName 如"Coffiex","moonwell"

UnitLevel 如"42","60"

UnitClass 如"Warrior","Shaman"

UnitClassification 如"elite","worldboss"

UnitCreatureFamily 如"Wolf","Cat"

UnitCreatureType 如"Beast","Humanoid"

UnitRace 如"Nightelf","Orc"

12.任务接受页面相关

12.A 增加文字浮现速度

/scr ipt QUEST_DEION_GRADIENT_CPS = 100

12.B 取消文字逐渐浮现效果

/scr ipt QUEST_FADING_ENABLE = nil

12.C 直接接受当前窗口中的任务

/scr ipt AcceptQuest()

13.切换全屏模式与窗口模式

/scri pt SetCVar("gxWindow", 1 - GetCVar("gxWindow"))

/console gxRestart

14.设定“真实鼠标视野”

/scr ipt CameraOrSelectOrMoveStart(arg1)

15.延迟宏(需要Cosmos)

15.A 盗贼武器上毒并定时提示

给双手的武器都上毒,并在毒性还有一分钟就消退的时候在聊天窗口发出提示信息。

/scr ipt UseContainerItem(Bag,Slot); PickupInventoryItem(16); UseContainerItem(Bag,Slot); PickupInventoryItem(17);

/in 1740 / DEFAULT_CHAT_FRAME:AddMessage("Poison wearing off in one minute.")

15.B 魔法效果消退提示

同样的,你也可以对持续性的魔法使用相似的宏。提示信息将在魔法使用X秒后出现,提示你还有Y秒魔法就将会失效。

/scr ipt T = UnitName("target");

/cast Spell(Rank 1);

/in X / DEFAULT_CHAT_FRAME:AddMessage("Spell will wear off " ..T .." in Y seconds.")

也可以这样,X为魔法的持续时间(秒)。在魔法效果消退时提示信息。

/scr ipt T = UnitName("target");

/cast Spell(Rank 1);

/in X / DEFAULT_CHAT_FRAME:AddMessage("Spell has worn off " ..T)

15.C 使用闷棍并在不同时段内提示不同信息

使用闷棍并在不同时段内在PARTY中提示不同信息。以下是3级的闷棍的例子

/scr ipt T = UnitLevel("target") .. " " .. UnitName("target");

/cast Sap(Rank 3);

/scr ipt SendChatMessage(T.." sapped.","party");

/in 30 / SendChatMessage(T.." up in 15.","party");

/in 40 / SendChatMessage(T.." up in 5.","party");

/in 45 /fire

15.D 战士逃跑宏

这是一个战士逃跑的时候使用的宏,首先使用包中的药水,换上盾牌(此例中其换武器的快捷位于技能栏第一页第11和12格)。使用Thunder Clap减低敌人速度,然后转身逃跑。

/scr ipt UseContainerItem(Bag, Slot);ActionButtonDown(11);ActionButtonUp(11);ActionButtonDown(12);ActionButtonUp(12)

/cast Thunder Clap(Rank 1)

/scr ipt TurnLeftStart(arg1)

/in 1 / TurnLeftStop(arg1);ToggleAutoRun()

16.数组宏的实际运用

下面的宏让你只使用一个宏就可以循环地使用数个技能。此以圣骑士为例,第一次使用Seal of the Crusader,第二次使用Judgement,第三次使用Seal of Righeousness,第四次又回到使用Seal of the Crusader,如此循环。

新建宏如下:

/scr ipt AQ={};AQ.i=1;AQ.x=function() AQ[AQ.i]() end

/scr ipt AQ[1]=function() CastSpellByName("Seal of the Crusader(Rank 1)"); AQ.i=2 end

/scr ipt AQ[2]=function() CastSpellByName("Judgement"); AQ.i=3 end

/scr ipt AQ[3]=function() CastSpellByName("Seal of Righeousness(Rank 1)"); AQ.i=1 end

再新建一宏如下:

/scr ipt AQ.x()

在每次进入游戏之后使用一次第一个宏,然后利用第二个宏就可以实现技能的循环使用了。

17.通用变量的设置与使用

通用变量可以被你所有的宏所调用。

用下面的格式新建一�

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格&#8203;十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有