|
How to use Macros:
When you are in-game, type /macro
Hit New, select an Icon, and give it a name.
Paste one of the below macros into the text portion, and hit complete.
Drag the macro onto your Interface bars, and click to use. Typically, you'll want to have targetted whatever you want the macro to effect.
For a better write up, read this:
http://www.rpgexpert.com/4118.html (excellent write up on macro basics, with pictures)
--------------------------------------------------
Useful Warlock AddOns:
Countdoom (resurrection): http://www.curse-gaming.com/mod.php?addid=1359
Scrolling Combat Text: http://www.curse-gaming.com/mod.php?addid=222
Servitude Resurrection (Graguk's re-release of Servitude): http://www.curse-gaming.com/mod.php?addid=1218
Shard Tracker Resurrection: http://curse-gaming.com/mod.php?addid=2495
Necrosis: http://www.revolvus.com/games/interface/necrosis/forum/index.php
Supermacro (required for the Megamacros): http://www.curse-gaming.com/mod.php?addid=629
MegaMacro: http://www.curse-gaming.com/mod.php?addid=564
SmartPet: http://www.curse-gaming.com/mod.php?addid=1071
--------------------------------------------------
Useful Reference Sites:
http://www.wowwiki.com/Interface_Customization
http://www.cosmosui.org/texts/BlizzardCommands.xml
http://forums.worldofwarcraft.com/board.aspx?fn=wow-interface-customization
http://www.rpgexpert.com/4118.html (excellent write up on macro basics, with pictures)
http://wow-ui-faq.knows.it/
which redirects to:
http://forums.worldofwarcraft.com/thread.aspx?fn=wow-interface-customization&t=124206
--------------------------------------------------
Recently Added Macros:
3rd February 2006:
ZHC and TOEP without Megamacros (Thanks Cominagetcha):
/script if GetInventoryItemCooldown("player", 13) == 0 then UseInventoryItem(13); SpellStopCasting(); end
/script if GetInventoryItemCooldown("player", 14) == 0 then UseInventoryItem(14); SpellStopCasting(); end
/cast Shadow Bolt
19th December 2005:
TOEP and ZHC Macro (requires MegaMacros). It will activate both if the cooldowns have expired as long as your target's HP is above 30%, then cast Shadow Bolt if you have enough mana, if not it will Life Tap.
It assumes TOEP is in the lower slot and ZHC in higher slot, but this is only relevant if you plan to modify the macro in case you only have one or the other:
function ToepUP()
local ToepCooldown;
_,ToepCooldown=GetInventoryItemCooldown("player",14);
if ToepCooldown <= 0 then
return true;
else
return false;
end
end
function ZHCUP()
local ZHCCooldown;
_,ZHCCooldown=GetInventoryItemCooldown("player",13);
if ZHCCooldown <= 0 then
return true;
else
return false;
end
end
function CastMySpells()
if UnitMana("player") > 369 then
if ToepUP() and UnitHealth("target") > 30 then
UseInventoryItem(14);
SpellStopCasting();
end
if ZHCUP() and UnitHealth("target") > 30 then
UseInventoryItem(13);
SpellStopCasting();
end
CastSpellByName("Shadow Bolt");
else
CastSpellByName("Life Tap");
end
end
Put those in your LUA editor, then in your macro, just call:
/script CastMySpells();
13th October 2005:
Updated Siphon Life macro:
/script z=0;for i=1,16 do GameTooltipTextLeft1:SetText(nil);GameTooltip:SetUnitDebuff("target",i);if GameTooltipTextLeft1:GetText()=="Siphon Life" then z=1;end;end;if z==1 then TargetNearestEnemy();else CastSpellByName("Siphon Life");end
ToEP and Shadow Bolt macro (using Astryl's method so it doesn't require 2 presses of the button) - it will only activate if your target's health is above 30%, *or* it's a player. It assumes the lower trinket slot - use Trinket0Slot if you have it in the upper slot:
/script local a=GetInventorySlotInfo("Trinket1Slot");local b,c=GetInventoryItemCooldown("player",a);if c <= 0 and (UnitHealth("target") > 30 or UnitIsPlayer("target")) then UseInventoryItem(a);SpellStopCasting();end CastSpellByName("Shadow Bolt(rank 9)");
Updated Amplify Curse if it's up (you need to use the "SCAN SPELLBOOK" macro to find the ID in *your* spellbook - change 16 to your ID), then immediately also cast the highest rank of Curse of Agony.
/script local e, f, g = GetSpellCooldown(16, SpellBookFrame.bookType); if (f <= 0) then CastSpellByName("Amplify Curse"); SpellStopCasting();end; CastSpellByName("Curse of Agony");
Updated Amplify Curse, else Curse of Exhaustion:
/script local e, f, g = GetSpellCooldown(16, SpellBookFrame.bookType); if (f <= 0) then CastSpellByName("Amplify Curse");SpellStopCasting();end; CastSpellByName("Curse of Exhaustion");
Updated Sacrifice, Fel Domination, Summon Voidwalker macro:
First press will Sac a voidwalker (only if it's up), second press activate Fel Domination if it's up and then summon a voidwalker (use the "SCAN SPELLBOOK" macro to find the ID of Fel Domination and Summon Voidwalker in *your* spellbook and replace 16 and 100 respectively with your ID):
/script local e,f=GetSpellCooldown(16, SpellBookFrame.bookType);if UnitCreatureFamily("pet") == "Voidwalker" then CastPetAction(5); elseif f<=0 then CastSpellByName("Fel Domination");SpellStopCasting();end; CastSpell(100, SpellBookFrame.bookType);
SCAN SPELLBOOK:
How to find the location of Fel Domination or Amplify Curse etc.
Change "Fel Domination" to "Amplify Curse" if that's what you are looking for. Use this ID in GetSpellCooldown instead of 16 that I use in the examples.
/script for id = 1, 180, 1 do local spellName, subSpellName = GetSpellName(id, SpellBookFrame.bookType);if spellName and string.find(spellName, "Fel Domination", 1, true) then ChatFrame1:AddMessage("ID is "..id, 1.0, 1.0, 0.5); end; end;[ post edited by Graguk ]
http://wow.allakhazam.com/profile.html?787822
|