Автоматизация заточки предметов до необходимого уровня by NLObP
Возможности скрипта
--------------------
+ Панель управления;
+ Затачиваем по очереди все предметы с ItemID пока не переломаем
или не заточим. Один предмет всегда остаётся.
Необходимо затариться оружием, заточками и валерьянкой.
Name='NLObP'; //Вписать сюда имя чара
//установить константу в зависимости от типа игры (С4 или Интерлюд)
interlude=true; //Interlude - true, C4 - false
Внимание!
Из комбобокса обязательно надо выбрать вещь, чтобы скрипт узнал
ID и количество, только потом ставить напротив галочку.
Галочки снимать не надо, если кончились заточки/вещи - можно сразу идти
покупать и продолжать заточку.
В инвентаре должно быть не менее двух одинаковых затачиваемых вещей, степень заточки значения не имеет
Скрипт распространяется как есть, и я не несу ответственности за то, что ВЫ натворили у себя, его используя.
Поменял, запустил.. итемов не видит...
Может ItemsID.ini нужно другое? Под грацию 2 или под мой сервер...
Вообще не понимаю теперь что не так.
Вообще то нужно. То что в комплекте с пакетхаком от руоффа.
Но судя по скрину у тебя не определяется инвентарь. Либо ID пакетов изменились, либо пакет инвентаря не приходит при старте скрипта. Инвентарь открывается автоматически или нет при запуске скрипта?
Щас проверил, как скрипт включаю инвентарь не открывается автоматов.
Щас в пакетах посмотрел 0х11 itemlist открывается, все просматривается, все расписывается что лежит.
Проблема видать в определении инвенторя..
Здравствуйте)Вроде бы как бы всё работает,точит,н бывает тупо прекращает точить,раза 2-3 точит,остановился)открыл инвентарь юзанул точку,продолжило)вытащил точку на быстрый запуск,сделал макрос через задержку в 1с,точит раз 6-7)хотелось бы узнать в чём проблема,
так как 6-7 раз всёравно маловато)хотелось бы поболее=\
Огромное спасибо NloBp,точу конечно намного быстрей других,но хотелось бы чтоб продолжало дальше,таймеры вроде бы пробавал,вроде не то)
Здравствуйте)Вроде бы как бы всё работает,точит,н бывает тупо прекращает точить,раза 2-3 точит,остановился)открыл инвентарь юзанул точку,продолжило)вытащил точку на быстрый запуск,сделал макрос через задержку в 1с,точит раз 6-7)хотелось бы узнать в чём проблема,
так как 6-7 раз всёравно маловато)хотелось бы поболее=\
Я думаю в особенностях серваков и скорости прохождения пакетов в тракте сервер-пакетхах-клиент. Ведь стоит не успеть обработать нужный пакет и все встаёт колом. Наверное тонкий тюнинг с задержками поможет. Может быть и в алгоритме ошибка.
ЗЫЖ Похожая проблема в скрипте рыбалки. Посылаем пакет взять в руки удочку/оружие, а клиент не берет, или оружие сняли, а пакетхак думает, что нет. Мучаюсь, пока не решил, как исправить.
Да поддерживаю, просто попробуй в частях скрипта на успешную, не успешную заточку вписать delay(50) с таймером поэкспериментируй.
Жаль у меня так он и не заработал...
Эх всётаки дело было в таймерах,поставил 650 и работает всё отлично)Закупаюсь точками и пухами и ... валерьянкой=\
Биг спс создателем и помощникам создателя ч0тк0г0 скрипта)
а скрипт работает если сам прокси не подключается к серверу?
вот что появляется когда ставлю или убираю галочку!
Access violation at address 00552AED in module 'l2pbx.exe'. Read of address 00000000.
Вписал всё как было указано, поставил галочку и появилась ошибка сперва о том что itemsid.ini не найден! я заменил! в этой части скрипта какраз есть эта строка! и ошибка всё равно остаётся!
пс ошибка выделена жирным шрифтом!
ItemsName:=TStringList.Create;
try
ItemsName.LoadFromFile('.\settings\itemsid.ini');
except
msg.Lines.Add('itemsid.ini не найден!');
exit;
end;
end;
//.................................................. ............................
procedure Free; //Вызывается при выключении скрипта
begin
BaseItems:=nil; //NLObP:нельзя так делать с массивом //alexteam: а зачем над ним вообще производить операции в онфрее ? лишнее. 2NLObP насколько помниться в пакскрипте вариант используется. оно то присвоиться без ошибки, по идее.. но зачем.. ?.. ShowInf.Enabled:=false; //alexteam:лишнее ShowInf.Interval:=0; //alexteam:лишнее ShowInf.Free; //alexteam:этого достаточно ShowInf.OnTimer:=nil; //alexteam:лишнее. и вообще ? нафига ? особенно после фрии ?.. обьект уже уничтожен. обращение к полю несуществующего объекта = acess violation.
StringList.Clear; //alexteam: StringList.destroy; и очистит и убьет объект. после этого никаких обращений к StringList. ибо опять же аксес виолейшин.
ItemsName.Clear;//alexteam: ItemsName.destroy; тожесамое.
Последний раз редактировалось alexteam, 01.05.2009 в 02:34.