26

Re: Мечтаю о плагине "чек на 400 кр"

anahronik пишет:

Вопрос:
При подборе предмета он в списке в инвентаре всегда в самом низу будет? smile
Просто если искать по инвентарю Бумагу, а их у вас несколько, то необходимо определить, какая из них была поднята последней smile

P.S.
Да, я помню, что обещал разобраться с этим плагином smile

да, всегда в низу, и при покупке, и при подборе.
Скоро пойду пещеры копать, так что плагин пригодился бы))

Ушел.

27

Re: Мечтаю о плагине "чек на 400 кр"

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

28

Re: Мечтаю о плагине "чек на 400 кр"

Может вам ещё чтоб кофе в постель приносил сделать? smile
Я 7-й уровень - нету у меня возможности летать по городам и маршруты записывать smile
Я даже не в курсе, в каких городах какие чеки падают smile

Software is like sex: it's better when it's free! © LinusTorvalds

29

Re: Мечтаю о плагине "чек на 400 кр"

drsn пишет:

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

По Ангельсу фиг ты донесёшь его до магазина.
То тёмные всех без разбору бьют, то тёмных всем обществом лупят big_smile

(Please log in or register to see this URL)

30

Re: Мечтаю о плагине "чек на 400 кр"

Красные ХП разве не спасут от этого?

Software is like sex: it's better when it's free! © LinusTorvalds

31

Re: Мечтаю о плагине "чек на 400 кр"

anahronik пишет:

Красные ХП разве не спасут от этого?

Кто может сделать, того спасут. Я не могу.

(Please log in or register to see this URL)

32

Re: Мечтаю о плагине "чек на 400 кр"

Помнишь я тебе присылал скриптик заготовочный под этот самый плагин.
Я в нём реализовал красные ХП...в демонсе(или девилсе...или как там тот единственный город, под который у меня маршрут был) ходил, сбрасывал ХП стабильно у...друга и просто хорошего человека, хотевшего помочь smile
Ты его хоть посмотрел? smile

Software is like sex: it's better when it's free! © LinusTorvalds

33

Re: Мечтаю о плагине "чек на 400 кр"

anahronik пишет:

Ты его хоть посмотрел? smile

Прости засранца sad Я в то время играл персом у которого не было хил-комплекта, поэтому так и не удосужился тестить sad Лодырь я. Как и все big_smile

(Please log in or register to see this URL)

34

Re: Мечтаю о плагине "чек на 400 кр"

Да я как-то и не ожидал, что ты его тестить будешь smile
Но думал, что хотябы глазами по нему пробежишься smile
Ну да ладно smile

Сейчас доделываю алгоритм работы DungeonLog'a с проверкой на подобранный чек.
Потом этот алгоритм надо реализовать....а потом уже надо будет маршруты по городам с чеками достать где-нить smile
Куча работы, короче smile

А потом даже и не знаю, как это тестировать smile
Видимо придётся просить местных жителей тестировать на чеках 5кр и выше smile

Отредактировано anahronik (2009-10-21 11:26:20)

Software is like sex: it's better when it's free! © LinusTorvalds

35

Re: Мечтаю о плагине "чек на 400 кр"

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

var SellCost=0.5;        //Цена чека(лучше чуть занизить)
var SellCostSum = 9;        //Общая цена всех чеков в инвентаре для продажи
var Current = 0.95;         //Проценты, при которых ваш бот начинает подабвать заявки на бой(из настроек)
 
function DungeLog(enabled)
{
    if(enabled)
    {
        PluginsOnLoad["DungeLog"] = "LogHandler";
 
    }
    else
    {
        PluginsOnLoad["DungeLog"] = "";
    }
}
 
function LogHandler(){
    if (!external.inBattle){
        var itemlog1 = top.frames[3].document.all[0].outerHTML.match(/Вы подняли \'(.+)\'/);
        var itemlog2 = top.frames[3].document.all[0].outerHTML.match(/Вы получили \'(.+)\'/);
        if(itemlog1){
            if(itemlog1[1]=="Бумага") 
                BumagaCheck();
            else   
                SaveLog(itemlog1[1]);
        }
        if(itemlog2)
        {
            if(itemlog1[1]=="Бумага") 
                BumagaCheck();
            else   
            SaveLog2(itemlog2[1]);
        }
    }
}
 
function BumagaCheck(){
    external.dungeonEnabled=false;        //Прекратит поход
    external.SBattleAbovePercent.Text = 200;    //Прекратит бои
    //Это чтоб при проверке инвентаря не произошло обновления страницы
 
    var cost=0;
    var costSum = 0;
    var myArray;
    var myRe = new RegExp("target\=\_blank\>Бумага[^~]{1,}Цена\: (.+) кр","gi");
    var testingtext = doLoadInv("http://" + external.SCity.Text + ".combats.com/main.pl?edit=4&" + Math.random());
    alert(testingtext);
    while ((myArray = myRe.exec(testingtext)) != null)
    {
        cost = myArray[1];
        costSum = costSum + cost;
    }
 
    SaveLog2("Бумагу стоимостью "+cost+"кр.\nВ инвентаре чеков на "+costSum+".кр"); //Фиксируем в логе событие о поднятой бумаге
 
    if(cost>=SellCost||costSum>=SellCostSum) //Если бумага стоит столько, сколько мы хотим. Или если общая сумма всех чеков в инветаре подходит для выхода из данжа и продажи.
    {
        top.frames[3].location = top.frames[3].document.links[0].href; //Выйти из данжа       
    }
    else
    {
        external.dungeonEnabled=true;        //Продолжаем поход
        external.SBattleAbovePercent.Text = Current;    //Возвращаем возможность начинать бои
    }
}
 
function SaveLog(Mes){
    var now1 = new Date();
    var localtime1 = now1.toString();
    var resultfile = external.LoadFile(mylogin+".txt");
    resultfile=resultfile+localtime1+"\n Вы подняли "+Mes+"\n\n";
    external.SaveFile(mylogin+".txt",resultfile);
}
function SaveLog2(Mes){
    var now1 = new Date();
    var localtime1 = now1.toString();
    var resultfile = external.LoadFile(mylogin+".txt");
    resultfile=resultfile+localtime1+"\n Вы получили "+Mes+"\n\n";
    external.SaveFile(mylogin+".txt",resultfile);
}
 
function doLoadInv(url) {
    var req;
 
    if (window.XMLHttpRequest)
        req = new XMLHttpRequest();
    else
        req = new ActiveXObject("Microsoft.XMLHTTP");
 
    req.open("GET", url, false);
    req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"); //чтоб не кэшировались GET запросы
    req.send(null); // отправить запрос
    return req.responseText;
}

Алгоритм:
1) Задаются параметры
2) Если поднимается какая-либо вещь, кроме бумаги, она заносится в лог-файл, как и раньше.
3) Если поднимается бумага, то запускается функция BumagaCheck():
    3.1) Сперва останавливает поход и устанавливает %ХП для начала боя таким, чтоб бот всегда оставался в состоянии "Восстанавливаю ХП". Это для того, чтоб в процессе проверки инвентаря не произошло резкого обновления фрейма, результат которого может либо вобще не сказаться на работе, либо сказаться плохо...я ещё не решил smile Поэтому всётаки решил оставить эту заглушку.
    3.2) Далее невидимым человеку запросом проверяется инвентарь и ищется Бумага. Отдельно выделяется Цена бумаги. Через цикл происходит сложение всех Цен бумаг для варианта "Продать, если чеков на 20кр." например. И, через него же сохраняется цена самого нижнего в инвентаре чека(который и должен оказаться последним поднятым).
    3.3) Происходит запись в лог-файле общем. Пример записи:
    "Вы получили Бумагу стоимостью 5кр.
    В инвентаре чеков на 15кр."
    3.4) Если цена последнего поднятого чека, или сумма всех чеков больше указанных в самом начале файла, то происходит выход из данжа(при этом бот не будет делать ничего: ни пытаться пойти в данж, ни пытаться создать бой). Иначе высавляются обратно параметры для продолжения похода и для подач/приёма заявок на бои.

Недочёты:
Понятия не имею ещё...
Но точно знаю, что когда скрипт выставляется параметр на прекращение похода, то галочка в меню не снимается. Этого пугаться не надо. Там просто галочку снял-поставил и бот снова пойдёт в поход.

Опять же не проверено совсем - нету времени sad
Уже убегать надо smile

Software is like sex: it's better when it's free! © LinusTorvalds

36

Re: Мечтаю о плагине "чек на 400 кр"

Целью тестирования должно являться:
1) Работоспособность бота и плагина в целом, чтоб бот не стопорился от него просто так без причины.
2) Появление в блокноте записи о том, что вы подняли бумагу такой-то ценой.

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

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

Отредактировано anahronik (2009-10-22 17:07:43)

Software is like sex: it's better when it's free! © LinusTorvalds

37

Re: Мечтаю о плагине "чек на 400 кр"

Неужели никто грмотный за чеками не ходит? sad

Ап темы sad

Software is like sex: it's better when it's free! © LinusTorvalds

38

Re: Мечтаю о плагине "чек на 400 кр"

Вот я скоро до восьмого доберусь, будем тестить с тобой=)))

Ушел.

39

Re: Мечтаю о плагине "чек на 400 кр"

Можно было пойти проще. Есть плагин автолечения:

function zheal(enabled)
{
if(enabled)
{ PluginsOnLoad["zheal"] = "heal"; }
else
{ PluginsOnLoad["zheal"] = ""; }
}
function heal()
{
var d_mark = top.frames[3].document.all[0].innerHTML;
if (d_mark.indexOf("травма")>1)
{
   top.frames[3].location = "http://"+City+".combats.com/main.pl?edit=2";
   for (var i = 0; i < top.frames[3].document.links.length; i++)
    {
      if(top.frames[3].document.links[i].href.indexOf("cure3_7") > 0)
        {
            top.frames[3].document.links[i].click();
            setTimeout("top.frames[3].document.getElementById(\"slform\").submit()", 1000);
            break;
        }
     }
  }
}

Заменить фразу "травма" на например "400 кр." и поставить вместо ссылки исполнаемый файл который и будет выгружать бота.

40

Re: Мечтаю о плагине "чек на 400 кр"

Гиппо, выдай ему пожизненный.
Может дойдёт до человека, что тут не валенки сидят.
И так заявить, что можно проще - это верх наглости.
И что он понятия не имеет, как лечение вобще работает.
И что 400кр видно только из инвентаря, а не при подъёме в главном фрэйме.
Не разбираясь ни в кодинге, ни в постановке проблемы лезть фразой "Можно проще" - да за такое в реальной жизни клавиатурой по роже дал бы. А ведь я крайне сдержанный человек - обычно максимум обматерю.

Software is like sex: it's better when it's free! © LinusTorvalds

41

Re: Мечтаю о плагине "чек на 400 кр"

anahronik Выдам, чуть по-позже. Хочется что-то ещё увидеть. FAQ например big_smile

(Please log in or register to see this URL)

42

Re: Мечтаю о плагине "чек на 400 кр"

ой....как же я про фак то забыл roll

Software is like sex: it's better when it's free! © LinusTorvalds

43

Re: Мечтаю о плагине "чек на 400 кр"

Выложил 21-го числа...
уже 1-е ноября...

Неужели никто не хочет потестить?
Это же так просто sad

А как все говорили, что полезная вещь.....нужно писать... lol
Эх вы smile

Software is like sex: it's better when it's free! © LinusTorvalds

44

Re: Мечтаю о плагине "чек на 400 кр"

Всем чем угодно сейчас занимаюсь, но не чеками big_smile Ссори.

(Please log in or register to see this URL)

45

Re: Мечтаю о плагине "чек на 400 кр"

Что такое DungeonLog и как заставить этот плагин работать?

46

Re: Мечтаю о плагине "чек на 400 кр"

ZorDen пишет:

Что такое DungeonLog и как заставить этот плагин работать?

Этот плагин для бота версии 8.1

Ушел.