51

(29 ответов, оставленных в JavaScript)

кстати да, нужно просить помошь у Анархоника, чтоб в зависимости од текста что выдаст макропус - выбрать маршрут. Думаю тут только он сможет нам помочь, а дальше дело за простым - написать 5 маршрутов, 1 основной, и 4 за грибами и все готово)

52

(29 ответов, оставленных в JavaScript)

lovemy
мне кажеться или тут будет а же проблема что match будет тупить при "?" например
давай так, Если не лень тебе - пробуй с номерами диалогов разбираться, а я домучаю свой - таким методом можно будет грибницу довести до ума-разума и все пользоваться будут, думаю нам Анархоник поможет:)

53

(29 ответов, оставленных в JavaScript)

о, теперь ощущаю разницу, а что получаеться я зря хотел плагин делать - он уже существует smile?

54

(29 ответов, оставленных в JavaScript)

lovemy пишет:

nostra4life пытался переписать 2 плагина от грибов для этого вчера но вышло или тормаз на фразе услуг как у тебя или вобще после услуг уходил на задавание вопросов -хотя фразы прописанны верно были.
завтра попробую по номерам диалогов написать

можешь скинуть инфу как по номерах диалгово и самое главное примеры таких диалогов ) чтоб можно было понять что куда пихать

55

(29 ответов, оставленных в JavaScript)

про маску теперь понятно, а вот про

Т.е. "Привет, как дела".indexOf("Привет") будет равен 0.
"Привет, как дела".indexOf("как") будет равен 8.
"Привет, как дела".indexOf("нормально") будет равен -1

если я правельно понят то
1) 0 ты поставил потому что Привет (первая буква П)
2) 8 потому что "как" - после -8ого символа встало
3) -1 потому что вообще небыло такого варианта
в правельном направлении думаю?

та вот захотелсоь х64 попробовать, вроде железо мошное, почему б его на полную не заюзать, после праздников пойду куплю 8гб оперативки и попробую

anahronik пишет:

Добавляй, переставляй, а думать будем потом.

та ты меня знаешь, мне не в напряг купить лицуху) просто босюь остаться без бота на перу часов/дней smile

58

(29 ответов, оставленных в JavaScript)

И так решил на выходные дни научиться писать плагины для общения с ботами в метро
взял плагин болтовни с вождем

function NapadenieNaVozhda(enabled)
{
    if(enabled)
    {
        //должна быть одна из двух строк
PluginsOnLoad["NapadenieNaVozhda"] = "NapadenieNaVozhdaHandler"; // работать по обновлению верхнего фрейма
    }
    else
    {
        //должна быть одна из двух строк
PluginsOnLoad["NapadenieNaVozhda"] = ""; // выключить обработку по обновлению верхнего фрейма
    }
}
function Vozhd()
{
    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);
    top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName  + "?rnd=" + Math.random() +"&path=rl";
    }
}
function NapadenieNaVozhdaHandler()
{
        try
{
setTimeout("Vozhd();",1000);
}
        catch(err)
        {
//                alert(err.description); // выводит сообщение, если в результате выполнения кода была получена ошибка. Если сообщения не нужна - удалить эту строку, оставив конструкцию try{}catch(err){}
        }
}

название плагина не менял (это можно сделать в любой момент по сути главное чтоб работал). ну тоесть бот жмакает на макропуса, начинает болтать, виснет на фразе Услуги? что ещё за услуги?, если нажть в ручную доходит до фразы Да. и переключаеться на главную страницу в бк

тут к вам 2 вопроса
1) почему виснет на фразе *Услуги*
2) почему меня выбрасивает на логин пейдж в БК? ну интуитивно догадиваюсь что ошибка гдето тут

{   
    external.ClickLink("Да.",2);
    top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName  + "?rnd=" + Math.random() +"&path=rl";
    }

но без знания джавы ( я полный дилетант и самоучка ) - не могу решить вопрос...
так же пробовал передерёть скрипт решника на низины - не получилось - тоже выкидывает на логин пейдж..

сабж...

60

(348 ответов, оставленных в Подземелье / Маршруты)

for(var j=0; j<top.frames[external.mainFrameIndex].document.getElementById("ObjectsMap").getElementsByTagName("AREA").length; j++)if(top.frames[external.mainFrameIndex].document.getElementById("ObjectsMap").getElementsByTagName("AREA")[j].title && top.frames[external.mainFrameIndex].document.getElementById("ObjectsMap").getElementsByTagName("AREA")[j].title.indexOf("Изысканный сундук") > -1){ top.frames[external.mainFrameIndex].document.getElementById("ObjectsMap").getElementsByTagName("AREA")[j].click(); break;}

так пиши и будет тебе счастье

61

(51 ответов, оставленных в Настройки / Плагины)

точно вот я слепота куриная...))) я не весь плагин скопировал ))))

62

(348 ответов, оставленных в Подземелье / Маршруты)

да, но там где я чёрным выделил - написать название сундука

63

(51 ответов, оставленных в Настройки / Плагины)

тогда значит я торможу - не вижу куда ставлять список вещей на плавку.. если не трудно - выдели жырным в плагине...
просто если включить поиск в плагине на фразу itemsToMelt.push("item"); то поиск ничего не даст - значит я хз куда вставлять предметы....

64

(10 ответов, оставленных в Подземелье / Маршруты)

понял, пасибо wink

65

(348 ответов, оставленных в Подземелье / Маршруты)

Висячка пишет:
nostra4life пишет:

я просто по всем кликаю через екстернал с названием цели а у тебя другой метод, хочу понять как и что он дает smile

Объясни свой метод))

та что там учить то....

for(var j=0; j<top.frames[external.mainFrameIndex].document.getElementById("ObjectsMap").getElementsByTagName("AREA").length; j++)if(top.frames[external.mainFrameIndex].document.getElementById("ObjectsMap").getElementsByTagName("AREA")[j].title && top.frames[external.mainFrameIndex].document.getElementById("ObjectsMap").getElementsByTagName("AREA")[j].title.indexOf("название обьекта на который надо кликать") > -1){ top.frames[external.mainFrameIndex].document.getElementById("ObjectsMap").getElementsByTagName("AREA")[j].click(); break;}

66

(50 ответов, оставленных в Настройки / Плагины)

о спасибки, попробую ещё раз smile

67

(51 ответов, оставленных в Настройки / Плагины)

кто может переделать плагин? я вообще не понял куда тут вставлять название шмота, да и не суть, главное тут первое - сделать чтоб он просто будучи в алтаре - просто плавил, и второе - сплавливал руны smile)

68

(50 ответов, оставленных в Настройки / Плагины)

дальше топчимся на том же месте но с небольшим прогресом....
вот клетка перед обменником

b951e847c8c4d78ebb15be5293b1e907 : external.SetVal("isTokenTraderClicked",false); UseObjects(); AttackMobs(); Walk("m1");

вот - сам обменник

228eac369afdf321c7820a4d838e260b : if(!external.GetVal("isTokenTraderClicked"))  UseObjects(); AttackMobs(); Walk("rr");

вот код обменника

var _obmenFinished = false;

function Obmennik(enabled)
{
    if(enabled)
    {
        PluginsOnLoad["Obmennik"] = "ObmennikHandler"; // работать по обновлению верхнего фрейма
    }
    else
    {
        PluginsOnLoad["Obmennik"] = ""; // выключить обработку по обновлению верхнего фрейма
    }
}
function ObmennikHandler()
{
    try
    {
        var _document = get_mainframe().document.all[0].innerHTML;
        var _path = "empty";
        if(_document.indexOf("Активировать устройство") > -1 && _obmenFinished == false)
            _path = "Активировать устройство";
        else if(_document.indexOf("Положить в устройство") > -1)
            _path = "Обменять все";
        else if(_document.indexOf("Устройство активировано") > -1)
            { _path = "Деактивировать"; _obmenFinished = true; }
        else if(_document.indexOf("Активировать устройство") > -1 && _obmenFinished == true)
            { _path = "завершить разговор"; _obmenFinished = false; external.SetVal("isTokenTraderClicked",true); }

        if(_path != "empty")
            external.ClickLink(_path,2);
    }
    catch(err)
    {
        //alert(err.description); // выводит сообщение, если в результате выполнения кода была получена ошибка. Если сообщения не нужна - удалить эту строку, оставив конструкцию try{}catch(err){}
    }
}

всеравно тупит и постоянно клыкает на обменник, правда да, после апдейта версии он все же начал идти в перед на клетке перед обменником smile

69

(50 ответов, оставленных в Настройки / Плагины)

ок щас заценю smile

70

(348 ответов, оставленных в Подземелье / Маршруты)

я просто по всем кликаю через екстернал с названием цели а у тебя другой метод, хочу понять как и что он дает smile

71

(348 ответов, оставленных в Подземелье / Маршруты)

у меня давно был свой маршрут, у меня все чистит и так, просто я человек, который любит развиваться, потому мне интересно что ты этим скриптом юзаешь:)) так бы сказать дял собственного апгрейда мозгов smile)

72

(50 ответов, оставленных в Настройки / Плагины)

не помогло, дело в том что бот за 1 клетку до обменника - стоит
тоесть вот это  :

Дальше маршрут:
1) В ячейку до обменника
b951e847c8c4d78ebb15be5293b1e907 : UseObjects(); AttackMobs(); external.SetVal("isTokenTraderClicked",false); UseObjects(); AttackMobs(); Walk("m1");

не работает...он стоит..
if перед екстерналом тож не помогло) сори я дилетант ещё тот в этом деле.. пользуюсь только логикой
и так пробовал

b951e847c8c4d78ebb15be5293b1e907 : UseObjects(); AttackMobs(); if(!external.SetVal("isTokenTraderClicked",false)); UseObjects(); AttackMobs(); Walk("m1");

не помагает.. хз как его заставить шагнуть используя SetVal
и без ! пробовал - не помогло) говорю же надо минигайдик для таких самоучек как я чтоб понять что куда надо ставлять с екстерналами.. с приемами вроде разобрался давно а сейчас сатло интересно сложности в маршрутостоении преодолеть а то скушно становиться ))

73

(348 ответов, оставленных в Подземелье / Маршруты)

я что то думал что сз обчектс так же будет нажимать на диалог с охранницей, понятно - задача упростилась ))
а что тогда значит этот екстернал ?

top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName + "?dialog=tn3_poors_default_2&use=" +

интуитивно догадиваюсь что на бедняка в трущобах нажимать

74

(4 ответов, оставленных в Настройки / Плагины)

я себя страхую на такие случаи, во всех приемах где используеться дух - ставлю не юзать если духа меньше 5 напрмер, даже если хлебнуть крови заюзаешь - то сожрет максимум 4 духа, всеравно 1 останеться какраз на выжыть а если тебе не надо чтоб бот копил тактики так можно же сделать приемам првоерку на активность ( не помню как назимаеться условие если прием готов к нажатию ) но можно и проверить так :

if(parseInt(top.Battle.oBattle.arrRes["spirit"].innerHTML) > 0)

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

75

(348 ответов, оставленных в Подземелье / Маршруты)

ага, просто если дверь стоит перед носом - её надо щелкать через екстернал, иначе надо отойти на 1 клетку назад и тогда сработает через юз обчектс но тогда есть шанс клыклуть на охранницу smile