126

Re: Плагин автопродажи вещей в гос

Nikita_KrM пишет:
Slaylexx пишет:
Nikita_KrM пишет:

Slaylexx, чёт твой плагин не коректно работает. Из пещеры в гос неидет, надо ток перезапускать: плагин, бота или руками выходить, а в магазине нажимает продажа, смотрит (как будто подходящих вещей нет) и выходит дальше.  sad

дня 4 рою тем что последний выложил. Все ок правда на меня не нападют. на 12 такой беды нет. Но друг роет каты говорит норм.

Именно в катах и проблема, в плагине все вещи из инвентаря пристствуют, но не продает. А вот от лича идет в зал воинов и дальше как положено на цп и в пещеры. Скоприовал строчки с маршрутом с зала на цп и вставил в свой, но... обновляется и не идет на ЦП. Почему? Почему не идет на ЦП? Почему мой работает,а твой нет?

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

SPOILER Show

var sellTimer = {};
var sellDone = false;
var sellRoom = '';
var itemsToSell = [];
 
//11 тн P-VF( ВФ только дороже 1.7)
itemsToSell.push("Вспомогательный топорик Охранницы");
itemsToSell.push("Мантия Служителя");
itemsToSell.push("Мощная броня Охранницы");
itemsToSell.push("Ржавый топорик Охранницы");
itemsToSell.push("Рваные одеяния Охранницы");
itemsToSell.push("Штатная броня охранницы");
itemsToSell.push("Обычное одеяние Служителя");
itemsToSell.push("Непробиваемая туника Охранницы");
itemsToSell.push("Крепкий посох Служителя");
itemsToSell.push("Рваная туника Охранницы");
itemsToSell.push("Кривой посох Служителя");
itemsToSell.push("Дубинка Охранницы");
itemsToSell.push("Неплохой шлем Охранницы");
itemsToSell.push("Гнилая дубина Охранниц");
itemsToSell.push("Штатный меч Охранницы");
itemsToSell.push("Туника Охранницы");
itemsToSell.push("Затхлое одеяние Служителей");
itemsToSell.push("Старый амулет Служителя");
itemsToSell.push("Посох Служителя");
itemsToSell.push("Крепкая роба Служителя");
itemsToSell.push("Амулет Служителя");
itemsToSell.push("Дрянной амулет Охранницы");
itemsToSell.push("Треснувший шлем Охранницы");
itemsToSell.push("Разваливающийся пояс Охранницы");
itemsToSell.push("Неудобный шлем Служителя");
itemsToSell.push("Тусклое кольцо Охранницы");
itemsToSell.push("Перчатки Охранницы");
itemsToSell.push("Наручи Охранницы");
itemsToSell.push("Ржавое кольцо Служителя");
itemsToSell.push("Прогнившие наручи Служителя");
itemsToSell.push("Порванные ботинки Служителя");
itemsToSell.push("Легкие сапоги Охранницы");
itemsToSell.push("Кольцо Служителя");
itemsToSell.push("Разломанные браслеты Охранницы");
itemsToSell.push("Изящные перчатки Служителей");
itemsToSell.push("Удивительный шлем Служителя");
itemsToSell.push("Утяжеленные сапоги Охранницы");
itemsToSell.push("Магический шлем Служителя");
itemsToSell.push("Облегченные ботинки Охранницы");
itemsToSell.push("Дрянные серьги Охранницы");
itemsToSell.push("Острый меч Охранницы");
itemsToSell.push("Сандали Служителя");
itemsToSell.push("Наручи Служителя");
itemsToSell.push("Браслеты охранницы");
itemsToSell.push("Перчатки Служителей");
itemsToSell.push("Ремень Служителей");
itemsToSell.push("Нож Охранницы");
itemsToSell.push("Гнилая роба Служителей");
itemsToSell.push("Хороший шлем Служителя");
itemsToSell.push("Старые ботинки Охранницы");
itemsToSell.push("Кольцо Охранниц");
itemsToSell.push("Тяжелый посох Служителя");
itemsToSell.push("Штатный шлем Охранницы");
itemsToSell.push("Штатные сандали Охранницы");
itemsToSell.push("Боевые перчатки Охранницы");
itemsToSell.push("Укрепленная дубинка Охранницы");
itemsToSell.push("Прекрасный амулет Охранницы");
itemsToSell.push("Надежный шлем Охранницы");
itemsToSell.push("Прекрасный амулет Охранницы");
itemsToSell.push("Штатный шлем Охранницы");
itemsToSell.push("Надежный посох Служителя");
itemsToSell.push("Ветхие наручи Служителя");
itemsToSell.push("Серьги Служителя");
itemsToSell.push("Надежный амулет Служителя");
itemsToSell.push("Гнилые перчатки Служителей");
itemsToSell.push("Гнилые поножи Служителей");
itemsToSell.push("Испорченные серьги Служителя");
itemsToSell.push("Ржавый меч Охранницы");
itemsToSell.push("Дырявые поножи Охранницы");
itemsToSell.push("Ветхий шлем Служителя");
itemsToSell.push("Пояс Охранницы");
itemsToSell.push("Штатные поножи Охранницы");
itemsToSell.push("Хорошая мантия Служителя");
itemsToSell.push("Тапочки Служителя");
itemsToSell.push("Поломанный посох Служителя");
itemsToSell.push("Удобные наручи Служителя");
itemsToSell.push("Амулет Охранницы");
itemsToSell.push("Ритуальные поножи Охранницы");
itemsToSell.push("Отличные наручи Служителя");
itemsToSell.push("Шлем Служителя");
itemsToSell.push("Боевой шлем Охранницы");
itemsToSell.push("Удобные ботинки Служителя");
itemsToSell.push("Парадные серьги Охранницы");
itemsToSell.push("Крепкие наручи Служителей");
itemsToSell.push("Старый нож Охранницы");
itemsToSell.push("Порванный пояс Служителя");
itemsToSell.push("Блестящий перстень Служителей");
 
 
 
 
 
 
 
//7 бездна
itemsToSell.push("Каска мудрого злодея");
itemsToSell.push("Перчатки бывалого гладиатора");
itemsToSell.push("Старый капюшон высокомерного стрелка");
itemsToSell.push("Дубина забытого духа");
itemsToSell.push("Порченный меч лютого героя");
itemsToSell.push("Серьги яростного гладиатора");
itemsToSell.push("Наколенники лютого разведчика");
itemsToSell.push("Затасканная секира мертвого аристократа");
itemsToSell.push("Серьги алчного путешественника");
itemsToSell.push("Кинжал опытного путешественника");
//8 бездна
itemsToSell.push("Грубые наколенники опытного варвара");
itemsToSell.push("Устаревший топор непобедимого аристократа");
itemsToSell.push("Булава известного безумца");
itemsToSell.push("Разваливающиеся перчатки странного разбойника");
itemsToSell.push("Грубые серьги алчного старца");
itemsToSell.push("Безобразный шлем бесчестного воителя");
itemsToSell.push("Шапка опытного предка");
itemsToSell.push("Разваливающийся меч кровожадного грабителя");
itemsToSell.push("Ветхие штаны чуткого странника");
itemsToSell.push("Острие кровожадного воителя");
//9 бездна
itemsToSell.push("Потертые штаны вечного стража");
itemsToSell.push("Молот бессмертного предка");
itemsToSell.push("Меч мифического отшельника");
itemsToSell.push("Потрепанные серьги алчного предка");
itemsToSell.push("Разваливающиеся поножи жестокого варвара");
itemsToSell.push("Острие властного военачальника");
itemsToSell.push("Топор жестокого разбойника");
itemsToSell.push("Потрепанные перчатки бдительного стрелка");
itemsToSell.push("Рукавицы мертвого путешественника");
//10 бездна
itemsToSell.push("Перчатки уставшего духа");
itemsToSell.push("Грубые перчатки кровожадного солдата");
itemsToSell.push("Каска высокомерного аристократа");
itemsToSell.push("Бесполезная дубина мудрого отшельника");
itemsToSell.push("Разваливающийся шлем бессмертного героя");
itemsToSell.push("Подержанные поножи мудрого обитателя подземелий");
itemsToSell.push("Потертое острие беспощадного предателя");
itemsToSell.push("Клинок вечного изверга");
itemsToSell.push("Серьги безжалостного военачальника");
itemsToSell.push("Серьги чуткого проходимца");
itemsToSell.push("Потертая секира яростного клятвоотступника");
 
 
//8 каты
itemsToSell.push("Старое кольцо алчного проходимца");
itemsToSell.push("Старинные перчатки педантичного призрака");
itemsToSell.push("Наручи безвольного духа");
itemsToSell.push("Затасканные рукавицы бывалого клятвоотступника");
itemsToSell.push("Неряшливый лук мудрого стрелка");
itemsToSell.push("Серьги амбициозного мистика");
itemsToSell.push("Ветхие наручи умелого пилигрима");
itemsToSell.push("Серьги важного охотника");
itemsToSell.push("Серьги опытного акробата");
itemsToSell.push("Бесполезное кольцо щедрого убийцы");
itemsToSell.push("Неряшливый лук мудрого стрелка");
 
//9 каты
//itemsToSell.push("Перчатки странного гладиатора");
itemsToSell.push("Баллиста алчного клятвоотступника");
//itemsToSell.push("Неряшливые серьги известного героя");
//itemsToSell.push("Ископаемые серьги щепетильного старца")
//itemsToSell.push("Перстень неистового обитателя подземелий")
//itemsToSell.push("Перчатки мертвого следопыта")
//itemsToSell.push("Старинные наручи властного предка")
//itemsToSell.push("Перчатки мертвого следопыта")
//itemsToSell.push("Грубые наручи злопамятного искателя")
 
//10 каты
 
 
//11 каты
itemsToSell.push("Серьги хитроумного обитателя подземелий");
itemsToSell.push("Ископаемый арбалет доблестного призрака");
itemsToSell.push("Серьги странного клятвоотступника");
itemsToSell.push("Устаревший посох загубленного пилигрима");
itemsToSell.push("Разваливающиеся серьги вечного палача");
itemsToSell.push("Потрепанное кольцо благородного солдата");
itemsToSell.push("Затасканные перчатки безвольного изувера");
itemsToSell.push("Затасканные перчатки безвольного изувера");
itemsToSell.push("Затасканные перчатки безвольного изувера");
itemsToSell.push("Затасканные перчатки безвольного изувера");
itemsToSell.push("Затасканные перчатки безвольного изувера");
itemsToSell.push("Затасканные перчатки безвольного изувера");
itemsToSell.push("Наручи прославленного головореза");
itemsToSell.push("Перстень злопамятного зверолова");
 
//каты 8-11 вф-еф
itemsToSell.push("Блестящие перчатки чуткого старца");
 
 
itemsToSell.push("Пустая бутыль");
 
 
function SellInShop(enabled)
{
    if(enabled)
    {
        sellTimer[mylogin] = setInterval("SellAction()", 3000);
    }
    else
    {
        clearInterval(sellTimer[mylogin]);
    }
}
 
Array.prototype.inArray = function(item)
{
    for (var i in this)
        if (item.indexOf(this[i]) > -1)
            return true;
    return false;
}
 
function SellAction()
{
    try
    {
        if(!external.dungeonEnabled || !external.Started()) return;
        if(top.Battle.bInBattle || top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i))
        {
            sellDone = false;
            return;
        }
 
        var sellTemp = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
        if(sellRoom = sellTemp.match(/<nobr>([^<]+)<\/nobr>/))
           {
            sellRoom = String(sellRoom[1]);
           }
        else
            sellRoom = "unknown";
 
        if(!sellDone)
        {
            if(sellTemp.match(/drwfl\("(?:Дуалон|Илена|Мафи|Бартоломей|Амарл)",/i) && sellTemp.match(/(подойти к прилавку|пройти к прилавкам|пройти к прилавку)/))
                external.ClickLink(sellTemp.match(/(подойти к прилавку|пройти к прилавкам|пройти к прилавку)/)[0],2);
            else if (sellRoom.match(/(Центральная грибница|Торговые скалы)/) && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Прилавки с товарами",3);
            else if (sellRoom == "Грибница" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибная поляна",2);
            else if (sellRoom == "Грибная поляна" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Странное Место",3);
            else if (sellRoom == "Странное Место" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибная лужайка",3);
            else if (sellRoom == "Грибная лужайка" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральная грибница",3);
            else if (sellRoom == "Прилавки с товарами" && sellTemp.match(/Илена|Мафи/))
                external.ClickLink(sellTemp.match(/Илена|Мафи/)[0],3);
            else if (sellRoom == "Пещеры Мглы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Внутренний двор",2);
            else if (sellRoom == "Внутренний двор" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Последний Привал",3);
            else if (sellRoom == "Последний Привал" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Цветочный Пустырь",3);
            else if (sellRoom == "Цветочный Пустырь" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный Оазис",3);
            else if (sellRoom == "Центральный Оазис" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Базар",3);
            else if (sellRoom == "Базар" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Лавка Бартоломея",3);
            else if (sellRoom == "Лавка Бартоломея")
                external.ClickLink("Бартоломей",3);
            else if (sellRoom == "Спуск в Бездну" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Вход в Заповедник",2);
            else if (sellRoom == "Вход в Заповедник" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Утес безысходности",3);
            else if (sellRoom == "Утес безысходности" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Каменно-цветочная гряда",3);
            else if (sellRoom == "Каменно-цветочная гряда" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный утес",3);
            else if (sellRoom == "Центральный утес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Торговые скалы",3);
            else if (sellRoom == "Туманные Низины" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Тропинка в Туман",2);
            else if (sellRoom == "Тропинка в Туман" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Призрачный Лес",3);
            else if (sellRoom == "Призрачный Лес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Лесной Портал",3);
            else if (sellRoom == "Лесной Портал" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Опушка Поединков",3);
            else if (sellRoom == "Опушка Поединков" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Торговый Лес",3);
            else if (sellRoom == "Торговый Лес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Магазин",3);
            else if (sellRoom == "Спуск в Катакомбы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Спуск в катакомбы",2);   
            else if (sellRoom == "Спуск в катакомбы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Дорога Храбрости",3);   
            else if (sellRoom == "Дорога Храбрости" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Поклонения",3);
            else if (sellRoom == "Разлом Поклонения" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный Разлом",3);   
            else if (sellRoom == "Центральный Разлом" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Великолепия",3);     
            else if (sellRoom == "Разлом Великолепия" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Торговый Разлом",3);
            else if (sellRoom == "Торговый Разлом" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Магазин",3);
            else if (sellRoom == "Очаг Возрождения" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Обрыв Покоя",3);
            else if (sellRoom == "Обрыв Покоя" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Печали",3);
            else if (sellRoom == "Разлом Печали" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный разлом",3);
            else if (sellRoom == "Зал воинов" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный разлом",3);
            else if(sellRoom == "Магазин")
            {         
                external.ClickLink("dem_newbot_magaz|dev_new_magaz",3); //demons+devils
 
                if(!sellTemp.match(/Отдел \"Скупка\"/i))
                    external.ClickLink("Продать вещи",4);
                else
                {
                    var items = sellTemp.match(/<a\s(?:onclick="[^"]*"\s)?href="shop\.pl\?sl=[^"]*">продать за .*? кр.<\/a><\/td>[\s\n\r]*<td[^>]*><a [^>]*>[^&<]*/ig);
                    if(items != null)
                        for(var i = 0; i < items.length; i++)
                        {
                            items[i] = items[i].match(/<a\s(?:onclick="[^"]*"\s)?href="(shop\.pl\?sl=[^"]*)">продать за .*? кр.<\/a><\/td>[\s\n\r]*<td[^>]*><a [^>]*>([^&<]*)/i);                           
                            items[i][1] = items[i][1].replace(/&amp;/g, '&');
                            if(itemsToSell.inArray(items[i][2]))
                            {
                                top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + items[i][1];
                                return;
                            }
                        }
                    sellDone = true;                   
                }
            }
        }
        else
        {
            if(sellRoom == "Магазин" && top.frames[external.mainFrameIndex].check_access())
            {
                if(external.SCity.Text == "sandcity")
                    external.ClickLink("Лавка Бартоломея",2);
                else if(external.SCity.Text.match(/(suncity|angelscity)/))
                    external.ClickLink("Прилавки с товарами",2);
                else if(external.SCity.Text.match(/(demonscity)/))
                    external.ClickLink("Торговый Разлом",2);
                else if(external.SCity.Text.match(/(devilscity)/))
                    external.ClickLink("Магазин",2);
            }
            else if(sellRoom == "Прилавки с товарами" && top.frames[external.mainFrameIndex].check_access())
            {
                if(external.SCity.Text == "suncity")
                    external.ClickLink("Центральная грибница",3);
                if(external.SCity.Text == "angelscity")
                    external.ClickLink("Торговые скалы",3);
 
            }
            else if(sellRoom == "Магазин")         
                external.ClickLink("dev_new_gate",3);
            else if (sellRoom == "Торговый Лес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Опушка Поединков",3);
            else if (sellRoom == "Опушка Поединков" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Лесной Портал",3);
            else if (sellRoom == "Лесной Портал" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Призрачный Лес",3);
            else if (sellRoom == "Призрачный Лес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Тропинка в Туман",3);
            else if (sellRoom == "Тропинка в Туман" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Туманные Низины",3);
            else if (sellRoom == "Лавка Бартоломея" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Базар",3);
            else if (sellRoom == "Торговые скалы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный утес",3);
            else if (sellRoom == "Центральный утес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Каменно-цветочная гряда",3);
            else if (sellRoom == "Каменно-цветочная гряда" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Утес безысходности",3);
            else if (sellRoom == "Утес безысходности" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Вход в Заповедник",3);
            else if (sellRoom == "Вход в Заповедник" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Спуск в Бездну",3);               
            else if (sellRoom == "Базар" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный Оазис",3);
            else if (sellRoom == "Центральный Оазис" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Цветочный Пустырь",3);
            else if (sellRoom == "Цветочный Пустырь" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Последний Привал",3);
            else if (sellRoom == "Последний Привал" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Внутренний двор",3);
            else if (sellRoom == "Внутренний двор" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Пещеры Мглы",3);
            else if (sellRoom == "Центральная грибница" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибная лужайка",3);
            else if (sellRoom == "Грибная лужайка" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Странное Место",3);
            else if (sellRoom == "Странное Место" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибная поляна",3);
            else if (sellRoom == "Грибная поляна" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибница",3);
            else if (sellRoom == "Торговый Разлом" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Великолепия",3);
            else if (sellRoom == "Разлом Великолепия" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный Разлом",3);   
            else if (sellRoom == "Центральный Разлом" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Поклонения",3);     
            else if (sellRoom == "Разлом Поклонения" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Дорога Храбрости",3);   
            else if (sellRoom == "Дорога Храбрости" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Спуск в катакомбы",3);
            else if (sellRoom == "Спуск в катакомбы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Спуск в Катакомбы",3);
        }       
    }
    catch(err)
    {
        external.AddToChat("error");
    }
}

127

Re: Плагин автопродажи вещей в гос

SPOILER Show

// < ---- Не работал smile ---- >

Отредактировано Andy_SPB (2015-07-18 09:14:20)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

128

Re: Плагин автопродажи вещей в гос

в воскресенье скажу какой таймаут ставить, пока нет возможности подобрать

Вы обладаете Благодатью Алхимика  до 05.04.16

129

Re: Плагин автопродажи вещей в гос

я так понимаю ни кто не проверял мою доработку?
или все работает на ура  big_smile ?

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

130

Re: Плагин автопродажи вещей в гос

Andy_SPB пишет:

я так понимаю ни кто не проверял мою доработку?
или все работает на ура  big_smile ?

Не работает. В принципе. Включил плагин на ЦП. Бот как стоял, так и дальше остался стоять, подвел его в магазин, думал он сам в диалог зайдет - ничего не вышло. При этом код плагина с поста чуть выше работает. Единственное, что выкидывает на "Вам временно запрещена продажа в гос".

131

Re: Плагин автопродажи вещей в гос

Leprekon812 понял... вернусь из командировки подумаю... что не так воткнул... и куда...
чужой код сложно править...

Косяк был в том, что я брал код с первой страницы, а там маршрут был старый wink
Но это уже не важно smile

Отредактировано Andy_SPB (2015-07-18 09:44:52)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

132

Re: Плагин автопродажи вещей в гос

я не проверял, забыл что-то(

Вы обладаете Благодатью Алхимика  до 05.04.16

133

Re: Плагин автопродажи вещей в гос

Появилась возможность продавать товары "целым списком", а не по одному предмету за раз.
Что теперь будем делать? Как теперь нам быть?

134

Re: Плагин автопродажи вещей в гос

Без автопродажи все плохо ( хелп!!!!

135

Re: Плагин автопродажи вещей в гос

насколько я вижу БК еще коряво отображается продажу партиями.
Надо подождать пока до ума доведут.

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

136

Re: Плагин автопродажи вещей в гос

В эксплорере все работает коректно. под ботом да тупит.

137

Re: Плагин автопродажи вещей в гос

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

P.S. Шмот за зубы у всех хреново отображается?

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

138

Re: Плагин автопродажи вещей в гос

за зубы нет шмота. потому хз. А вот без бродилки хреново будет. под благом шмота за поход много набирается.

139

Re: Плагин автопродажи вещей в гос

вообще пускай также как и было по одной шмотке продает ) Лиш бы работало.

140

Re: Плагин автопродажи вещей в гос

Решено

Отредактировано Andy_SPB (2015-07-18 09:47:31)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

141

Re: Плагин автопродажи вещей в гос

только все настроил. полностью автоматом работал бот..  опять обнова. козлодоевы млин.

142

Re: Плагин автопродажи вещей в гос

Решено

Отредактировано Andy_SPB (2015-07-18 09:47:11)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

143

Re: Плагин автопродажи вещей в гос

Вот обновленный плагин автопродажи.
1. Маршрут в плагине не проверял (взял отсюда (Please log in or register to see this URL))
2. Протестил продажу, продает все кроме зубного шмота (но это баг БК - кнопка косячная)
3. Список вещей надо вносить самому (сейчас 2 вещи)
4. В коде указал место для маршрутов (если что сами поправить на ваши старые рабочие маршруты)
5. Процесс продажи будет длительный (но быстрее придумать сложнее ).

SPOILER Show

// Автопродажа лута Update 18.07.2015
 
var sellTimer = {};
var stepTimer = {};
var sellDone = false;
var Pause = false;
var sellRoom = '';
var itemsToSell = [];
 
var timePLmin = 2000;
var timePLmax = 3000;
var stepSell = 0;
var itemSell = 0;
var filterText;
 
// < - Шмотки - >
itemsToSell.push("Замок для рюкзака");
itemsToSell.push("Бумага");
 
function SellInShop(enabled){
    if(enabled){
        sellTimer[mylogin] = setInterval("SellAction()", 3000);
    }else{
        clearInterval(sellTimer[mylogin]);
        clearInterval(stepTimer[mylogin]);
        stepSell = 0;
        itemSell = 0;
        if (Pause){ ChangeTime(); }
    }
}
 
Array.prototype.inArray = function(item)
{
    for (var i in this)
        if (item.indexOf(this[i]) > -1)
            return true;
    return false;
}
 
function SellAction(){
    try{
        if(!external.dungeonEnabled || !external.Started()) return;
        if(top.Battle.bInBattle || top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i))
        {
            sellDone = false;
            return;
        }
        var sellTemp = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
        if(sellRoom = sellTemp.match(/<nobr>([^<]+)<\/nobr>/))
            sellRoom = String(sellRoom[1]);
        else
            sellRoom = "unknown";
        if(!sellDone) {
// ===========================================================
 
//   < ---------   Машрут от пещеры в магазин ------------ >
            if(sellTemp.match(/drwfl\("(?:Дуалон|Илена|Мафи|Бартоломей|Амарл)",/i) && sellTemp.match(/(подойти к прилавку|пройти к прилавкам|пройти к прилавку)/))
                external.ClickLink(sellTemp.match(/(подойти к прилавку|пройти к прилавкам|пройти к прилавку)/)[0],2);
            else if (sellRoom.match(/(Центральная грибница|Торговые скалы)/) && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Прилавки с товарами",3);
            else if (sellRoom == "Грибница" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибная поляна",2);
            else if (sellRoom == "Грибная поляна" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Странное Место",3);
            else if (sellRoom == "Странное Место" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибная лужайка",3);
            else if (sellRoom == "Грибная лужайка" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральная грибница",3);
            else if (sellRoom == "Прилавки с товарами" && sellTemp.match(/Илена|Мафи/))
                external.ClickLink(sellTemp.match(/Илена|Мафи/)[0],3);
            else if (sellRoom == "Пещеры Мглы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Внутренний двор",2);
            else if (sellRoom == "Внутренний двор" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Последний Привал",3);
            else if (sellRoom == "Последний Привал" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Цветочный Пустырь",3);
            else if (sellRoom == "Цветочный Пустырь" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный Оазис",3);
            else if (sellRoom == "Центральный Оазис" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Базар",3);
            else if (sellRoom == "Базар" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Лавка Бартоломея",3);
            else if (sellRoom == "Лавка Бартоломея")
                external.ClickLink("Бартоломей",3);
            else if (sellRoom == "Спуск в Бездну" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Вход в Заповедник",2);
            else if (sellRoom == "Вход в Заповедник" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Утес безысходности",3);
            else if (sellRoom == "Утес безысходности" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Каменно-цветочная гряда",3);
            else if (sellRoom == "Каменно-цветочная гряда" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный утес",3);
            else if (sellRoom == "Центральный утес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Торговые скалы",3);
            else if (sellRoom == "Туманные Низины" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Тропинка в Туман",2);
            else if (sellRoom == "Тропинка в Туман" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Призрачный Лес",3);
            else if (sellRoom == "Призрачный Лес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Лесной Портал",3);
            else if (sellRoom == "Лесной Портал" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Опушка Поединков",3);
            else if (sellRoom == "Опушка Поединков" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Торговый Лес",3);
            else if (sellRoom == "Торговый Лес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Магазин",3);
            else if (sellRoom == "Спуск в Катакомбы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Спуск в катакомбы",2);   
            else if (sellRoom == "Спуск в катакомбы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Дорога Храбрости",3);   
            else if (sellRoom == "Дорога Храбрости" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Поклонения",3);
            else if (sellRoom == "Разлом Поклонения" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный Разлом",3);   
            else if (sellRoom == "Центральный Разлом" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Великолепия",3);     
            else if (sellRoom == "Разлом Великолепия" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Торговый Разлом",3);
            else if (sellRoom == "Торговый Разлом" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Магазин",3);
            else if (sellRoom == "Очаг Возрождения" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Обрыв Покоя",3);
            else if (sellRoom == "Обрыв Покоя" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Печали",3);
            else if (sellRoom == "Разлом Печали" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный разлом",3);
            else if (sellRoom == "Зал воинов" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный разлом",3);
 
// ===========================================================
 
           if(sellRoom == "Магазин"){
              sellTemp = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
              if((sellTemp.indexOf("Скупка")+1)){
                 clearInterval(sellTimer[mylogin]);
                 ChangeTime();
                 stepTimer[mylogin] = setInterval('sellLut()', getRndTime(timePLmin, timePLmax));
              }else{
                 external.ClickLink("Продать вещи",4);
              }
            }
        } else {
// ===========================================================
 
//   < --------- Машрут от магазина в пещеру --------------- >
 
            if(sellRoom == "Магазин" && top.frames[external.mainFrameIndex].check_access())
            {
                if(external.SCity.Text == "sandcity")
                    external.ClickLink("Лавка Бартоломея",2);
                else if(external.SCity.Text.match(/(suncity|angelscity)/))
                    external.ClickLink("Прилавки с товарами",2);
                else if(external.SCity.Text.match(/(demonscity)/))
                    external.ClickLink("Торговый Разлом",2);
                else if(external.SCity.Text.match(/(devilscity)/))
                    external.ClickLink("Магазин",2);
            }
            else if(sellRoom == "Прилавки с товарами" && top.frames[external.mainFrameIndex].check_access())
            {
                if(external.SCity.Text == "suncity")
                    external.ClickLink("Центральная грибница",3);
                if(external.SCity.Text == "angelscity")
                    external.ClickLink("Торговые скалы",3);
 
            }
            else if(sellRoom == "Магазин")         
                external.ClickLink("dev_new_gate",3);
            else if (sellRoom == "Торговый Лес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Опушка Поединков",3);
            else if (sellRoom == "Опушка Поединков" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Лесной Портал",3);
            else if (sellRoom == "Лесной Портал" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Призрачный Лес",3);
            else if (sellRoom == "Призрачный Лес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Тропинка в Туман",3);
            else if (sellRoom == "Тропинка в Туман" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Туманные Низины",3);
            else if (sellRoom == "Лавка Бартоломея" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Базар",3);
            else if (sellRoom == "Торговые скалы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный утес",3);
            else if (sellRoom == "Центральный утес" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Каменно-цветочная гряда",3);
            else if (sellRoom == "Каменно-цветочная гряда" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Утес безысходности",3);
            else if (sellRoom == "Утес безысходности" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Вход в Заповедник",3);
            else if (sellRoom == "Вход в Заповедник" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Спуск в Бездну",3);               
            else if (sellRoom == "Базар" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный Оазис",3);
            else if (sellRoom == "Центральный Оазис" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Цветочный Пустырь",3);
            else if (sellRoom == "Цветочный Пустырь" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Последний Привал",3);
            else if (sellRoom == "Последний Привал" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Внутренний двор",3);
            else if (sellRoom == "Внутренний двор" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Пещеры Мглы",3);
            else if (sellRoom == "Центральная грибница" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибная лужайка",3);
            else if (sellRoom == "Грибная лужайка" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Странное Место",3);
            else if (sellRoom == "Странное Место" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибная поляна",3);
            else if (sellRoom == "Грибная поляна" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Грибница",3);
            else if (sellRoom == "Торговый Разлом" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Великолепия",3);
            else if (sellRoom == "Разлом Великолепия" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Центральный Разлом",3);   
            else if (sellRoom == "Центральный Разлом" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Разлом Поклонения",3);     
            else if (sellRoom == "Разлом Поклонения" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Дорога Храбрости",3);   
            else if (sellRoom == "Дорога Храбрости" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Спуск в катакомбы",3);
            else if (sellRoom == "Спуск в катакомбы" && top.frames[external.mainFrameIndex].check_access())
                external.ClickLink("Спуск в Катакомбы",3);
 
// ===========================================================
        }       
    }catch(err){
        external.AddToChat("error");
    }
}
 
function sellLut(){
    if(stepSell == 0){
      filterText = top.frames[external.mainFrameIndex].document.getElementsByName("name_filter");
      filterText[0].value = itemsToSell[itemSell];
      $('input[name="filter"]',get_mainframe().document).each(function(){this.click();});
      if($(':checkbox',get_mainframe().document)){
            stepSell = stepSell + 1;
      }else{
            stepSell = 3;
      }
    }else if (stepSell == 1){
      $(':checkbox',get_mainframe().document).each(function(){this.click();});
      stepSell = stepSell + 1;
    }else if (stepSell == 2){
      $('#sell_button',get_mainframe().document).each(function(){this.click();});
      stepSell = stepSell + 1;
    }else{
      $('button[onclick*="return do_sell_checked();"]',get_mainframe().document).each(function(){this.click();});
      stepSell = 0;
      itemSell = itemSell + 1;
    }
    if(itemSell == itemsToSell.length){
      sellDone = true;
      ChangeTime();
      clearInterval(stepTimer[mylogin]);
      sellTimer[mylogin] = setInterval("SellAction()", 3000);
    }
} 
 
function ChangeTime(){
  if (!Pause){
     external.Stop();
     Pause = true;
  }else{
     external.Start();
     Pause = false;
  }
}
 
function getRndTime(timePLmin, timePLmax){
   return Math.floor(Math.random() * (timePLmax - timePLmin + 1)) + timePLmin;
}

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

З.Ы. Процесс продажи обкатал 4 раза, потом кр кончились (особо на 15 кр не разгуляешься big_smile )

Отредактировано Andy_SPB (2015-07-18 10:59:07)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

144

Re: Плагин автопродажи вещей в гос

Потестил немного плагин. С маршрутом беда, дописать нужно строчку:

if(sellRoom == "Магазин")
            external.ClickLink("dem_newbot_magaz|dev_new_magaz",3);

+Плагин бывает сбивается и начинает перебор вещей проводить прямо в отделе продажи вещей, а не скупки.

Отредактировано Desire (2015-07-18 16:11:37)

145

Re: Плагин автопродажи вещей в гос

Desire пишет:

Потестил немного плагин.
С маршрутом беда, дописать нужно строчку:
if(sellRoom == "Магазин")
            external.ClickLink("dem_newbot_magaz|dev_new_magaz",3);

+Плагин бывает сбивается и начинает перебор вещей проводить прямо в отделе продажи вещей, а не скупки.

1. где именно вставить строку?

2. чутка поправил код... вызова функции поиска и продажи.
Бот на паузу встает при начале поиска вещей?

SPOILER Show
По логике все вроде как нормально...

if(sellRoom == "Магазин"){
              sellTemp = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
              if((sellTemp.indexOf("Скупка")+1)){
                 clearInterval(sellTimer[mylogin]);
                 ChangeTime();
                 stepTimer[mylogin] = setInterval('sellLut()', getRndTime(timePLmin, timePLmax));
              }else{
                 external.ClickLink("Продать вещи",4);
              }
            }

Если в магазине, то
1 ищем текст "Скупка"
1.1 Если нашли, то
1.1.1 выключили общий таймер плагин
1.1.2 отключили бота
1.1.3 включили таймер процесса продажи
1.2 Если не нашли текст "Скупка"
1.2.1. Нажали на кнопку "Продать вещи"

Отредактировано Andy_SPB (2015-07-18 11:06:25)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

146

Re: Плагин автопродажи вещей в гос

Шикарно работает(переходы не тестил) до момента:

Произошла ошибка: 
Вам временно запрещена покупка или продажа в магазине.

Дальше висит..( Таймер надо, по которому верхний фрейм будет обновяться, раз в 5 минут допустим)

Чтобы разбить шмот по городам, используем:

if(external.SCity.Text == "devilscity")
{
//Тут шмот с низин
}
else if(external.SCity.Text == "angelscity")
{
//Тут шмот с Бездны
}
else if(external.SCity.Text == "demonscity")
{
//Тут шмот с Катакомб
}
else if(external.SCity.Text == "sandcity")
{
//Тут шмот с Пещер мглы
}
else if(external.SCity.Text == "suncity")
{
//Тут шмот с Грибницы
}
else if(external.SCity.Text == "mooncity")
{
//Тут шмот с ПТП
}

Только обращаем внимание, что тут проверка на текущий город, т.е. если вы в ангельсе - шмот с кат бот продавать не будет.

Йа нуб!!!

Шарите в js? Уверены?) Тогда загляните (Please log in or register to see this URL), может вы ошибаетесь в своих силах smile

147

Re: Плагин автопродажи вещей в гос

Andy_SPB пишет:
Desire пишет:

Потестил немного плагин.
С маршрутом беда, дописать нужно строчку:
if(sellRoom == "Магазин")
            external.ClickLink("dem_newbot_magaz|dev_new_magaz",3);

+Плагин бывает сбивается и начинает перебор вещей проводить прямо в отделе продажи вещей, а не скупки.

1. где именно вставить строку?

2. чутка поправил код... вызова функции поиска и продажи.
Бот на паузу встает при начале поиска вещей?

SPOILER Show
По логике все вроде как нормально...

if(sellRoom == "Магазин"){
              sellTemp = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
              if((sellTemp.indexOf("Скупка")+1)){
                 clearInterval(sellTimer[mylogin]);
                 ChangeTime();
                 stepTimer[mylogin] = setInterval('sellLut()', getRndTime(timePLmin, timePLmax));
              }else{
                 external.ClickLink("Продать вещи",4);
              }
            }

Если в магазине, то
1 ищем текст "Скупка"
1.1 Если нашли, то
1.1.1 выключили общий таймер плагин
1.1.2 отключили бота
1.1.3 включили таймер процесса продажи
1.2 Если не нашли текст "Скупка"
1.2.1. Нажали на кнопку "Продать вещи"



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

148

Re: Плагин автопродажи вещей в гос

Andy_SPB, если не сложно, те функции, которые сам добавлял можешь комментарии построчно сделать, ну или хоть немного расшифровать? Мне для образовательных целей. "Спасибо" будет сказано.

149

Re: Плагин автопродажи вещей в гос

LEONxz

Произошла ошибка:
Вам временно запрещена покупка или продажа в магазине.

ну такая тема у меня не вылетала... на тесте объем продаж был не тот smile
По тайму, специально вводил через переменную

var timePLmin = 2000;
var timePLmax = 3000;

Это интервал между этапами при продаже(фильтр, клики по чекбоксам, клик по кнопке продажи и клик по подтверждению)... соответственно надо диапазон 75000 - 76000...

Desire ну тут честно скажу не силен... не разбирался smile

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

150

Re: Плагин автопродажи вещей в гос

Leprekon812, как то так
Доработка кода продажи

SPOILER Show

if(!(sellTemp.indexOf("Скупка")+1)){  . 
    external.ClickLink("Продать вещи",4);
}else{
    clearInterval(sellTimer[mylogin]); // отключаем общий таймер плагина, что бы не перебивал работу продажи
    ChangeTime(); // вызов функции отключения бота
    stepTimer[mylogin] = setInterval('sellLut()', getRndTime(timePLmin, timePLmax)); // запускаем таймер вызова функции суллЛут, время генерим рандомно из фун. getRndTime
}

Функция самой продажи

SPOILER Show

function sellLut(){
    // stepSell - ввел переменную для того, что бы можно было разбить этапы продажи
    // если не бить на этапы выполнения кода... то при простом прогоне кода скрипт пролетает слишком быстро и не успевает выставлять чекбоксы и т.д.
    if(stepSell == 0){ // 
      filterText = top.frames[external.mainFrameIndex].document.getElementsByName("name_filter");  // в главном фрейме выцепляем элемент по имени name_filter - в коде страницы его видно - это поле фильтра
      filterText[0].value = itemsToSell[itemSell]; // присваиваем значение полю фильтра из массива вещей, [0] - так как у нас массив из 1го элемента (инфа по getElementsByName),
                                                   // itemsToSell[itemSell]; - массив вещей... itemSell - переменная для перебора
      $('input[name="filter"]',get_mainframe().document).each(function(){this.click();}); // клик по кнопке фильтр, 'input[name="filter"]' - селектор JQ для кода <input name="filter" ...
      if($(':checkbox',get_mainframe().document)){ // проверяем наличие чекбоксов на странице, ':checkbox' - селектор JQ дает массив чекбоксов
            stepSell = stepSell + 1; //  если чекбоксы есть (хотя бы один) переходим к этау № 1
      }else{
            stepSell = 3; // если чекбоксов нет, соответственно шмотки нет и выделять и продать не чего... переходим к этапу 3
      }
    }else if (stepSell == 1){ // проверяем этап 1
      $(':checkbox',get_mainframe().document).each(function(){this.click();});  // кликаем на чекбоксы (кликнет по всем чекбоксам в главном фрейме)
      stepSell = stepSell + 1;  // переходим на следующий этап
    }else if (stepSell == 2){  // проверяем этап 2
      $('#sell_button',get_mainframe().document).each(function(){this.click();}); // кликаем по кнопке, '#sell_button' - селектор JQ - в коде  id="sell_button"
      stepSell = stepSell + 1; // переходим на следующий этап
    }else{
      $('button[onclick*="return do_sell_checked();"]',get_mainframe().document).each(function(){this.click();});  // кликаем по кнопке подтверждения,
                                                                                                                   //'button[onclick*="return do_sell_checked();"]' - селектор JQ - в коде  <button onclick="return do_sell_checked();" ...
      stepSell = 0; // обнуляем этап, так как прошли всю цепочку
      itemSell = itemSell + 1; // прибавляем номер вещи - используем в массиве, т.е. прогнали вещь 1... перешли ко 2 й.
    }
    if(itemSell == itemsToSell.length){ // если порядковый номер вещи в массиве которую мы проверили = длине массива, значит она последняя
      sellDone = true;  // ключ = все продали
      ChangeTime();     // вызываем функцию вкл/выкл бота
      clearInterval(stepTimer[mylogin]); // трем таймер функции этапов продажи
      sellTimer[mylogin] = setInterval("SellAction()", 3000); // запускаем общий таймер плагина
    }
}

Функция остановки бота

SPOILER Show

function ChangeTime(){
  if (!Pause){ // проверяем статус паузы
     external.Stop();  // если пауза выключена false выключаем бота
     Pause = true;  // присваиваем значению Pause правда, что говорит о том, что бот выключен
  }else{
     external.Start();  // обратная ситуация
     Pause = false;
  }
}

функция рандомного времени

SPOILER Show

function getRndTime(timePLmin, timePLmax){  
   return Math.floor(Math.random() * (timePLmax - timePLmin + 1)) + timePLmin;   // возвращает рандомное значение в диапазоне  timePLmin - timePLmax
}

Доработки при выключении плагина

SPOILER Show

clearInterval(sellTimer[mylogin]); // стираем общий таймер плагина
clearInterval(stepTimer[mylogin]);  // стираем таймер продажи
stepSell = 0; // обнуляем этап продажи
itemSell = 0; // обнуляем порядковый номер шмотки которую продаем
if (Pause){ ChangeTime(); } // проверяем состояние Паузы... если она включена, значит бот выключен... соответственно переключаем

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).