sebiza пишет:Задания не все берёт и после взятия обратно в диалог влазит, на дверях тоже тупит (дальше не идет), имхо лучше руками за 15-20 мин взять ускорялку, пропуск, набрать/по-сдавать задания, и по ходу двери, сундуки, туры... типа по обстановке. А бота использовать только для зачистки
Так написано-Это основа. Менять можно как хочешь и настраивать под себя.
В идеале это:
Бот идет за постепенкой - берет ее - идет за пропуском - спускается к роднику (в грот) - перед в ходом в город(раздевается) - смотрит двери - после последней двери, одевается и потопал бить мобов. Вполне хватает кристаллов, чтобы поддерживать репу и брать золотой ключ каждый день.
Если сливается на охранницах, прописать маршрут, чтобы шел сразу в чистый город.
Тайм такой:
В бою - 1000-2000
Вне боя - 2000-4000
Подземелья - 2000-4000
Проблема со здачей в гос, решена.
Выглядит так:
var sellTimer = {};
var sellDone = false;
var sellRoom = '';
var itemsToSell = [];
//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("Гнилая дубина Охранниц");
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("Ископаемые серьги щепетильного старца")
//10 каты
itemsToSell.push("Устаревший лук мрачного мертвеца");
//11 каты
itemsToSell.push("Ископаемый арбалет доблестного призрака");
itemsToSell.push("Разваливающиеся серьги вечного палача");
itemsToSell.push("Серьги странного клятвоотступника");
itemsToSell.push("Серьги хитроумного обитателя подземелий");
itemsToSell.push("Пустая бутыль");
function SellInShop(enabled)
{
if(enabled)
{
sellTimer[mylogin] = setInterval("SellAction()", 1500);
}
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 == "Магазин")
{
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(/&/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("Возврат",4);
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);
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");
}
}
Удачи.
Отредактировано re-shik (2013-05-24 07:16:01)