Пишу скрипт на ребаф. На персонаже висит фул баф, но проверка проходит условия и опять ребафает. Прошу проверить правильно ли составлены условия. Бафы разделены должны быть на 3 группы - комбо, замена комбо 52-70 (если лвл мал), остальные бафы. Ребафаться нужно если одна из групп бафов отсутствует.
Код:
...
if (user.mp>30) and ((user.classid = 52) or (user.classid = 116)) and (not user.dead) then
if not(((user.buffs.byid(1535,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1517,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1519,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1518,buffs)) or (buffs.EndTime<59000))
and (user.level > 70))
or not(((user.buffs.byid(1390,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1309,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1002,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1006,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1562,buffs)) or (buffs.EndTime<59000))
and (user.level > 52))
or not(((user.buffs.byid(1308,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1310,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1253,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1253,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1251,buffs)) or (buffs.EndTime<59000))
and not ((user.buffs.byid(1251,buffs)) or (buffs.EndTime<59000))
and ((user.level < 70) and (user.level > 52)))
then begin
print ('Ребафаюсь!');
...