UPD:ADDED IN FIRST POST
Макрос на тотемы шамана
Смысл в том, что идет проверка наличия тотемов от других шаманов + бафов, что не стакаются с тотемами и исходя из этого через приоритет ставятся тотемы. Надо нажать 4 раза, чтобы поставить все тотемы.
/run function findwarlock () for i=1,40 do class = select(5, GetRaidRosterInfo(i)) if (class == "Warlock") then return 1 end end end z = findwarlock()
/target [noexists] player
/run x1, x2, x3, x4 = GetTotemInfo(1)
/run if not(x2=="") then ClearTarget() end
/run if not(z == nil) then ClearTarget() end
/run if(UnitBuff("player", "Totem of Wrath IV")) then ClearTarget() end
/run x=IsUsableSpell("Totem of Wrath");
/run if not(x==1) then ClearTarget() end;
/cast [exists] Totem of Wrath
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if not(z == nil) then ClearTarget() end
/run if(UnitBuff("player", "Flametongue Totem VIII")) then ClearTarget() end
/cast [exists] Flametongue Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Frost Resistans Totem VI")) then ClearTarget() end
/run if(UnitBuff("player", "Frost Resistance Aura")) then ClearTarget() end
/cast [exists] Frost Resistans Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run x = CheckInteractDistance("target", 3);
/run if not(x==1) then ClearTarget() end;
/run if(UnitBuff("player", "Magma Totem")) then ClearTarget() end
/cast [exists] Magma Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Searing Totem
/targetlasttarget [noexists]
/run x1, x2, x3, x4 = GetTotemInfo(2)
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Strength of Earth Totem VIII")) then ClearTarget() end
/run if(UnitBuff("player", "Horn of Winter")) then ClearTarget() end
/cast [exists] Strength of Earth Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Stoneskin Totem X")) then ClearTarget() end
/cast [exists] Stoneskin Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Tremor Totem
/targetlasttarget [noexists]
/run x1, x2, x3, x4 = GetTotemInfo(3)
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Mana Spring")) then ClearTarget() end
/run if(UnitBuff("player", "Blessing of Wisdom")) then ClearTarget() end
/cast [exists] Mana Spring Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Healing Stream Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Fire Resistans Totem VI")) then ClearTarget() end
/run if(UnitBuff("player", "Fire Resistance Aura")) then ClearTarget() end
/cast [exists] Fire Resistans Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Cleansing Totem
/targetlasttarget [noexists]
/run x1, x2, x3, x4 = GetTotemInfo(4)
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Wrath of Air Totem")) then ClearTarget() end
/cast [exists] Wrath of Air Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Windfury Totem")) then ClearTarget() end
/run if(UnitBuff("player", "Improved Icy Talons")) then ClearTarget() end
/cast [exists] Windfury Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Nature Resistance Totem VI")) then ClearTarget() end
/run if(UnitBuff("player", "Aspect of the Wild")) then ClearTarget() end
/cast [exists] Nature Resistance Totem
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Grounding Totem
/targetlasttarget [noexists]
/run function findwarlock () for i=1,40 do class = select(5, GetRaidRosterInfo(i)) if (class == "Чернокнижник") then return 1 end end end z = findwarlock()
/target [noexists] player
/run x1, x2, x3, x4 = GetTotemInfo(1)
/run if not(x2=="") then ClearTarget() end
/run if not(z == nil) then ClearTarget() end
/run if(UnitBuff("player", "Тотем гнева IV")) then ClearTarget() end
/run x=IsUsableSpell("Тотем гнева");
/run if not(x==1) then ClearTarget() end;
/cast [exists] Тотем гнева
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if not(z == nil) then ClearTarget() end
/run if(UnitBuff("player", "Тотем языка пламени VIII")) then ClearTarget() end
/cast [exists] Тотем языка пламени
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Тотем сопротивления льду VI")) then ClearTarget() end
/run if(UnitBuff("player", "Аура защиты от магии льда")) then ClearTarget() end
/cast [exists] Тотем сопротивления льду
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run x = CheckInteractDistance("target", 3);
/run if not(x==1) then ClearTarget() end;
/run if(UnitBuff("player", "Тотем магмы")) then ClearTarget() end
/cast [exists] Тотем магмы
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Опаляющий тотем
/targetlasttarget [noexists]
/run x1, x2, x3, x4 = GetTotemInfo(2)
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Тотем силы земли VIII")) then ClearTarget() end
/run if(UnitBuff("player", "Зимний горн")) then ClearTarget() end
/cast [exists] Тотем силы земли
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Тотем каменной кожи X")) then ClearTarget() end
/cast [exists] Тотем каменной кожи
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Тотем трепета
/targetlasttarget [noexists]
/run x1, x2, x3, x4 = GetTotemInfo(3)
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Источник маны")) then ClearTarget() end
/run if(UnitBuff("player", "Благословение мудрости")) then ClearTarget() end
/cast [exists] Тотем источника маны
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Тотем исцеляющего потока
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Тотем сопротивления огню VI")) then ClearTarget() end
/run if(UnitBuff("player", "Аура защиты от огня")) then ClearTarget() end
/cast [exists] Тотем сопротивления огню
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Тотем очищения
/targetlasttarget [noexists]
/run x1, x2, x3, x4 = GetTotemInfo(4)
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Тотем гнева воздуха")) then ClearTarget() end
/cast [exists] Тотем гнева воздуха
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Тотем неистовства ветра")) then ClearTarget() end
/run if(UnitBuff("player", "Цепкие ледяные когти")) then ClearTarget() end
/cast [exists] Тотем неистовства ветра
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/run if(UnitBuff("player", "Тотем сопротивления силам природы VI")) then ClearTarget() end
/run if(UnitBuff("player", "Дух дикой природы")) then ClearTarget() end
/cast [exists] Тотем сопротивления силам природы
/targetlasttarget [noexists]
/run if not(x2=="") then ClearTarget() end
/cast [exists] Тотем заземления
/targetlasttarget [noexists]
Сообщение отредактировал CemXokenc: 15 февраля 2020 - 23:39