1

Тема: Плавильный котел 4эт Sand

Переписал плагин для плавильного котла на 4 этаже санда ,но что то не пойму почему при включение и выключение его он срабатывает - а автоматические при входе в диалог нет,и  не выходит из диалога.
Помоги найти проблему или направить на путь истиный  -а то первый раз пишу такое.

function sand_kotel(enabled)
{
    if(enabled)
    {
        //должна быть одна из двух строк
PluginsOnLoad["sand_kotel"] = "sand_kotelHandler"; // работать по обновлению верхнего фрейма
    }
 
}
 
function sand_kotel()
{
    if(top.Battle.bInBattle) return;
 
if(get_mainframe().document.all[0].innerHTML.match(/Выплавить золото/))
    external.ClickLink("Выплавить золото",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Выплавить серебро/))
    external.ClickLink("Выплавить серебро",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Выплавить медь/))
    external.ClickLink("Выплавить медь",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Выплавить свинец/))
    external.ClickLink("Выплавить свинец",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Выплавить ювелирный сплав/))
    external.ClickLink("Выплавить ювелирный сплав",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Приготовить еще один слиток./))
    external.ClickLink("Приготовить еще один слиток.",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Хватит плавить - пора монстров убивать!/))
    external.ClickLink("Хватит плавить - пора монстров убивать!",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Все понятно. (завершить разговор)/))
    external.ClickLink("Все понятно. (завершить разговор)",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Отойти от котла (Предупреждение: Запущенный котел повторно использовать будет нельзя)/))
    external.ClickLink("Отойти от котла (Предупреждение: Запущенный котел повторно использовать будет нельзя)",2);
}
 
function sand_kotelHandler()
{
        try
{
sand_kotel();
}
 
        catch(err)
        {
//                alert(err.description); // выводит сообщение, если в результате выполнения кода была получена ошибка. Если сообщения не нужна - удалить эту строку, оставив конструкцию try{}catch(err){}
        }
}

2

Re: Плавильный котел 4эт Sand

Скорее всего из-за того что у тебя не хватает внутри функции sand_kotel()

else
    {
        //должна быть одна из двух строк
PluginsOnLoad["sand_kotel"] = "";
    }
У меня все работает, что я делаю не так ?

3

Re: Плавильный котел 4эт Sand

ZhEkA_BK пишет:

Скорее всего из-за того что у тебя не хватает внутри функции sand_kotel()

else
    {
        //должна быть одна из двух строк
PluginsOnLoad["sand_kotel"] = "";
    }

была строка - убирал ,добавил всеравно проблема не решилась .
может из за того что в этой части функция названа как и сверху?или не имеет значения?
В грибе просто названа была gribi.

function sand_kotel()
{
    if(top.Battle.bInBattle) return;

4

Re: Плавильный котел 4эт Sand

Короче хрень какая та выходит,либо он вообще не хочет юзать диалоги или юзает их при включение и выключение плагина.
мож у кого рабочий завалялся?

5

Re: Плавильный котел 4эт Sand

Так, я вот сейчас задумался над фразой

при включение и выключение его он срабатывает - а автоматические при входе в диалог нет

Т.е. бот в диалог сам входит но там зависает, или бот сам даже в диалог не входит?
Это первый момент.
А второй, у тебя сейчас плагин работает по обновлению верхнего фрейма, поэтому когда бот вошел в диалог, необходимо подождать, пока пройдет весь цикл работы бота с интервалом задержки, прописанным в боте, бот обновит фрейм и только после этого сработает плагин. Попробуй поставить работу плагина по таймеру.
Ну и третье...действительно попробуй переименовать функцию, в которой у тебя диалоги написаны на оригинальное название, которое нигде не встречается.

У меня все работает, что я делаю не так ?

6

Re: Плавильный котел 4эт Sand

Жека а где рабочий плагин?

Нормальные пацаны давно качают нефть!

7

Re: Плавильный котел 4эт Sand

korollef пишет:

Жека а где рабочий плагин?

Вот (Please log in or register to see this URL).Переписал и проверил плагин.