Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Форум работает в тестовом режиме. Все данные были перенесены со старого сайта 2018 года. Некоторая информация может быть недоступна, например вложения или хайды. Просьба сообщать о данных случаях через функционал "Жалоба", прямо под постом, где отсуствуют данные из хайда или проблемы с вложением.
Могут быть проблемы в "выкидыванием" с форума (слетевшей авторизацией). Нужно собрать статистику таких случаев.
Есть Тема, куда можете сообщить о проблемах с сайтом либо просто передать привет.
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Играю на Interlude-сервере, где для получения 1-й и 2-й профессии достаточно просто апнуть 20-й и 40-й уровни соответственно. При достижении уровня появляется диалоговое окно:
Для клика по соответствующей строчке я делаю проверку на уровень и после этого отправляю требуемый байпасс.
Вопрос: каким образом сделать это более грамотно? Т.е. проверять не уровень, а появление самого диалогового окна, после чего отправлять нужный байпасс. Я попытался приспособить для этих целей разнообразные примеры с отловом появления капчи, которые есть на Равре, но, как всегда, либо лыжи не едут, либо я....... что-то не так делаю.
Буду признателен за разъяснения от более смышленых скриптоделов)
PS. Я не уверен, пригодится ли это, но на всякий случай вот HTML версия диалога (это уже окно для второй профы, но кроме байпассов отличий нет):
Код:
<html>
<title>Class Change</title>
<body>
<center><img src=L2Font-e.replay_logo-e width=258 height=60><br><br><br>
<img src=L2UI_CH3.herotower_deco width=256 height=32><br><br>
<font color=AAAAAA>Please choose from the list of classes below...</font><br><br><br>
<a action="bypass -h npc_31227_change_class 8">Treasure Hunter</a><br>
<a action="bypass -h npc_31227_change_class 9">Hawkeye</a><br>
<img src=L2UI_CH3.herotower_deco width=256 height=32><br></center>
</body>
</html>
@SaintGlory, Получай в переменную в цикле текущий текст диалога! с делаем в 1000
Пока в диалоге не найдешь "Class Change"
можешь вообще отдельным потоком запилить это
если есть необходимость то факт получения профессии можешь в глобальную переменную записывать, ну или проверку ставить в основном теле на текущую профу
@ХОРВЕСТР, а тебя не затруднит привести конкретные примеры того, что ты посоветовал? Слова вроде все знакомые, а вот записать это все кодом с лету пока еще мастерства не хватает..
Человек попросил пример скрипта, исходя из которого можна написать нужное действие, о готовом варианте даже не упоминалось. Я тоже на примерах учусь, иначе наверно и не получится.
@ХОРВЕСТР, Ну начнем с того, что я самоучка И информации, которую можна анализировать у меня просто нет. Я знаю набор команд и все. И все мои действия это сначало тестирование команд, чтобы понять как они работают, а потом уже анализ. А еще я с таким не сталкивался, и мне тоже было бы интересно решение. Engine.DlgSel() выбирает строку в диалогах. Я так понимаю, ты хочешь сказать что это не диалог выскакивает на определенных уровнях?
ХОРВЕСТР написал(а):
Все примеры в огромном количестве есть на форуме. Надо просто хоть что то сделать.
Да, только вот называться эти темы могут как угодно (возможно человек не нашел). Я обычно перед созданием тем пользуюсь поиском, думаю все так делают. А вообще, человек задал вопрос, и отвечать на него или нет, решать тебе. И если уж ответил, обьясни человеку нормально. Это мое мнение. А так получается ты блестнул умом, человек не компетентный в этом вопросе конечно же не понял. Дак ты его еще и лентяем обозвал
Чтобы скрипт работал почти на всех серверах. На разных серверах разные диалоги могут быть и по счету строки могу не совпадать. Вот на рпг до 40 лвла телепорты называются "Гиран", а после 40 "Гиран - 1500 аден" и строку не прожимает. А так же чтобы скрипт работал на других серверах, где диалоги могут немного отличаться, и подобная функция (конечно нужно дописать ее) может искать совпадения в строках и не важно что дописано дальше после нужного слова, тем самым решая проблему. Но нужно дописать еще чтобы выбирался вариант строки где совпадений найдено больше, а не тот который первый стоит в списке
Обьясню проще, я просто думал что все встречались с этой проблемой и будет понятно. Вот играешь ты сейчас на одном сервере там у ГК диалог "Телепорт". Завтра ты пойдешь на другой сервер, а там диалог у ГК "Телепортироваться" и бот не прожмет уже строку. Это при условии что ты пользовался командой Engine.DlgSel('Телепорт'). Или может быть еще не соответствие строк, например на одном сервере телепорт из гирана в аден 3 по счету, а на другом сервере телепорт 4 по счету, и полетишь не туда куда нужно. Это при условии использования команды Engine.DlgSel(3).
Так вот функция на поиск совпадений (по буквам/словам/количеству букв или другие варианты) может спасти в этой ситуации. Не нужно будет переписывать скрипт под отдельный сервер. Вобщем это революция в скриптописании
Можна конечно как-то так, но не спасет такой вариант при прохождении квестов (они очень часто отличаются). Да и на рпг присутствуют оба варианта и получается перс 2 раза бафается.
Код:
Engine.DlgSel('View available Support Magic');
Delay(1000);
Engine.DlgSel('Receive supplemental magic');
Engine.DlgSel('Посмотреть список вспомогательной магии');
Delay(1000);
Engine.DlgSel('Получить вспомогательную магию');