Паладин
-
- Сообщения: 55
- Зарегистрирован: 31 мар 2018, 09:51
Re: Паладин
Нужно держать босса в таргете а в условии ставить targettarget
Re: Паладин
Хе.
Тут не так просто. Самый лучший вариант получился при использовании полу автоматического режима.
Выглядит так, по порядку блоки:
-хил ротация в таргет.
-хил ротация в цикл по союзникам.
-дд ротация через таргеттаргет
-дд ротация в таргет.
Конечно у некоторых классов свои фишки. Например шам между 1 и 2 блоком использует дотку на врага и скидывает проки магмы.
Тут не так просто. Самый лучший вариант получился при использовании полу автоматического режима.
Выглядит так, по порядку блоки:
-хил ротация в таргет.
-хил ротация в цикл по союзникам.
-дд ротация через таргеттаргет
-дд ротация в таргет.
Конечно у некоторых классов свои фишки. Например шам между 1 и 2 блоком использует дотку на врага и скидывает проки магмы.
Re: Паладин
Код: Выделить всё
function CheckUseItem(itemId)
local status = false;
local count = GetItemCount(itemId);
if (count or 0) > 0 then
local start,duration,enable = GetItemCooldown(itemId);
if start == 0 and duration == 0 and enable then
status = true;
end
end
return status;
end
Talents = {{}, {}, {}, {}, {}, {}, {}}
local function GetTalents()
for tier=1,7 do
for value=1,3 do
Talents[tier][value] = (select(4, GetTalentInfo(tier, value, 1)))
end
end
end
local Eye = CreateFrame("Frame")
Eye:RegisterEvent("PLAYER_ENTERING_WORLD")
Eye:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED")
Eye:RegisterEvent("PLAYER_TALENT_UPDATE")
Eye:SetScript("OnEvent",
function(self, event, ...)
if event == "PLAYER_TALENT_UPDATE" then
GetTalents()
elseif event == "PLAYER_SPECIALIZATION_CHANGED" then
GetTalents()
elseif event == "PLAYER_ENTERING_WORLD" then
GetTalents()
Eye:UnregisterEvent("PLAYER_ENTERING_WORLD")
end
end
)
AzeriteSpells = {}
local function GetAzeriteSpells()
local slotIDs = {1, 3, 5} -- Inventory slots with azerite talents
for _,slot in ipairs(slotIDs) do
if GetInventoryItemID("player",slot)~=nil then
local itemLocation = ItemLocation:CreateFromEquipmentSlot(slot)
if C_AzeriteEmpoweredItem.IsAzeriteEmpoweredItem(itemLocation) then
local allTierInfo = C_AzeriteEmpoweredItem.GetAllTierInfo(itemLocation)
for _, tier in ipairs(allTierInfo) do
for _, azeritePowerID in ipairs(tier.azeritePowerIDs) do
if C_AzeriteEmpoweredItem.IsPowerSelected(itemLocation, azeritePowerID) then
AzeriteSpells[C_AzeriteEmpoweredItem.GetPowerInfo(azeritePowerID).spellID]=true
end
end
end
end
end
end
end
local Eye = CreateFrame("Frame")
Eye:RegisterEvent("PLAYER_ENTERING_WORLD")
Eye:RegisterEvent("PLAYER_EQUIPMENT_CHANGED")
Eye:RegisterEvent("PLAYER_SPECIALIZATION_CHANGED")
Eye:RegisterEvent("AZERITE_EMPOWERED_ITEM_SELECTION_UPDATED")
Eye:SetScript("OnEvent",
function(self, event, ...)
if event == "PLAYER_EQUIPMENT_CHANGED" then
GetAzeriteSpells()
elseif event == "AZERITE_EMPOWERED_ITEM_SELECTION_UPDATED" then
GetAzeriteSpells()
elseif event == "PLAYER_SPECIALIZATION_CHANGED" then
GetAzeriteSpells()
elseif event == "PLAYER_ENTERING_WORLD" then
GetAzeriteSpells()
Eye:UnregisterEvent("PLAYER_ENTERING_WORLD")
end
end
)
Re: Паладин
Код: Выделить всё
function uaz266_Disease()
local i = 1
local buff,_,_,count,bufftype,duration = UnitDebuff("player", i)
while buff do
if bufftype == "Disease" then return true end
i = i + 1;
buff,_,_,count,bufftype,duration = UnitDebuff("player", i)
end
return false
end
function uaz266_Poison()
local i = 1
local buff,_,_,count,bufftype,duration = UnitDebuff("player", i)
while buff do
if bufftype == "Poison" then return true end
i = i + 1;
buff,_,_,count,bufftype,duration = UnitDebuff("player", i)
end
return false
end
Re: Паладин
eminsk писал(а): ↑24 ноя 2019, 20:54ретрик.rar
Код: Выделить всё
function uaz266_Disease() local i = 1 local buff,_,_,count,bufftype,duration = UnitDebuff("player", i) while buff do if bufftype == "Disease" then return true end i = i + 1; buff,_,_,count,bufftype,duration = UnitDebuff("player", i) end return false end function uaz266_Poison() local i = 1 local buff,_,_,count,bufftype,duration = UnitDebuff("player", i) while buff do if bufftype == "Poison" then return true end i = i + 1; buff,_,_,count,bufftype,duration = UnitDebuff("player", i) end return false end
Привет,есть ошибка в выборе скила Испепеляющий след.А так сборка вполне юзабельная.Спасибо.
Re: Паладин
Почему то на 4.3.4 не хочет очищение работать, посмотрите может что то перепутал?
- Вложения
-
- очищен ката.png (18.21 КБ) 126221 просмотр
Re: Паладин
Попробуй так
Код: Выделить всё
function DispellPaladin(Unit)
local i = 1
local name, _, _, _, debuffType = UnitDebuff(Unit, i)
while name do
if ((debuffType == "Poison") or (debuffType == "Disease")) then return true end
i = i + 1;
name, _, _, _, debuffType = UnitDebuff(Unit, i)
end
return false
end
-
- Сообщения: 188
- Зарегистрирован: 11 апр 2018, 09:29
Re: Паладин
Специально для таких случаев сделал такую конструкцию в боте, но всё равно используют старый метод)
P.S. тут лучше условие на F4 использовать вне цикла на перебор союзников.
Discord:EnterBrain#6570
Re: Паладин
Этот вариант тоже не хочет работатьEnterBrain писал(а): ↑02 фев 2020, 17:18Специально для таких случаев сделал такую конструкцию в боте, но всё равно используют старый метод)
P.S. тут лучше условие на F4 использовать вне цикла на перебор союзников.
Я правильно с ф4 сделал вне цикла?
- Вложения
-
- очищщщ.png (11.31 КБ) 126181 просмотр
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость