Форум работает в тестовом режиме. Все данные были перенесены со старого сайта 2018 года. Некоторая информация может быть недоступна, например вложения или хайды. Просьба сообщать о данных случаях через функционал "Жалоба", прямо под постом, где отсуствуют данные из хайда или проблемы с вложением.
Могут быть проблемы в "выкидыванием" с форума (слетевшей авторизацией). Нужно собрать статистику таких случаев.
Есть Тема, куда можете сообщить о проблемах с сайтом либо просто передать привет.

проверка бафа через GetControl

Рег
2 Мар 2016
Сообщения
234
Реакции
0
Подскажите команду для проверки бафа на другом окне, через GetControl?
 
Вынесу в список скриптов, @Krickt предложил отличный шаблон поверки бафа на другом боте)
 
Krickt написал(а):
var EngineCustom: TL2Control; UserCustom: TL2User; Buff: TL2Buff; begin EngineCustom:= GetControl('bla-bla'); if (EngineCustom <> nil) then begin UserCustom:= EngineCustom.GetUser; if (not UserCustom.Buffs.ByID(111, Buff)) or (Buff.EndTime < 10*1000) then begin end; end; end.
Спасибо большое. Не могу только понять что дает эта строчка? Это условие ведь сработает в любом случае? Так зачем оно тогда?



if (EngineCustom <> nil) then
begin


Будет ли работать так:
Код:
var  EngineCustom: TL2Control;
  UserCustom: TL2User;
  Buff: TL2Buff;


begin
  EngineCustom:= GetControl('bla-bla');
  UserCustom:= EngineCustom.GetUser;
if (not UserCustom.Buffs.ByID(111, Buff)) or (Buff.EndTime < 10*1000)  then delay (111) ;
 end.
 
А вдруг 2ое окно еще не запущено, а скрипт уже запущен? Тогда GetControl вернет nil, что мы и проверяем.
А если мы попробуем что-то сделать с EngineCustom, когда оно nil, то получим критическую ошибку, есть шанс крашнуть адреналин полностью.

Чем больше возможных критических ситуаций код предусматривает, тем он лучше. Не просто же я именно так написал. )
 
Krickt написал(а):
А вдруг 2ое окно еще не запущено, а скрипт уже запущен? Тогда GetControl вернет nil, что мы и проверяем. А если мы попробуем что-то сделать с EngineCustom, когда оно nil, то получим критическую ошибку, есть шанс крашнуть адреналин полностью. Чем больше возможных критических ситуаций код предусматривает, тем он лучше. Не просто же я именно так написал. )
Умно. Вот и я подумал что не просто так написана проверка, потому и решил уточнить для чего она. Теперь хоть буду знать.
 
Krickt написал(а):
А если мы попробуем что-то сделать с EngineCustom, когда оно nil, то получим критическую ошибку, есть шанс крашнуть адреналин полностью.
вызов мембер функции nil обьекта вполне законная операция, и ничего не положит(особенно, если внутри методов есть проверка self на nil).
нет возможности проверить, но вроде так и есть.
 
@rsd,

Hn7v62I.png

bz0kG6a.png
 
значит с чем то другим попутал, сорян.
 
эта проверка пригодиться для суммона ))) кто хочет реализовать суммон на фарм)
 
Назад
Сверху