Проверка дот и хот по ID

Ответить
PiTbull
Сообщения: 12
Зарегистрирован: 17 авг 2019, 19:38

Проверка дот и хот по ID

Сообщение PiTbull » 19 окт 2019, 16:19

Многие сталкивались с проблемой с ротацией на тт монка, а именно то что при касте тумана, вешается 2 баффа, один от заклинания другой от статуи и они имеют одинаковые называния. Хотелось бы увидеть в дальнейшем проверку по ID баффа.

uaz266
Сообщения: 372
Зарегистрирован: 12 ноя 2016, 03:30

Re: Проверка дот и хот по ID

Сообщение uaz266 » 20 окт 2019, 13:22

То же давно просил разработчика обратить на это внимание. Например у кота то же есть одноименные дебафы название одно а функции разные,решить можно только по ID/

Reqqque
Сообщения: 214
Зарегистрирован: 01 дек 2018, 20:28

Re: Проверка дот и хот по ID

Сообщение Reqqque » 20 окт 2019, 15:50

Код: Выделить всё

function Buffid(sid)
 local i = 1
 local name, _, _, _, _, _, _, _, _, spellId = UnitBuff("Player", i)
 while name do 
  if spellId == sid then return true end
  i = i + 1;
  name, _, _, _, _, _, _, _, _, spellId = UnitBuff("Player", i)
 end
 return false
end
Можешь отслеживать по ид этой функцией

uaz266
Сообщения: 372
Зарегистрирован: 12 ноя 2016, 03:30

Re: Проверка дот и хот по ID

Сообщение uaz266 » 21 окт 2019, 06:58

Спасибо большое!!!

PiTbull
Сообщения: 12
Зарегистрирован: 17 авг 2019, 19:38

Re: Проверка дот и хот по ID

Сообщение PiTbull » 24 окт 2019, 09:56

Reqqque писал(а):
20 окт 2019, 15:50

Код: Выделить всё

function Buffid(sid)
 local i = 1
 local name, _, _, _, _, _, _, _, _, spellId = UnitBuff("Player", i)
 while name do 
  if spellId == sid then return true end
  i = i + 1;
  name, _, _, _, _, _, _, _, _, spellId = UnitBuff("Player", i)
 end
 return false
end
Можешь отслеживать по ид этой функцией
Как сделать тоже самое только для ForeachUnit, ковырялся, не получается(

PiTbull
Сообщения: 12
Зарегистрирован: 17 авг 2019, 19:38

Re: Проверка дот и хот по ID

Сообщение PiTbull » 24 окт 2019, 10:29

А все, разобрался

Код: Выделить всё

function Buffid(Unit, sid)
 local i = 1
 local name, _, _, _, _, _, _, _, _, spellId = UnitBuff(Unit, i)
 while name do 
  if spellId == sid then return true end
  i = i + 1;
  name, _, _, _, _, _, _, _, _, spellId = UnitBuff(Unit, i)
 end
 return false
end
Изображение

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость