Вот почти рабочий (в санде не работает).
Создай файл с названием zadanye.js и копируй содержимое ниже.
var phrasesAng = ["[(?:"|<b>|\")]*Литейщик","[(?:"|<b>|\")]*(?:Рубак[ауи]|Надзирател[ейьяи]*|Служител[ейьяи]*) [Гг]лубин","[(?:"|<b>|\")]*Служител[ейьяи]* [Бб]ездны","[(?:"|<b>|\")]*Бур","выполняете зачистку [(?:"|<b>|\")]*Бездны","не один труп в [(?:"|<b>|\")]*Бездн","в захвате [(?:"|<b>|\")]*Бездн","[(?:"|<b>|\")]*Тряпье необходимо нашим работницам","монстров в [(?:"|<b>|\")]*Бездн","[(?:"|<b>|\")]*Брага - продукт этой примитивной","их у монстров в [(?:"|<b>|\")]*Бездн","Ну, не знаю, [(?:"|<b>|\")]*Клыки, например","квадратный сантиметр [(?:"|<b>|\")]*Бездн","в [(?:"|<b>|\")]*Бездне, необходимы [(?:"|<b>|\")]*Аутсвайс","Из [(?:"|<b>|\")]*Подгорных Эдельвейсов, растущих исключительно в [(?:"|<b>|\")]*Бездне","один темный угол в [(?:"|<b>|\")]*Бездн","срочно необходим [(?:"|<b>|\")]*Драконий камень","придется отправиться в [(?:"|<b>|\")]*Бездн","всеми красками, нам необходим [(?:"|<b>|\")]*Гранит","Ах, [(?:"|<b>|\")]*Хрусталь - это так прекрасно","множество углов в [(?:"|<b>|\")]*Бездн","Хоть и гадость этот [(?:"|<b>|\")]*[Пп]ещерный [Мм]ох","один десяток монстров в Бездн"];
var phrasesMoon = ["[(?:"|<b>|\")]*Пустынник[ова]* (?:[Аа]таман|[Мм]аньяк|[Уу]бийц)","[(?:"|<b>|\")]*Дарьян[ау] [Кк]орт","[(?:"|<b>|\")]*Маула? [Сс]частливчик","[(?:"|<b>|\")]*Стража? [Кк]рантон","[(?:"|<b>|\")]*Изгнанника? [Мм]глы","[(?:"|<b>|\")]*Древнее [Пп]роклят[иь]е [Гг]лубин","[(?:"|<b>|\")]*Дух[ов]*-Хранител","[(?:"|<b>|\")]*Заблудш[аяихе]* [Дд]уш","[(?:"|<b>|\")]*Механически[хей]* (?:[Оо]хранник|[Гг]олем|[Уу]бийц)","[(?:"|<b>|\")]*Механик","[(?:"|<b>|\")]*Мастера? [Гг]рит","[(?:"|<b>|\")]*Стража? [Сс]окровищ","[(?:"|<b>|\")]*Каменны[йхе] [Сс]траж","квадратный сантиметр [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","один темный угол в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","придется отправиться в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","порыскать в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","Поищите их в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","обыскать все уголки в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","[(?:"|<b>|\")]*Инструменты","[(?:"|<b>|\")]*Череп путешественника","не один труп в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","у монстров в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий"," в захвате [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","смерть монстрам из [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","один десяток монстров в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","[(?:"|<b>|\")]*Зель[ея] Пустынник","[(?:"|<b>|\")]*Механическ[аяуюие]* [Рр]ук","[(?:"|<b>|\")]*Запчасти","[(?:"|<b>|\")]*Призрачн[аяую]* [Пп]ыл","[(?:"|<b>|\")]*Серд[цае]* [Гг]олем","с множеством монстров в [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","побродить по [(?:"|<b>|\")]*Пещер[ае] Тысячи Проклятий","(?:отыскать|поискать|(?:найти)|(?:должны доставить)|принести) [(?:"|<b>|\")]*(?:(?:Драконий [Кк]амень)|Гранит|(?:Подгорный [Ээ]дейльвейс)|Тряпье|(?:Пещерный [Мм]ох)|Хрусталь(?:Амулет [Пп]устынника))"];
var phrasesSand = ["[(?:"|<b>|\")]*(?:Рабочи[йех]|Сторож[ейа]*|Смотрител[ейь]*) [Мм]глы","[(?:"|<b>|\")]*Шахтерски[хйе] [Кк]рюк|[Оо]г[оньяъ]*","один десяток монстров в [(?:"|<b>|\")]*Пещер[еы] Мглы","в захвате [(?:"|<b>|\")]*Пещер[еы] Мглы","один труп в [(?:"|<b>|\")]*Пещер[еы] Мглы","квадратный сантиметр [(?:"|<b>|\")]*Пещер[еы] Мглы","один темный угол в [(?:"|<b>|\")]*Пещер[еы] Мглы","в захвате [(?:"|<b>|\")]*Пещер[еы] Мглы","отправиться в [(?:"|<b>|\")]*Пещер[ые] Мглы","лежащие глыбы [(?:"|<b>|\")]*[Гг]ранита","богаты [(?:"|<b>|\")]*[Дд]раконьим [Кк]амнем","Из [(?:"|<b>|\")]*[Пп]ещерного [Мм]ха, что растет в [(?:"|<b>|\")]*[Пп]ещерах [Мм]глы","так называемые [(?:"|<b>|\")]*[Пп]одгорные [Ээ]дельвейсы","городу нужен [(?:"|<b>|\")]*[Хх]русталь","оторые они называют [(?:"|<b>|\")]*[Аа]утсвайс","что [(?:"|<b>|\")]*[Кк]лыки [Пп]роклятья [Гг]лубин","наши стражники с [(?:"|<b>|\")]*[Кк]остями","[(?:"|<b>|\")]*Тряпье - совершенно бесполезная вещь"];
var phrasesDem = ["[(?:"|<b>|\")]*Слизь","[(?:"|<b>|\")]*Пожирател[ьейми]* [Пп]адал","[(?:"|<b>|\")]*(?:Окоченелы[ехй]|Каменны[ехй]|Зубасты[ехй]|Голодны[ехй]|Древни[ехй]|Загадочны[ехй]) [Зз]омб","[(?:"|<b>|\")]*Древни[хей] [Сс]траж","[(?:"|<b>|\")]*Прокляты[йех] (?:[Пп]ламенос|[Уу]бийц|[Сс]траж|[Оо]руженос|[Зз]ащитник|[Сс]китал)","[(?:"|<b>|\")]*Берсерк","[(?:"|<b>|\")]*Офицер[аов]* [Гг]лубин","[(?:"|<b>|\")]*(?:Зубаст[ыхуюаяе]*|Хищн[ыхуюаяе]*) [Сс]лиз","[(?:"|<b>|\")]*Чернокнижник","[(?:"|<b>|\")]*Епископ","[(?:"|<b>|\")]*Шута? [Пп]овелителя","[(?:"|<b>|\")]*Трупожор","[(?:"|<b>|\")]*Проклят[ыхей]* [Пп]ленник","[(?:"|<b>|\")]*Повелитель?","дин десяток монстров в [(?:"|<b>|\")]*Катакомб","хорошо поработать, чтобы достать [(?:"|<b>|\")]*[Кк]ости","остараться, чтобы найти [(?:"|<b>|\")]*[Аа]мулет [Пп]устынника","попал в эти места [(?:"|<b>|\")]*[Аа]мулет [Пп]устынника","они гонят [(?:"|<b>|\")]*[Бб]рагу из","от вас - это несколько [(?:"|<b>|\")]*[Кк]остей"];
var phrasesSun = ["[(?:"|<b>|\")]*(?:Искрящи[йехм]ся|Пылающи[ехмй]) [Пп]аразит","[(?:"|<b>|\")]*Скользки[йхем] [Рр]огонос","[(?:"|<b>|\")]*Усохши[хийм] [Пп]алочник","[(?:"|<b>|\")]*Мясисты[хйым] [Гг]усениц","[(?:"|<b>|\")]*Яростн[аяыхме]* [Мм]окриц","[(?:"|<b>|\")]*Брата? Скорпиончика","[(?:"|<b>|\")]*Скорпиончик","[(?:"|<b>|\")]*Трут[еньйя]*","[(?:"|<b>|\")]*Королев[еау] [Гг]рибницы","[(?:"|<b>|\")]*Сторожев[уюая]* [Гг]рибоножк[уа]","[(?:"|<b>|\")]*Грибков[уюая]* [Мм]оль","[(?:"|<b>|\")]*Кольчат[ыйхе]* [Сс]трахочерв[ьией]*","[(?:"|<b>|\")]*Жвала","[(?:"|<b>|\")]*Куск[иов]* [Хх]итина","[(?:"|<b>|\")]*Усик[ови]* [Нн]асекомых","[(?:"|<b>|\")]*Крупицы? [Мм]еталла","[(?:"|<b>|\")]*Мембрана? [Тт]рутня","[(?:"|<b>|\")]*Остры[йех]* [Кк]ог[тейяьо]*","[(?:"|<b>|\")]*Кус[коваи]* [Пп]анциря","оно вскоре покрывается [(?:"|<b>|\")]*слизью","[(?:"|<b>|\")]*Грибн[уюаяых]* (?:[Шш]ляпк|[Нн]ожк|[Гг]усениц)","[(?:"|<b>|\")]*Глазик","[(?:"|<b>|\")]*Потерявши[хйе]ся [Гг]усениц","[(?:"|<b>|\")]*Улит[аоки]*","[(?:"|<b>|\")]*Слизняк","[(?:"|<b>|\")]*Отрост[кови]* [Гг]рибницы","[(?:"|<b>|\")]*Кореш[окви]*","[(?:"|<b>|\")]*Мелки[хе] [Хх]люп","[(?:"|<b>|\")]*Сем[яена]*","[(?:"|<b>|\")]*[Пп]уст[ыхуюе]* бутыл[ейьи]* из под"];
var allQuests = [];
allQuests.push(phrasesAng);
allQuests.push(phrasesMoon);
allQuests.push(phrasesSand);
allQuests.push(phrasesDem);
allQuests.push(phrasesSun);
var proverkaTimer = {};
var roomNameUpdTimer = {};
var zadanieTimer = {};
var sellTimer = {};
var questIsActive = false;
var needToFinish = false;
var pathAngels = "Все маршруты"; //имя файла маршрута бездны
var pathDemons = "Все маршруты"; //имя файла маршрута кат
var pathSun = "Все маршруты"; //имя файла маршрута грибов
var pathSand = "Все маршруты"; //имя файла маршрута мглы
var pathMoon = "Все маршруты"; //имя файла маршрута птп
var enableSellInShop = true; // режим продажи пуршмота в гос
var dungMode = true; //режим подземки
var currentRoom ='';
var randomValue;
var min = 360000;
var max = 400000;
var questName = "";
var questID = "";
var needToDo = -1;
var hasBeenDone = -1;
var needToFinish = false;
var needToTake = false;
var dungeonLocked = false;
var beenInShop = true;
var itemsToSell = [];
itemsToSell.push("item");
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("item");
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("Посох Служителя");
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("Кинжал опытного путешественника");
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("Старая шапка алчного мага");
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("Рукавицы мертвого путешественника");
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("Ископаемые серьги щепетильного старца")
//11 каты
itemsToSell.push("Ископаемый арбалет доблестного призрака");
itemsToSell.push("Разваливающиеся серьги вечного палача");
itemsToSell.push("Серьги странного клятвоотступника");
itemsToSell.push("Серьги хитроумного обитателя подземелий");
//7-9 Пещера мглы
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("Пустая бутыль");
function zadanie(enabled)
{
if(enabled)
{
roomNameUpdTimer[mylogin] = setInterval("GetRoomName()", 500);
if(enableSellInShop) sellTimer[mylogin] = setInterval("SellAction()", 1500);
if(dungMode && !external.dungeonEnabled) external.dungeonEnabled = true;
proverkaTimer[mylogin] = setInterval("proverkaHandler()",2000);
}
else
{
if(zadanieTimer[mylogin]) clearInterval(zadanieTimer[mylogin]);
external.SBattleAbovePercent.Text = 100;
if(sellTimer[mylogin]) clearInterval(sellTimer[mylogin]);
clearInterval(proverkaTimer[mylogin]);
clearInterval(roomNameUpdTimer[mylogin]);
}
}
Array.prototype.inArray = function(item)
{
for (var i in this)
if (item.indexOf(this[i]) > -1)
return true;
return false;
}
function GetRoomName()
{
try
{
if(top.Battle.bInBattle || !external.Started()) return;
if(top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i))
{
external.SBattleAbovePercent.Text = 100;
return;
}
var pageSource = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
if(currentRoom = pageSource.match(/<nobr>([^<]+)<\/nobr>/))currentRoom = String(currentRoom[1]);
else if(top.frames[external.mainFrameIndex].document.getElementsByName("quest_name").length > 0) currentRoom = "inQuestWindow";
else currentRoom = "inDialog";
if(currentRoom == "inDialog") external.ClickLink("Вернуться",4);
}
catch(err)
{
external.AddToChat("Error in GetRoomName function");
}
}
function proverkaHandler()
{
try
{
clearInterval(proverkaTimer[mylogin]);
randomValue = Math.floor(Math.random()*(max - min) + min);
proverkaTimer[mylogin] = setInterval("proverkaHandler()", randomValue);
if(top.Battle.bInBattle || !external.Started())
{
external.SBattleAbovePercent.Text = 100;
return;
}
if(top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i)) external.SBattleAbovePercent.Text = 100;
else external.SBattleAbovePercent.Text = 101;
var tempstr = '';
var temp_inf = doLoad("http://" + external.SCity.Text + ".combats.com/main.pl?skills=1&rand=" + Math.random());
if(external.SCity.Text == "suncity") tempstr = "Suncity</B> - Рыцарь первого круга, 24999 / 24999";
else if(external.SCity.Text == "sandcity") tempstr = "Sandcity</B> - Рыцарь первого круга, 10000 / 24999";
else if(external.SCity.Text == "angelscity") tempstr = "Angels city</B> - Рыцарь первого круга, 10000 / 24999";
else if(external.SCity.Text == "demonscity") tempstr = "Demons city</B> - Рыцарь первого круга, 24999 / 24999";
else if(external.SCity.Text == "mooncity") tempstr = "Mooncity</B> - Рыцарь первого круга, 24999 / 24999";
if(!zadanieTimer[mylogin]) zadanieTimer[mylogin] = setInterval("zadanieHandler()",3000);
if(temp_inf.match(tempstr))
{
external.AddToChat("Задания не требуется");
questIsActive = false;
needToTake = false;
return;
}
var patt = external.SCity.Text + " - \\d+ (мин|ч|сек)";
if(temp_inf.match(/Время до подземелья/)) dungeonLocked = true;
else dungeonLocked = false;
if(GetQuestFromInfo(temp_inf))
{
external.AddToChat("Задание:");
top.Chat.Self.AddMessage(questName + " " + hasBeenDone + "/" + needToDo);
questIsActive = true;
needToTake = false;
var pickingQuest = isPickingQuest();
if((!pickingQuest && hasBeenDone == needToDo) || (pickingQuest && (hasBeenDone == (Math.floor(needToDo/4) + needToDo)))) needToFinish = true;
if(needToFinish) external.AddToChat("Нужно завершить задание");
}
else
{
if(!temp_inf.toLowerCase().match(patt))
{
external.AddToChat("Требуется взять задание");
needToTake = true;
questIsActive = false;
}
else
{
external.AddToChat("Задержка на взятие задания");
needToTake = false;
questIsActive = false;
}
}
}
catch(err)
{
external.SBattleAbovePercent.Text = 100;
external.AddToChat("Error in proverkaHandler function");
}
}
function zadanieHandler()
{
try
{
if(top.Battle.bInBattle || top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i) || !external.Started()) return;
if(enableSellInShop && !beenInShop) return;
var pgSource = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
if(dungMode || (!dungMode && !dungeonLocked && (needToTake || questIsActive)))
{
if(!currentRoom.match(/Спуск в Катакомбы|inQuestWindow|Пещеры Мглы|Пещера Тысячи проклятий|Грибница|Спуск в Бездну/) || (currentRoom.match(/Пещера Тысячи проклятий/) && pgSource.match(/Никогда и никому не говорите пароль от своего персонажа/)))
{
MoveToDung();
return;
}
}
if(!questIsActive && !needToTake && !dungMode)
{
if(currentRoom == "inQuestWindow") external.ClickLink("Вернуться",4);
if(external.dungeonEnabled) external.dungeonEnabled = false;
if(!currentRoom.match(/Зал воинов/))
MoveFromDung();
else
external.SBattleAbovePercent.Text = 100;
return;
}
if(needToTake || needToFinish)
{
if(currentRoom != "inQuestWindow") external.ClickLink("Задания",4);
else
{
if(pgSource.match(/Для вас нет заданий/))
{
needToTake = false;
questIsActive = false;
needToFinish = false;
return;
}
var gotRep = pgSource.match(/Вы получили \d* награды за выполнение задания/);
if(gotRep) external.AddToChat(gotRep);
var btns = top.frames[external.mainFrameIndex].document.getElementsByName("finishquest");
if(questID != "" && needToFinish && btns)
{
for(var i = 0; i < btns.length; i++)
if(btns[i].onclick && String(btns[i].onclick).match(questID) && btns[i].style.visibility != "hidden")
{
needToTake = true;
questIsActive = false;
needToFinish = false;
questName = "";
questID = "";
needToDo = -1;
hasBeenDone = -1;
btns[i].click();
return;
}
external.AddToChat("Не нашел кнопки завершения задания");
}
if(external.SCity.Text == "suncity" && pgSource.match(/Репутация в Suncity: 0/))
{
needToTake = false;
questIsActive = false;
return;
}
needToTake = false;
questIsActive = true;
if(external.ClickLink("Получить задание",4)) external.AddToChat("Работает взятие задания");
else external.AddToChat("Задание уже есть");
}
}
else if(questIsActive || !needToTake)
{
if(currentRoom == "inQuestWindow" && pgSource.match(/Для вас нет заданий/))
{
questIsActive = false;
needToTake = false;
external.ClickLink("Вернуться",4);
return;
}
if(currentRoom == "inQuestWindow") external.ClickLink("Вернуться",4);
if(currentRoom != "inQuestWindow" && currentRoom.match(/Спуск в Катакомбы|Пещера Тысячи проклятий|Пещеры Мглы|Грибница|Спуск в Бездну/))
{
var fp = GetPathFileName();
if(fp == "")
{
questIsActive = false;
needToTake = false;
external.AddToChat("Файл маршрута не найден");
return;
}
if(!dungMode)
{
external.DungeonLoadPath(fp);
external.dungeonEnabled = true;
external.SBattleAbovePercent.Text = 100;
}
}
}
}
catch(err)
{
external.AddToChat("Error in zadanieHandler function");
}
}
function SellAction()
{
try
{
if(!external.Started() || top.Battle.bInBattle) return;
if(get_mainframe().DungMap)
{
beenInShop = false;
return;
}
if(beenInShop) return;
var sellTmp = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
if(currentRoom != "Магазин" || sellTmp.indexOf("dem_newbot_magaz") > -1) MoveFromDung();
else
{
if(!sellTmp.match(/Отдел \"Скупка\"/i)) external.ClickLink("Продать вещи",4);
else
{
var items = sellTmp.match(/<a\s(?:onclick="[^"]*"\s)?href="shop\.pl\?sl=[^"]*">продать за .*? кр.<\/a><\/td>[\s\n\r]*<td[^>]*><a [^>]*>[^&<]*/ig);
if(!items)
{
beenInShop = true;
return;
}
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);
if(!items[i]) continue;
items[i][1] = items[i][1].replace(/&/g, '&');
if(!items[i][1]) continue;
if(itemsToSell.inArray(items[i][2]))
{
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + items[i][1];
return;
}
}
beenInShop = true;
}
}
}
catch(err)
{
external.AddToChat("Error in SellAction function");
}
}
function GetQuestFromInfo(inf)
{
try
{
var flds = inf.match(/<fieldset>[^<]*<legend>\s?Текущие (?:квесты|задания)[^@]*<\/fieldset>/i);
if(!flds) return false;
flds = flds[0].match(/<img[^>]*>[^@]*<span [^>]*>\d*\/\d*<\/span>/ig);
if(!flds) return false;
for(var i = 0; i < flds.length; i++)
{
var tmp = flds[i].match(/<img[^@]*quest_name=([^(?:&|")]*)[^>]*>([^@]*)<span[^>]*>([^<]*)<\/span>/i);
if(!tmp) return false;
if(CheckForQuestInInv(tmp[2]))
{
questID = tmp[1]; // 1 == идентификатор квеста
questName = tmp[2]; // 2 == текст квеста
hasBeenDone = parseInt(tmp[3].match(/[^\d]*(\d*)[^\/]*/)[1].toString());// 3 == сделано
needToDo = parseInt(tmp[3].match(/[^\/]*\/(\d*)/)[1].toString()); // 4 == надо сделать
return true;
}
}
return false;
}
catch(err)
{
external.AddToChat("Error in GetQuestFromInfo function");
}
}
function CheckForQuestInInv(inf)
{
try
{
var indexArray = -1;
if(external.SCity.Text == "suncity") indexArray = 4;
else if(external.SCity.Text == "sandcity") indexArray = 2;
else if(external.SCity.Text == "angelscity") indexArray = 0;
else if(external.SCity.Text == "demonscity") indexArray = 3;
else if(external.SCity.Text == "mooncity") indexArray = 1;
if(indexArray == -1) return false;
for(var i = 0; i < allQuests[indexArray].length; i++)
if(inf.match(allQuests[indexArray][i]))
return true;
return false;
}
catch(err)
{
external.AddToChat("Error in CheckForQuestInInv function");
}
}
function isPickingQuest()
{
try
{
if(external.SCity.Text == "suncity" && questName.match(/[(?:"|<b>|\")]*(?:Грибн[аяыеух]* (?:[Шш]ляп[као]*|[Нн]ож[каеи]*))|[(?:"|<b>|\")]*Глазик|[(?:"|<b>|\")]*(?:Грибн[аяыеух]* [Гг]усениц)|[(?:"|<b>|\")]*(?:Потерявш[ихсяйме]* [Гг]усениц)|[(?:"|<b>|\")]*Улит[окаи]*|[(?:"|<b>|\")]*Слизняк|[(?:"|<b>|\")]*Кореш[окив]*|[(?:"|<b>|\")]*(?:Отрост[кови]* [Гг]рибницы)|[(?:"|<b>|\")]*Сем[еная]*|[(?:"|<b>|\")]*(?:Мелки[ехйм]* [Хх]люп)|[(?:"|<b>|\")]*(?:Пуст[аяуюие]* бутыл)/))
return true;
else if(external.SCity.Text.match(/sandcity|angelscity/) && questName.match(/[(?:"|<b>|\")]*Хрустал[яь]|[(?:"|<b>|\")]*(?:Дракон[ьегоий]* [Кк]ам[еньяй]*)|[(?:"|<b>|\")]*Гранит|[(?:"|<b>|\")]*(?:Пещерн[ыйого]* [Мм][оха]*)|[(?:"|<b>|\")]*(?:Подгорн[ыхйе]* [Ээ]дельвейс)/))
return true;
else if(external.SCity.Text == "mooncity" && questName.match(/[(?:"|<b>|\")]*Хрустал[яь]|[(?:"|<b>|\")]*(?:Дракон[ьегоий]* [Кк]ам[еньяй]*)|[(?:"|<b>|\")]*Гранит|[(?:"|<b>|\")]*(?:Пещерн[ыйого]* [Мм][оха]*)|[(?:"|<b>|\")]*(?:Подгорн[ыхйе]* [Ээ]дельвейс)|[(?:"|<b>|\")]*Инструмент|[(?:"|<b>|\")]*(?:Череп[аов]* [пП]утешественн)/))
return true;
return false;
}
catch(err)
{
external.AddToChat("Error in isPickingQuest function");
}
}
function MoveToDung()
{
try
{
if(top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/drwfl\("(?:Геммайя|Мухатор|Юверриат|Фелико)",\d*/) && top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/завершить разговор|уйти/))
{
external.AddToChat("Завис у диалогового бота");
external.ClickLink(top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/завершить разговор|уйти/)[0],2);
}
else if(currentRoom == "Магазин" && top.frames[external.mainFrameIndex].check_access())
{
if(external.SCity.Text == "sandcity") external.ClickLink("Лавка Бартоломея",2);
else if(external.SCity.Text.match(/suncity|angelscity|mooncity/)) external.ClickLink("Прилавки с товарами",2);
else if(external.SCity.Text == "demonscity") external.ClickLink("Торговый Разлом",2);
}
else if (currentRoom == "Прилавки с товарами")
{
if(external.SCity.Text == "suncity") external.ClickLink("Центральная грибница",1);
if(external.SCity.Text == "angelscity") external.ClickLink("Торговые скалы",1);
if(external.SCity.Text == "mooncity") external.ClickLink("Рыночная площадь",1);
}
else if(currentRoom == "Бойцовский Клуб")
{
if(external.SCity.Text == "sandcity") external.ClickLink("Центральный Оазис",1);
else if(external.SCity.Text == "angelscity") external.ClickLink("Центральный утес",1);
else if(external.SCity.Text == "suncity") external.ClickLink("Центральная грибница",1);
else if(external.SCity.Text == "mooncity") external.ClickLink("Центр падения",1);
else if(external.SCity.Text == "demoncity") external.ClickLink("Центральный Разлом",1);
}
else if(currentRoom.match(/Зал воинов/))
external.ClickLink("Бойцовский Клуб",1);
else if (currentRoom == "Центральная грибница") //sun
external.ClickLink("Грибная лужайка",1);
else if(currentRoom == "Грибная лужайка")
external.ClickLink("Странное Место",1);
else if(currentRoom == "Странное Место")
external.ClickLink("Грибная поляна",1);
else if(currentRoom == "Грибная поляна")
external.ClickLink("Грибница",1); //end sun
else if (currentRoom == "Лавка Бартоломея") //sand
external.ClickLink("Базар",1);
else if (currentRoom == "Базар")
external.ClickLink("Центральный Оазис",1);
else if(currentRoom == "Центральный Оазис")
external.ClickLink("Цветочный Пустырь",1);
else if(currentRoom == "Цветочный Пустырь")
external.ClickLink("Последний Привал",1);
else if(currentRoom == "Последний Привал")
external.ClickLink("Внутренний двор",1);
else if(currentRoom == "Внутренний двор")
external.ClickLink("Пещеры Мглы",1); //end sand
else if (currentRoom == "Торговые скалы") //angels
external.ClickLink("Центральный утес",1);
else if(currentRoom == "Центральный утес")
external.ClickLink("Каменно-цветочная гряда",1);
else if(currentRoom == "Каменно-цветочная гряда")
external.ClickLink("Утес безысходности",1);
else if(currentRoom == "Утес безысходности")
external.ClickLink("Вход в Заповедник",1);
else if(currentRoom == "Вход в Заповедник")
external.ClickLink("Спуск в Бездну",1); //end angels
else if(currentRoom == "Торговый Разлом") //demons
external.ClickLink("Разлом Великолепия",1);
else if(currentRoom == "Разлом Великолепия")
external.ClickLink("Центральный Разлом",1);
else if(currentRoom == "Центральный Разлом")
external.ClickLink("Разлом Поклонения",1);
else if(currentRoom == "Разлом Поклонения")
external.ClickLink("Дорога Храбрости",1);
else if(currentRoom == "Дорога Храбрости")
external.ClickLink("Спуск в катакомбы",1);
else if(currentRoom == "Спуск в катакомбы" && top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Никогда и никому не говорите пароль от своего персонажа/))
external.ClickLink("Спуск в Катакомбы",1); //end demons
else if (currentRoom == "Рыночная площадь") //moon
external.ClickLink("Центр падения",1);
else if (currentRoom == "Центр падения")
external.ClickLink("Спящая площадь",1);
else if (currentRoom == "Спящая площадь")
external.ClickLink("Улица Камней",1);
else if (currentRoom == "Улица Камней")
external.ClickLink("Проклятые руины",1);
else if (currentRoom == "Проклятые руины")
external.ClickLink("Пещера тысячи проклятий",1);
else if(currentRoom == "Пещера Тысячи проклятий" && top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Никогда и никому не говорите пароль от своего персонажа/))
external.ClickLink("Пещера Тысячи проклятий",1); //end moon
}
catch(err)
{
external.AddToChat("Error in MoveToDung function");
}
}
function MoveFromDung()
{
try
{
if(currentRoom == "Пещера Тысячи проклятий" && top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Никогда и никому не говорите пароль от своего персонажа/))
external.ClickLink("Проклятые Руины",1);
else if(currentRoom.match(/Спуск в Катакомбы|Пещеры Мглы|Пещера Тысячи проклятий|Грибница|Спуск в Бездну/))
{
if(external.SCity.Text == "suncity") external.ClickLink("Грибная поляна",2);
else if(external.SCity.Text == "sandcity") external.ClickLink("Внутренний двор",2);
else if(external.SCity.Text == "angelscity") external.ClickLink("Вход в Заповедник",2);
else if(external.SCity.Text == "demonscity") external.ClickLink("Спуск в катакомбы",2);
else if(external.SCity.Text == "mooncity") external.ClickLink("Пещера Тысячи проклятий",2);
}
else if(currentRoom == "Бойцовский Клуб")
external.ClickLink("Зал воинов",1);
else if(currentRoom == "Грибная поляна") //sun
external.ClickLink("Странное Место",1);
else if(currentRoom == "Странное Место")
external.ClickLink("Грибная лужайка",1);
else if(currentRoom == "Грибная лужайка")
external.ClickLink("Центральная грибница",1); //end sun
else if(currentRoom == "Спуск в катакомбы" && top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Никогда и никому не говорите пароль от своего персонажа/))
external.ClickLink("Дорога Храбрости",1);
else if(currentRoom == "Дорога Храбрости")
external.ClickLink("Разлом Поклонения",1);
else if(currentRoom == "Разлом Поклонения")
external.ClickLink("Центральный Разлом",1);
else if(currentRoom == "Разлом Великолепия")
external.ClickLink("Торговый Разлом",1);
else if(currentRoom == "Торговый Разлом")
external.ClickLink("Магазин",1); //end dem
else if(currentRoom == "Проклятые Руины") //moon
external.ClickLink("Улица Камней",1);
else if(currentRoom == "Улица Камней")
external.ClickLink("Спящая площадь",1);
else if(currentRoom == "Спящая площадь")
external.ClickLink("Центр падения",1); //end moon
else if(currentRoom == "Вход в Заповедник") //ang
external.ClickLink("Утес безысходности",1);
else if(currentRoom == "Утес безысходности")
external.ClickLink("Каменно-цветочная гряда",1);
else if(currentRoom == "Каменно-цветочная гряда")
external.ClickLink("Центральный утес",1); //end ang
else if(currentRoom == "Внутренний двор") //sand
external.ClickLink("Последний Привал",1);
else if(currentRoom == "Последний Привал")
external.ClickLink("Цветочный Пустырь",1);
else if(currentRoom == "Цветочный Пустырь")
external.ClickLink("Центральный Оазис",1); //end sand
else if(currentRoom == "Магазин" && external.SCity.Text == "demonscity" && top.frames[external.mainFrameIndex].document.all[0].innerHTML.indexOf("dem_newbot_magaz") > 0)
external.ClickLink("dem_newbot_magaz",3);
else if(top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/drwfl\("(?:Илена|Мафи|Бартоломей|Амарл)",\d*/) && top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/подойти к прилавк[аму]*|пройти к прилавк[аум]*/))
external.ClickLink(top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/подойти к прилавк[аму]*|пройти к прилавк[аум]*/)[0],2);
else if (currentRoom.match(/Центральная грибница|Торговые скалы/))
external.ClickLink("Прилавки с товарами",1);
else if (currentRoom == "Прилавки с товарами" && top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Илена|Мафи/))
external.ClickLink(top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Илена|Мафи/)[0],3);
else if (currentRoom == "Базар")
external.ClickLink("Лавка Бартоломея",1);
else if (currentRoom == "Лавка Бартоломея")
external.ClickLink("Бартоломей",3);
else if (currentRoom.match(/Центральный Оазис|Центральный утес|Центральная грибница|Центр падения|Центральный Разлом/))
{
if(!enableSellInShop && !dungMode) external.ClickLink("Бойцовский Клуб",1);
if(!beenInShop && enableSellInShop)
{
if(currentRoom == "Центральный Разлом")
external.ClickLink("Разлом Великолепия",1);
else if (currentRoom == "Центральный утес")
external.ClickLink("Торговые скалы",1);
else if (currentRoom == "Центральный Оазис")
external.ClickLink("Базар",1);
else if (currentRoom == "Центральная грибница")
external.ClickLink("Прилавки с товарами",1);
else if (currentRoom == "Центр падения")
external.ClickLink("Рыночная площадь",1);
}
}
}
catch(err)
{
external.AddToChat("Error in MoveFromDung function");
}
}
function doLoad(url)
{
try
{
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");
req.send(null);
return req.responseText;
}
catch(err)
{
external.AddToChat("Error in doLoad function");
}
}
function GetPathFileName()
{
try
{
if(external.SCity.Text == "suncity") return pathSun;
else if(external.SCity.Text == "sandcity") return pathSand;
else if(external.SCity.Text == "angelscity") return pathAngels;
else if(external.SCity.Text == "demonscity") return pathDemons;
else if(external.SCity.Text == "mooncity") return pathMoon;
return "";
}
catch(err)
{
external.AddToChat("Error in GetPathFileName function");
}
}