- // ==UserScript==
- // @name hwm_GN_exp
- // @description Помощник ГН. (2021.11.18)
- // @author ElMarado
- // @version 2.82
- // @include http://178.248.235.15/mercenary_guild.php*
- // @include http://178.248.235.15/pl_warlog.php*
- // @include https://www.heroeswm.*/mercenary_guild.php*
- // @include https://www.heroeswm.*/pl_warlog.php*
- // @grant GM_getValue
- // @grant GM_setValue
- // @icon https://app.box.com/representation/file_version_34029013909/image_2048/1.png?shared_name=hz97b2qwo2ycc5ospb7ccffn13w3ehc4
- // @namespace https://gf.qytechs.cn/users/14188
- // @license GPL-3.0+
- // ==/UserScript==
- (function () {
- var version = '2.82 (2021.11.18)';
- var new_exp_koef = 4;
- var show_exp_on_warlog = GM_getValue("hwm_show_exp_on_warlog", false);
- var skip_army = GM_getValue("hwm_skip_army", false); //1-армии
- var skip_raids = GM_getValue("hwm_skip_raids", false); //2-набеги
- var skip_monstr = GM_getValue("hwm_skip_monstr", false); //3-монстры
- var skip_conspir = GM_getValue("hwm_skip_conspir", false); //4-заговорщики
- var skip_invader = GM_getValue("hwm_skip_invader", false); //5-захватчики
- var skip_otryad = GM_getValue("hwm_skip_otryad", false); //6-отряд (защита союзника)
- var skip_convoy = GM_getValue("hwm_skip_convoy", false); //7-разбойники (сопровождение)
- var koef = GM_getValue("hwm_koef_dop_exp", 1.0); //коэф перекача
- var level_army = GM_getValue("hwm_level_army", 0); //1-С какого уровня пропускать армии
- var level_raids = GM_getValue("hwm_level_raids", 0); //2-С какого уровня пропускать набеги
- var level_monstr = GM_getValue("hwm_level_monstr", 0); //3-С какого уровня пропускать монстров
- var level_conspir = GM_getValue("hwm_level_conspir", 0); //4-С какого уровня пропускать заговорщиков
- var level_invader = GM_getValue("hwm_level_invader", 0); //5-С какого уровня пропускать захватчиков
- var level_otryad = GM_getValue("hwm_level_otryad", 0); //6-С какого уровня пропускать отряды
- var level_convoy = GM_getValue("hwm_level_convoy", 0); //7-С какого уровня пропускать отряды
- var limit_exp_monstr = GM_getValue("hwm_limit_exp_monstr", 0); //3-С какого порога опыта пропускать монстров
- var str_settings= ustring("Настройки");
- var str_exp = ustring("Кол-во опыта: ");
- var str_atk = ustring("Атака       : ");
- var str_def = ustring("Защита      : ");
- var str_dam = ustring("Урон        : ");
- var str_hp = ustring("Ед.жизни    : ");
- var str_spd = ustring("Скорость    : ");
- var str_ini = ustring("Инициатива  : ");
- var str_mana1 = ustring("Мана        : ");
- var str_mana2 = ustring("Кастов      : ");
- var str_vys = ustring("Выстрелы    : ");
- var str_skills = ustring('Умения: ');
- var str_pusto = ustring("Данные не заполнены");
- var str_no_found= ustring("В базе скрипта не найден. Обратитесь к автору скрипта.");
- var str_show = ustring("Отображать опыт в протоколе боев");
- var str_start = ustring("Скрипт: Помощник ГН. Версия: ");
- var str_koef_0 = ustring("Текущий коэффициент перекача: ");
- var str_koef_1 = ustring("Введите новый коэффициент перекача от 1.0 до 9.9999");
- var str_koef_2 = ustring(" - значение изменится после обновления.");
- var str_update = ustring("Проверить обновление скрипта.");
- var str_autor = ustring("Сообщить автору о найденной ошибке.");
- var str_warning1= ustring("Внимание. Выставляя галочку в любую из ячеек ниже, вы берете на себя отвественность за нарушение ");
- var str_warning2= ustring("общих правил ГВД (пп.2.1 и 2.2)!");
- var str_warning3= ustring("Перед отправлением на задание <Разбойники> проверьте свою аммуницию. Можно идти без артов!");
- var str_skip00 = ustring("Пропускать задания:");
- var str_skip01 = ustring("От указанного уровня");
- var str_skip02 = ustring("Или опыт > заданого");
- var str_title_3 = ustring("Если значение 0, то опыт не учитывается.");
- var str_skip1 = ustring(" армии.");
- var str_skip2 = ustring(" набеги.");
- var str_skip3 = ustring(" монстры.");
- var str_skip4 = ustring(" заговорщики.");
- var str_skip5 = ustring(" захватчики.");
- var str_skip6 = ustring(" отряды (защита союзника).");
- var str_skip7 = ustring(" разбойники.");
- var key_army = ustring("Армия");
- var key_raids = ustring("набеги");
- var key_monstr = ustring("-монстр");
- var key_conspir = ustring("заговорщики");
- var key_invader = ustring("захватчики");
- var key_otryad = ustring("Отряд");
- var key_convoy = ustring("разбойники");
- var str_time = ustring("Приходи через");
- var str_min = ustring(" мин");
- var str_sec = ustring(" c.");
- var str_tab_b = ustring("ГН. ");
- var str_tab_e = ustring(" до проверки задания.");
- var str_no_gn = ustring("ГН недоступна.");
- var str_zad_ok = ustring("ГН. Задание подобрано!");
- var str_need_skp= ustring("ГН. Есть задание для пропуска.");
- var str_url_aut = ustring("/sms-create.php?mailto=ElMarado&subject=Скрипт: Помощник ГН v")+version+ustring(". Найдена ошибка:");
- var str_url_hlp = "http://help.ordenmira.ru/ability.php?name=";
- var str_url_prav= "/help.php?section=5";
- var str_url = "https://gf.qytechs.cn/ru/scripts/11693-hwm-gn-exp";
- var need_move_up= false;
- var url_cur = location.href;
- var all_tables = document.getElementsByTagName('table');
- var monstr_rus_data = { //структура(Если не написано ГО, то для монстра 0-уровня) [Умения,Exp_ГО,Атака,Защита,Min_Урон,Max_Урон,HP_ГО,Скорость,Инициатива, Мана, Выстрелы]
- "Абордажники": ['00000000000000000000000000010000000000000001C200',30,25,23,24,37,16,6,12,0,0],
- "Адепты": ['00000000000000800008000100000000040000000001C000',121,20,24,29,32,80,6,12,14,10],
- "Адские жеребцы": ['20040020000000000000000000000000000000000001C000',136,23,23,28,36,50,7,19,0,0],
- "Адские жнецы": ['00000028000000800000000000000000000000000001C000',250,44,33,22,33,99,6,16,10,0],
- "Адские псы": ['00000020000000000000000000000000000000000001C000',33,24,22,23,35,15,7,16,0,0],
- "Ангелы": ['00040000000000040000000000000000000000000001C000',330,27,27,45,45,180,6,13,0,0],
- "Арбалетчики": ['00000000000000000000000000000000041000000001C000',19,24,24,22,38,10,6,10,0,12],
- "Архангелы": ['00040400000000040000000000000000000000000001C000',390,31,31,50,50,220,8,13,0,0],
- "Архидемоны": ['00040020000000000000000000000000006000000001C000',312,32,31,33,66,211,6,12,0,0],
- "Архидьяволы": ['00040020000000000000000000100000004000000001C000',311,32,29,36,66,199,7,13,0,0],
- "Архиличи": ['00040000000000800020000000000004040000000001C000',110,29,29,27,30,55,6,12,19,6],
- "Архимаги": ['00000000000000808000000000000000060000000201C000',70,20,20,27,37,30,6,12,30,4],
- "Ассасины": ['00000000000000000008000400000000040000001001C000',33,24,23,22,34,14,6,14,0,5],
- "Астральные драконы": ['00040000000000040020000000000000000001000001C000',310,31,27,27,36,150,7,13,0,0],
- "Баньши": ['00040000000000000020000000000200000000000001C000',205,23,23,22,37,110,6,13,0,0],
- "Бегемоты": ['00040000020000000000000000000000000000000001C000',350,30,22,30,50,210,6,11,0,0],
- "Берсерки": ['00000000004000000000000000000000000000000081C000',42,27,27,23,38,25,6,14,0,0],
- "Бестии": ['00000000000000000000000000000000000020000001C000',30,24,22,25,37,16,7,17,0,0],
- "Бесы": ['00000020000000000000000000000000000000020001C000',6,22,21,21,32,4,6,16,0,0],
- "Бехолдеры": ['00000000000000000008000000000000040000000101C000',33,29,27,23,35,22,6,12,0,12],
- "Боевые грифоны": ['00440000000020040000000000000000000000000001C000',45,27,22,27,35,35,9,19,0,0],
- "Боевые единороги": ['10040000000000000000040000000000000000000001C000',135,27,27,20,30,77,7,14,0,0],
- "Боевые кентавры": ['00048000000000000008000000000000040000000001C000',21,24,24,23,35,10,6,12,0,8],
- "Боевые маги": ['00000000000000808000000000200000060000000001C000',72,22,29,27,37,29,6,12,12,6],
- "Вампиры": ['00000200000000000020010000000000000000000001C000',68,26,26,26,38,30,6,13,0,0],
- "Вармонгеры": ['00008001000000000000000000001000000000000101C000',36,24,26,23,35,20,6,11,0,0],
- "Ведьмы-призраки": ['00200010000000040020010000000000000000000001C000',30,28,27,24,36,20,6,13,0,0],
- "Ведьмы моря": ['00000000000000800000000000000000040000000001C200',70,22,20,20,36,35,6,14,29,4],
- "Великаны-лучники": ['00040008000000000000000000000000060000000001C000',130,30,26,22,32,100,6,13,0,6],
- "Великие левиафаны": ['00040000010010000000000000000000000000000001C000',300,35,35,45,65,250,6,12,0,0],
- "Верховные друиды": ['00000000000000800000000040000000040000000001C000',101,22,29,29,34,38,6,12,18,7],
- "Вестники смерти": ['00040000000000000020000000000010000000000001C000',205,26,24,25,30,100,6,13,0,0],
- "Виверны": ['00040000000000040000000000004000000000000001C000',170,27,27,25,35,90,6,12,0,0],
- "Визири джиннов": ['00040000002000440000000000000000100000000001C000',110,23,23,24,39,50,8,14,-2,0],
- "Владычицы тени": ['00000000000000800000000000000000040000400001C000',185,20,20,27,37,90,6,12,17,4],
- "Водные элементали": ['00000000000010800000000000000000000000000401C000',57,28,28,28,32,43,6,12,14,0],
- "Вожаки": ['00008000000000000000000000060000000000000001C000',100,23,25,20,32,48,7,14,0,0],
- "Воздушные элементали": ['00000200002000040000000000000000000000000401C000',59,28,26,25,37,30,8,20,0,0],
- "Воины-наёмники": ['00420000000000000001000000000000000000000101C000',25,29,25,23,35,24,6,11,0,0],
- "Воители": ['00030000000000000000000000000000080000000101C000',12,21,25,21,32,12,6,11,0,0],
- "Воры-колдуны": ['00000000000000800000000000000000000000000001C000',35,28,27,25,39,30,6,13,24,0],
- "Воры-разведчики": ['00000200000000000000000000000000000000000001C000',35,20,28,27,32,45,6,13,0,0],
- "Воры-убийцы": ['00000000000000000008000400000000040000000001C000',35,22,26,26,30,40,6,16,0,12],
- "Высшие ангелы": ['00040000000000840000000000000000000000000001C000',390,35,25,25,75,220,8,13,17,0],
- "Высшие вампиры": ['00000200000000000020010000000000004000000001C000',70,29,29,27,31,35,7,13,0,0],
- "Высшие личи": ['00040000000000800020000000000000040000000001C000',100,21,29,27,31,55,6,12,23,5],
- "Гарпии": ['00000000000000040000000000000000000020000001C000',29,25,21,24,37,15,8,16,0,0],
- "Гарпии-ведьмы": ['00000200000000040000000000000000000020000001C000',45,26,22,24,37,15,9,18,0,0],
- "Гарпунеры": ['00010000000000000000000000000000040000000003C000',18,25,23,22,35,10,4,9,0,0],
- "Гигантские ящеры": ['00040000000000000000000000000000000000000001C000',25,27,27,24,36,25,6,14,0,0],
- "Гидры": ['00040200000000000000000000000000000000800101C000',108,25,22,27,34,80,6,10,0,0],
- "Глубоководные черти": ['00040000000000000000000000004008000000000001C000',140,28,26,25,34,105,6,11,0,0],
- "Гниющие зомби": ['00000000000000000020000800000000000000000101C000',17,22,23,21,33,23,6,10,0,0],
- "Гоблины": ['00000000000000000000000000000000000000000001C000',5,23,21,21,32,3,6,12,0,0],
- "Гоблины-лучники": ['00000000000000000000000000000000040000000001C000',9,23,23,21,32,3,6,12,0,10],
- "Гоблины-маги": ['00000000000000800000000000000000000000000001C000',9,22,21,21,32,3,6,13,10,0],
- "Гоблины-трапперы": ['00008000000000000000000000000000000400008001C000',15,21,23,21,31,7,6,12,0,0],
- "Гоги": ['00000020000000000000000000000000040000000001C000',13,26,24,22,34,13,6,12,0,12],
- "Големы смерти": ['00040000000000000028000000000000440000000001C000',329,25,40,40,60,350,6,12,0,1],
- "Головорезы": ['00000000000000000000000000000000000000000801C000',6,22,22,21,32,8,6,10,0,0],
- "Горные стражи": ['00030000000000000004000000000000000000000101C000',24,21,26,21,32,12,6,10,0,0],
- "Гремлины": ['00000000000000000000000000000000040000000001C000',5,22,22,21,32,5,6,10,0,5],
- "Гремлины-вредители": ['00000000000000010000000000000000040000000001C000',9,28,23,21,32,6,6,14,0,7],
- "Грифоны": ['00440000000020040000000000000000000000000001C000',59,27,25,25,30,30,7,18,0,0],
- "Громовержцы": ['00040000000100000040000000000000004040000001C000',162,25,25,29,34,120,8,13,0,0],
- "Демонессы": ['00000020000000000000002000000000040000002001C000',67,26,26,26,33,30,6,12,0,6],
- "Детёныши ящера": ['40000000000000000000000000000000000000000001C000',13,25,25,22,34,13,6,22,0,0],
- "Джинны": ['00040000000000040000000000000100000000000001C000',103,21,20,22,34,40,7,14,-1,0],
- "Джинны-султаны": ['00040000000000040000000000000080200000000001C000',110,24,24,24,39,45,8,14,-1,0],
- "Дикие энты": ['00040000000400000000200000000000000000000109C000',210,21,27,22,30,175,6,10,0,0],
- "Дочери земли": ['00008004000001800000000000000000008000000001C000',72,20,27,27,31,35,6,14,10,0],
- "Дочери неба": ['00008004000000800000000000000000000000000001C000',75,27,29,26,39,35,6,14,14,0],
- "Древние бегемоты": ['00040000008000000000000000000000000000000001C000',390,33,25,30,50,250,6,11,0,0],
- "Древние мумии": ['00000000000000800020000000000000000000000001C040',135,20,20,26,30,80,6,13,29,0],
- "Древние энты": ['00040000000000000000200000000000000000080101C000',210,29,29,20,30,181,6,10,0,0],
- "Дриады": ['00000200000000840000000000000000000100000001C000',20,22,21,22,32,6,7,17,12,0],
- "Друиды": ['00000000000000800000000000000000040000000001C000',74,27,27,27,39,34,6,12,14,5],
- "Духи": ['002000000000000C0020000000000000000000000001C000',27,26,25,24,36,20,6,11,0,0],
- "Дьяволы": ['00040020000000000000000000000000004000000001C000',245,27,25,36,66,166,7,13,0,0],
- "Дьяволята": ['00000020000000000000001000000000000000000001C000',10,23,23,21,34,6,6,16,0,0],
- "Единороги": ['10040000000000000000000000000000000000000001C000',124,22,22,20,30,57,7,14,0,0],
- "Железные големы": ['00000000000400000400000000000000200000000001C000',33,25,25,23,35,18,6,10,0,0],
- "Жрецы рун": ['00000000200000800010000000000000040000000001C000',59,20,26,22,35,60,6,10,18,5],
- "Защитники веры": ['00020000000000200000000000000000000000000101C000',20,28,28,22,35,23,6,10,0,0],
- "Защитники гор": ['00030000000000000000000000000000000000000101C000',7,21,24,21,31,7,6,11,0,0],
- "Зелёные драконы": ['00040000000002040000000000000000000000000001C000',350,27,25,30,50,200,8,14,0,0],
- "Земные элементали": ['00400000000200000000000000000000200000000401C000',63,28,21,20,34,75,6,10,0,0],
- "Злобные глаза": ['00000000000000000008020000000000040000000101C000',33,20,28,23,35,22,7,12,0,24],
- "Зомби": ['00000000000000000020000000000000000000000101C000',11,21,22,21,32,17,6,10,0,0],
- "Изумрудные драконы": ['00040000000202040000000000000000000000000001C000',400,31,27,33,57,200,9,17,0,0],
- "Имперские грифоны": ['00440000000020040000000000000000000004000001C000',62,29,28,25,35,35,7,18,0,0],
- "Инквизиторы": ['00000000000000800008000000000000040000000001C000',121,26,26,29,32,80,6,12,14,7],
- "Искусительницы": ['00000020001000000000000000000002040000000001C000',65,26,26,26,33,26,6,11,0,6],
- "Ифриты": ['00040020000080840000000000000000000000000001C000',200,25,22,26,34,90,6,14,12,0],
- "Ифриты султаны": ['00040020000080840000400000000000000000000001C000',250,26,24,26,34,100,7,14,12,0],
- "Каменные горгульи": ['00000000000100040000000000000000000000000501C000',16,23,24,21,31,15,6,11,0,0],
- "Камнегрызы": ['00000000000004000001000000000000800000000101C000',67,29,27,26,30,55,6,11,0,0],
- "Камнееды": ['00000000000000000001000000000000000000000001C000',56,28,26,26,39,45,6,11,0,0],
- "Кентавры": ['00048000000000001000000000000000040000000001C000',13,23,21,22,34,6,6,13,0,8],
- "Князья вампиров": ['00000000000000000020010200000000004000000001C000',70,29,29,25,33,40,8,13,0,0],
- "Колоссы": ['00040000004000000000000000000000000000000001C000',350,27,27,40,70,175,6,12,0,0],
- "Кони преисподней": ['20040020000008000000000000000000000000000001C000',138,28,27,20,37,66,8,18,0,0],
- "Костоломы": ['00000000004000000000000000000000000000000001C000',27,26,26,22,36,20,6,14,0,0],
- "Костяные драконы": ['00040000000000040020000000000000000000000001C000',280,27,28,25,30,150,6,13,0,0],
- "Кочевые кентавры": ['00048000000000001000000000000000040000000001C000',20,24,22,23,36,9,6,12,0,8],
- "Кошмары": ['28040020000000000000000000000000000000000001C000',140,28,28,28,36,66,8,19,0,0],
- "Красные драконы": ['00040000000000040000800000000000000000000001C800',400,30,30,45,60,235,9,13,0,0],
- "Крестьяне": ['00000000000000000000000000000000000000000001C000',5,21,21,21,31,4,6,10,0,0],
- "Кристальные драконы": ['00040000000000040000000000000000000000000041C000',400,30,26,30,60,200,9,17,0,0],
- "Кровавые ящеры": ['00040000000000000000010000000000000000000001C000',30,23,23,28,30,35,7,16,0,0],
- "Кровоглазые циклопы": ['00048000000000000800000004000800000000001001C000',500,28,28,35,50,235,6,12,0,0],
- "Кшатрии ракшасы": ['00042000000000000100000000000000000000000001C000',162,27,20,25,35,135,7,10,0,0],
- "Лазутчики": ['00000000000000000008000000000000040000001001C000',20,23,23,22,34,10,6,12,0,5],
- "Латники": ['00020000400000000001000000000000000000000101C000',21,25,29,22,35,26,6,10,0,0],
- "Левиафаны": ['00040000040010000000000000000000000000000001C000',250,28,28,43,63,200,6,12,0,0],
- "Лепреконы": ['00000000000000000000000000000000000000000001C400',11,25,22,22,37,7,6,16,0,0],
- "Лесные снайперы": ['00000000000000000000000000000000060000010001C000',42,26,25,27,38,12,6,13,0,16],
- "Личи": ['00040000000000000020000000000004040000000001C000',87,25,25,22,37,50,6,12,0,5],
- "Ловчие": ['00000000000000000000000400000000000000000001E000',34,25,24,23,35,15,6,14,0,0 ],
- "Лучники": ['00000000000000000000000000000000050000000001C000',15,24,23,22,34,7,6,11,0,10],
- "Маги": ['00000000000000808000000000000000060000000001C000',63,20,20,27,37,18,6,12,18,3],
- "Магма драконы": ['00040000000080004000800000000000000000000401C000',329,30,40,40,50,280,6,11,0,0],
- "Магнитные големы": ['00000000800000002400000000000000000000000001C000',57,26,26,23,35,28,6,11,0,0],
- "Магоги": ['00000020000000000000000008000000040000000001C000',16,27,24,22,34,13,6,12,0,24],
- "Мастера копья": ['00000000000004000008000000000000040000000001C000',17,24,24,22,33,12,6,11,0,4],
- "Мастера лука": ['00000080000000000000020000000000040000000001C000',42,25,24,25,38,14,6,12,0,16],
- "Мегеры": ['00000200000040000000000000000000000020000001C000',49,25,24,24,36,24,8,17,0,0],
- "Медведи": ['00040000000000000000000000000000000010000101C000',22,28,26,23,35,22,6,12,0,0],
- "Метатели копья": ['00000000000004000000000000000000040000000001C000',11,24,24,21,32,10,6,11,0,2],
- "Минотавры": ['00000000000000000000000000000000000000004001C000',39,25,22,24,37,31,6,10,0,0],
- "Минотавры-стражи": ['00000040000000000000000000000000000000004001C000',56,25,22,24,37,35,6,10,0,0],
- "Минотавры-надсмотрщики": ['00800000000000000000000000000000000000000001C000',56,26,25,25,38,40,6,11,0,0],
- "Могильные големы": ['28040000000000000028000000000000240000000001C000',400,30,50,50,70,400,6,12,0,2],
- "Монахи": ['00000000000000000008000000000000040000000001C000',101,22,22,29,32,54,6,12,0,7],
- "Морские дьяволы": ['20040000000000000000000000000000000000000001C200',300,34,29,40,60,190,6,13,0,0],
- "Морские черти": ['00040000000000000000000000000008000000000001C000',120,23,23,21,39,90,6,11,0,0],
- "Мумии": ['00000000000001800020000000000000000000000001C000',115,28,29,20,30,50,6,18,38,0],
- "Мумии фараонов": ['00000000000001800020000000000000000000000001C000',135,20,20,25,35,70,6,19,54,0],
- "Мятежники": ['40000000000000000001000000000000000000000001C000',10,23,22,21,33,7,6,10,0,0],
- "Наги": ['00440200000000000000000000000000000000000001C000',160,25,25,30,30,110,6,12,0,0],
- "Наездники на волках": ['00040040000000000000000000000000000000000001C000',20,25,21,22,33,10,6,13,0,0],
- "Наездники на гиенах": ['00040000000000000000080000000000000000000001C000',31,28,24,24,35,13,6,13,0,0],
- "Наездники на кабанах": ['00040000080000000000000000000000000000000001C000',31,26,25,24,36,14,7,12,0,0],
- "Наездники на медведях": ['00040000000000000000000000000000000000000101C000',24,25,20,24,35,25,6,12,0,0],
- "Наездники на ящерах": ['00040000000000000000000000000000000002000001C000',65,29,27,27,32,40,6,13,0,0],
- "Налётчики на волках": ['00040000000000000000000000000000000800000001C000',31,27,23,22,33,12,6,13,0,0],
- "Нимфы": ['00000200000000040000000000000400000100000001C000',20,22,21,22,33,6,7,17,0,0],
- "Обсидиановые горгульи": ['00000000000190040000000000000000000000000501C000',26,23,25,21,32,20,7,12,0,0],
- "Огненные гончие": ['00000220000000000000800000000000000000800001C000',36,24,23,23,35,15,8,16,0,0],
- "Огненные демоны": ['00004020000000000000000000000000000000000101C000',23,23,24,22,33,13,6,10,0,0],
- "Огненные драконы": ['00040000000080000000C00000000000000000000401C000',255,25,35,40,50,230,6,11,0,0],
- "Огненные птицы": ['80040000000080040000000000000000000000000001C000',117,22,22,22,36,65,8,14,0,0],
- "Огненные элементали": ['00000000000080000000400000000000040000000401C000',60,20,25,21,30,43,6,10,0,50],
- "Огры": ['00000000000000000000004000000000000000000101C000',60,20,25,25,30,50,6,10,0,0],
- "Огры-ветераны": ['00000000000004000000004000000000000000000101C000',75,22,25,25,30,70,6,11,0,0],
- "Огры-маги": ['00000000000000800000004000000000000000000101C000',74,21,26,25,32,65,6,10,14,0],
- "Огры-шаманы": ['00000000000000800000004000000000000000000101C000',74,22,25,27,32,55,6,11,12,0],
- "Одноглазые пираты": ['00040000000000000000000000000000000000000001C300',190,23,25,28,39,120,6,11,0,0],
- "Ополченцы": ['00000000000000000001000000000000000000000001C000',7,21,21,21,32,6,6,10,0,0],
- "Орки": ['00000008000000000008000000000000040000000001C000',29,26,21,23,34,12,6,13,0,6],
- "Орки-вожди": ['00000008000000000008020000000000040000000001C000',38,29,24,24,36,18,6,13,0,8],
- "Орки-тираны": ['00000048000000000008000000000000040000000001C000',38,20,23,23,35,20,6,12,0,10],
- "Орки-шаманы": ['00000008000000800008000000000000040000000001C000',33,26,23,23,34,13,6,13,14,6],
- "Паладины": ['00041000000800000000000000002000000000000001C000',262,24,24,20,30,100,7,14,0,0],
- "Палачи": ['08008000000000200000000000000000000000004001C000',83,24,20,28,32,40,7,14,0,0],
- "Пауки": ['00000000000000000000000080000000000000000001C000',15,24,24,23,35,9,6,13,0,0],
- "Пехотинцы": ['00020000000000000001000000000000000000000101C000',17,24,28,22,34,16,6,10,0,0],
- "Пещерные владыки": ['00040020000000800000000000008000000000000001C000',195,22,21,23,31,120,6,10,24,0],
- "Пещерные гидры": ['00040200000000000000000000004000000000200101C000',115,25,25,29,34,125,6,10,0,0],
- "Пещерные демоны": ['00040020000000800000000000000000000000000001C000',157,21,21,23,36,110,6,10,12,0],
- "Пещерные отродья": ['00040020000000000000000000000000200080000001C000',165,27,23,23,31,140,6,11,0,0],
- "Привидения": ['00200000000000040020000000000000000000000001C000',26,24,24,23,37,8,6,12,0,0],
- "Призраки": ['00200000000000040020008000000000000000000001C000',27,24,24,24,36,19,6,12,0,0],
- "Призраки пираток": ['00200000000000040020010000000000000020000001C200',17,26,22,22,34,8,9,14,0,0],
- "Призрачные драконы": ['00040000000000040220000000000040000000000001C000',310,30,28,25,35,160,7,13,0,0],
- "Принцессы ракшас": ['00040200000000000000000000000000000000000001C000',155,25,20,25,33,120,6,11,0,0],
- "Проворные наездники": ['00040000000000000000000001000000000000040001C000',94,22,29,27,32,60,7,14,0,0],
- "Проклятые бегемоты": ['08040000020000000000000000000000000000000001C000',400,33,26,35,50,250,6,11,0,0],
- "Проклятые горгульи": ['00010000000004040000000000000000000000000401C000',25,23,27,23,37,35,7,16,0,0],
- "Птицы грома": ['00040000000000040000000010000000000008000001C000',115,20,20,21,35,65,9,14,0,0],
- "Птицы тьмы": ['00040000000000040000000002000000000000000001C000',120,26,20,21,35,60,8,18,0,0],
- "Раджи ракшас": ['00040200000000000100000000000000000000000001C000',160,25,20,23,30,140,6,10,0,0],
- "Рогатые демоны": ['00000020000000000000000000000000000000000101C000',14,21,23,21,32,13,6,10,0,0],
- "Рогатые жнецы": ['00000028000000800000000000000000000000000001C000',200,33,22,22,33,99,6,12,5,0],
- "Роки": ['00040000000000040000000010000000000000000001C000',104,26,28,21,35,55,8,14,0,0],
- "Рыцари": ['00040000000000000000000000002000000000000001C000',232,23,21,20,30,90,7,13,0,0],
- "Рыцари смерти": ['00040000000000000220000000000020000000000001C000',190,26,26,28,38,100,8,12,0,0],
- "Рыцари тьмы": ['00040000000000000220000000000000000000000001C000',160,23,23,25,35,90,7,12,0,0],
- "Светлые единороги": ['00040000000000000000040000000000000000000011C000',135,25,25,29,34,80,7,14,0,0],
- "Свирепые бегемоты": ['00040000020000000000000000000000000000100001C000',410,35,25,35,45,280,6,11,0,0],
- "Свободные циклопы": ['00048000000000000800000004000001000000001001C000',700,30,27,45,57,225,6,11,0,0],
- "Силачи": ['00000000000000000000000000000000000000000001C020',20,27,23,24,38,50,6,12,0,0],
- "Сирены": ['00000000004000800000000000000000000000000001C000',60,20,27,25,38,20,6,14,18,0],
- "Сирены-искусительницы": ['00000000004000800000000000000000000000000001C000',70,20,28,26,39,24,6,14,22,0],
- "Скелеты": ['00000000000000000020000000000000000000000001C000',6,21,22,21,31,4,6,12,0,0],
- "Скелеты-арбалетчики": ['00000000000000000020000000000000041000000001C000',12,22,23,21,33,6,6,10,0,10],
- "Скелеты-воины": ['00020000400000000021000000000000800000000001C000',10,22,26,21,33,5,6,12,0,0],
- "Скелеты-лучники": ['00000000000000000020000000000000040000000001C000',10,21,22,21,32,4,6,12,0,8],
- "Скелеты-моряки": ['00000000000000200020000000000000000000000101C200',6,23,21,21,32,4,6,13,0,0],
- "Стальные големы": ['00400000000400000400000000000000100000000001C000',54,26,26,25,37,24,6,10,0,0],
- "Старейшины рун": ['00000000200080800000000020000000040000000001C000',100,20,29,24,38,70,6,11,30,5],
- "Старшие гремлины": ['00000000000000000000000000800000040000000001C000',9,23,22,21,32,6,6,13,0,7],
- "Старшие демоны": ['00000020000000000000000000010000000000000101C000',20,23,21,21,34,13,6,11,0,0],
- "Старшие друиды": ['00000000000000800000000000000000040000000025C000',101,22,28,20,34,34,6,12,18,7],
- "Степные бойцы": ['00008000000000000000000000000000000000000901C000',23,26,24,24,36,12,6,13,0,0],
- "Степные воины": ['00008000000000000000000000000000000000000101C000',21,25,22,22,35,12,6,12,0,0],
- "Степные волки": ['40000000000000000000000000000000000000000001C000',20,25,23,23,35,25,6,17,0,0],
- "Степные гоблины": ['00008000000000000000000000400000000400000001C000',5,21,21,21,31,3,6,14,0,0],
- "Степные циклопы": ['00048000000000000000000004000000000000000001C000',390,29,27,40,52,220,6,11,0,0],
- "Стихийные горгульи": ['07000000000000040000000000000000000000000501C000',25,24,24,22,33,16,7,13,0,0],
- "Стрелки": ['00000000000000000000000000000000060000000001C000',16,25,24,22,38,8,6,10,0,10],
- "Стрелки-наёмники": ['00000000000000000000000000000000060000000101C000',15,25,22,22,35,8,6,13,0,12],
- "Суккубы": ['00000020000000000000002000000000040000000001C000',61,26,26,26,33,20,6,12,0,6],
- "Сумеречные ведьмы": ['00000000000000800000000000000000040000000001C000',157,28,28,27,34,80,6,12,13,4],
- "Сумеречные драконы": ['00040000000000040000800000000000000000000001C000',350,25,24,45,70,200,9,12,0,0],
- "Танцующие с ветром": ['00000000000000020000000000000000000000000001C000',33,26,26,24,36,14,7,18,0,0],
- "Танцующие с клинками": ['00000000000000000000000000000000000000000001C000',20,23,22,22,35,12,6,13,0,0],
- "Танцующие со смертью": ['00080000000000000000000000000000000000000001C000',33,24,23,23,35,12,6,18,0,0],
- "Таны": ['00040000000100000000000000000000004040000001C000',131,25,25,28,32,100,8,13,0,0],
- "Тёмные виверны": ['00040002000000040000000000004000000000000001C000',195,21,28,20,37,105,7,12,0,0],
- "Тёмные всадники": ['00040000000000000000000000000000000002040001C000',94,20,29,27,34,50,7,13,0,0],
- "Тёмные гидры": ['00040200000000000000000000000000000000200101D000',115,25,24,29,32,125,6,10,0,0],
- "Тёмные горгульи": ['00000008000000040000000000000000000000000401C080',21,22,21,24,37,30,6,13,0,0],
- "Титаны": ['00040000104000000008000000000000040000000001C000',400,30,30,40,70,190,6,12,0,5],
- "Титаны шторма": ['00040000004000000008000000080000040000000001C000',400,30,30,40,70,190,6,12,0,5],
- "Тролли": ['00060008000000000000000000000000000000000001C000',150,23,21,26,34,150,6,12,0,0],
- "Убийцы": ['00008000000000200000000000000000000000000001C000',70,21,28,27,30,34,6,13,0,0],
- "Умертвия": ['00040000000000000020000000000000000000000001C000',165,24,22,21,35,95,6,13,0,0],
- "Феи": ['00000200000000040000000000000000000100000001C000',12,21,21,21,32,5,7,14,0,0],
- "Фениксы": ['00040800000080040000400000000000000000000401C000',600,33,33,30,50,777,7,18,0,0],
- "Фурии": ['00000200000000000000000000000000000020000001C000',49,25,23,25,37,16,8,19,0,0],
- "Хобгоблины": ['00000000000000000000000000000000000000000001C000',9,24,23,22,32,4,6,12,0,0],
- "Хозяева медведей": ['00050000000000000000000000000000000010000101C000',36,26,24,25,36,30,7,13,0,0],
- "Хозяйки ночи": ['00000000000000800000000000000000000000400001E000',185,20,20,20,30,100,6,13,17,0],
- "Церберы": ['00000220000000000000000000000000000000800001C000',41,24,22,24,36,15,8,16,0,0],
- "Циклопы": ['00000000000000000000000000000000040000000001C000',172,20,25,28,36,85,6,12,0,6],
- "Циклопы-генералы": ['00000000000000000002000000000000040000000001C000',187,25,27,20,36,100,6,12,0,10],
- "Циклопы-короли": ['00000000000000000000100000000000040000000001C000',182,23,28,29,38,95,6,12,0,8],
- "Циклопы-шаманы": ['00000000000000800000000000000000040000000001C000',190,24,28,20,37,105,6,12,19,10],
- "Чародеи-наёмники": ['00000000000000800000000000000000040000000001C000',35,29,28,25,30,36,6,13,22,5],
- "Чемпионы": ['00040000000000000000000000002000000200000001C000',252,24,20,20,35,100,8,14,0,0],
- "Черные тролли": ['00060008000000000000000000000000800000000001C000',180,27,25,20,37,180,6,12,0,0],
- "Черти": ['00000020000000100000000000000000000000000001C000',10,23,22,22,33,6,6,16,0,0],
- "Чёрные драконы": ['00040000000000040080800000000000000000000001C000',400,30,30,45,70,240,9,12,0,0],
- "Чумные зомби": ['00000000000000000020080000000000000000000101C000',15,22,22,22,33,17,6,10,0,0],
- "Шаманки": ['00008000000000800000000000000000000000000001C000',66,25,25,26,39,30,6,13,10,0],
- "Штурмовые грифоны": ['00540100000020040000000000000000000000000001C000',62,27,22,26,32,52,7,12,0,0],
- "Эльфийские лучники": ['00000080000000000000000000000000040000000001C000',38,24,21,24,37,10,6,12,0,12],
- "Энты": ['00040000000000000000200000000000000000000101C000',187,29,27,27,37,175,6,10,0,0],
- "Ядовитые пауки": ['00000000000000000000000480000000000000000001C000',30,25,25,23,35,11,6,14,0,0]
- };
- var monstr_skills = {
- 0 : ["fireattack",ustring("Атака огнем")],
- 1 : ["packhunter",ustring("Атака стаей")],
- 2 : ["fearattack",ustring("Атака страхом")],
- 3 : ["auraofres",ustring("Аура магического сопротивления")],
- 4 : ["frightful_aura",ustring("Аура страха")],
- 5 : ["auraofwatervul",ustring("Аура уязвимости к воде")],
- 6 : ["auraofairvul",ustring("Аура уязвимости к воздуху")],
- 7 : ["auraoffirevul",ustring("Аура уязвимости к огню")],
- 8 : ["auraofbravery",ustring("Аура храбрости")],
- 9 : ["uretalation",ustring("Бесконечный отпор")],
- 10 : ["incorporeal",ustring("Бестелесное существо")],
- 11 : ["battlefrenzy",ustring("Боевые рефлексы")],
- 12 : ["dancecombo",ustring("Боевое па")],
- 13 : ["big",ustring("Большое существо")],
- 14 : ["lshield",ustring("Большой щит")],
- 15 : ["armoured",ustring("Броня")],
- 16 : ["ragingblood",ustring("Бурлящая кровь")],
- 17 : ["explosion",ustring("Взрыв")],
- 18 : ["whirlwind",ustring("Вихрь")],
- 19 : ["layhands",ustring("Возложение рук")],
- 20 : ["rebirth",ustring("Возрождение")],
- 21 : ["resurrection",ustring("Воскрешение")],
- 22 : ["noretalation",ustring("Враг не сопротивляется")],
- 23 : ["rushdave",ustring("Губительное пике")],
- 24 : ["doubleshoot",ustring("Двойной выстрел")],
- 25 : ["doublestrike",ustring("Двойной удар")],
- 26 : ["demonic",ustring("Демоническое существо")],
- 27 : ["spirit",ustring("Дух")],
- 28 : ["bloodlust",ustring("Жажда крови")],
- 29 : ["sacrificegoblin",ustring("Жертвоприношение гоблинами")],
- 30 : ["venom",ustring("Животный яд")],
- 31 : ["taunt",ustring("Задира")],
- 32 : ["enchantedarmor",ustring("Зачарованный доспех")],
- 33 : ["shieldother",ustring("Защита союзников")],
- 34 : ["markoffire",ustring("Знак огня")],
- 35 : ["calllightning",ustring("Зов молний")],
- 36 : ["ignoredefence20",ustring("Игнорирование защиты 20%")],
- 37 : ["ignoredefence30",ustring("Игнорирование защиты 30%")],
- 38 : ["ignoredefence40",ustring("Игнорирование защиты 40%")],
- 39 : ["ignoredefence50",ustring("Игнорирование защиты 50%")],
- 40 : ["ignoredefence60",ustring("Игнорирование защиты 60%")],
- 41 : ["imind",ustring("Иммунитет к влиянию на разум")],
- 42 : ["iair",ustring("Иммунитет к воздуху")],
- 43 : ["immunetohypnos",ustring("Иммунитет к гипнозам")],
- 44 : ["ifrenzy",ustring("Иммунитет к заклинанию Берсерк")],
- 45 : ["islow",ustring("Иммунитет к замедлению")],
- 46 : ["iearth",ustring("Иммунитет к магии земли")],
- 47 : ["ilighting",ustring("Иммунитет к молниям")],
- 48 : ["ifire",ustring("Иммунитет к огню")],
- 49 : ["immunetoweakness",ustring("Иммунитет к ослаблению")],
- 50 : ["iblind",ustring("Иммунитет к ослеплению")],
- 51 : ["icold",ustring("Иммунитет к холоду")],
- 52 : ["searingaura",ustring("Иссушающая аура")],
- 53 : ["cripplingwound",ustring("Калечащее ранение")],
- 54 : ["acid_breath",ustring("Кислотное дыхание")],
- 55 : ["hexingattack",ustring("Колдовской удар")],
- 56 : ["caster",ustring("Колдун")],
- 57 : ["wheeloffortune",ustring("Колесо удачи")],
- 58 : ["cleave",ustring("Колун")],
- 59 : ["manastealer",ustring("Крадущий ману")],
- 60 : ["stealammunition",ustring("Кража боеприпасов")],
- 61 : ["flyer",ustring("Летающее существо")],
- 62 : ["agility",ustring("Ловкость")],
- 63 : ["magicmine",ustring("Магическая ловушка")],
- 64 : ["magicattack",ustring("Магический выстрел")],
- 65 : ["magmashield",ustring("Магма щит")],
- 66 : ["magnetism",ustring("Магнетизм")],
- 67 : ["maneuver",ustring("Маневрирование")],
- 68 : ["goblinthrower",ustring("Метание гоблинов")],
- 69 : ["mechanical",ustring("Механизм")],
- 70 : ["cursingattack",ustring("Наложение проклятия")],
- 71 : ["dash",ustring("Натиск")],
- 72 : ["immunity",ustring("Невосприимчивость магии")],
- 73 : ["stormbolt",ustring("Нежданная буря")],
- 74 : ["undead",ustring("Нежить")],
- 75 : ["fireproof50",ustring("Непробиваемость огнем 50%")],
- 76 : ["nopenalty",ustring("Нет штрафов в ближнем бою")],
- 77 : ["holdground",ustring("Ни шагу назад")],
- 78 : ["shootbash",ustring("Оглушающий выстрел")],
- 79 : ["shieldbash",ustring("Оглушающий удар")],
- 80 : ["fire_breath",ustring("Огненное дыхание")],
- 81 : ["fireshield",ustring("Огненный щит")],
- 82 : ["entroots",ustring("Оплетающие корни")],
- 83 : ["siegewalls",ustring("Осада стен")],
- 84 : ["weakeningstrike",ustring("Ослабляющий удар")],
- 85 : ["blinding_attack",ustring("Ослепление")],
- 86 : ["wardingarrows",ustring("Останавливающий выстрел")],
- 87 : ["lifedrain",ustring("Осушение")],
- 88 : ["manadrain",ustring("Осушение маны")],
- 89 : ["powerstrike",ustring("Отбрасывающий удар")],
- 90 : ["rangedretaliation",ustring("Ответный выстрел")],
- 91 : ["siphonmana",ustring("Откачивание маны")],
- 92 : ["festeringaura",ustring("Отравляющая аура")],
- 93 : ["poisonattack",ustring("Отравляющий удар")],
- 94 : ["torpor",ustring("Оцепенение")],
- 95 : ["purge",ustring("Очищение")],
- 96 : ["spider",ustring("Паутина")],
- 97 : ["manafeed",ustring("Передача маны")],
- 98 : ["crossfire",ustring("Перекрестная атака")],
- 99 : ["carrier",ustring("Переносчик")],
- 100 : ["pyromancer",ustring("Пиромант")],
- 101 : ["swallowgoblin",ustring("Пожирание гоблинов")],
- 102 : ["darkattack",ustring("Покров тьмы")],
- 103 : ["wheelingattack",ustring("Попутная атака")],
- 104 : ["repair",ustring("Починка")],
- 105 : ["treachery",ustring("Предательство")],
- 106 : ["dampenmagic",ustring("Приглушение магии")],
- 107 : ["summonpitlords",ustring("Призыв пещерных владык")],
- 108 : ["stormcaller",ustring("Призывающий бурю")],
- 109 : ["orderofchief",ustring("Приказ вожака")],
- 110 : ["commandingpresence",ustring("Присутствие командира")],
- 111 : ["leap",ustring("Прыжок")],
- 112 : ["vorpalsword",ustring("Разящий меч")],
- 113 : ["regeneration",ustring("Регенерация")],
- 114 : ["jousting",ustring("Рыцарский разбег")],
- 115 : ["fierceretaliation",ustring("Свирепое возмездие")],
- 116 : ["evileye",ustring("Сглаз")],
- 117 : ["symbiosis",ustring("Симбиоз")],
- 118 : ["deathwail",ustring("Скорбный вопль")],
- 119 : ["randomcasterd",ustring("Случайное заклинание тьмы")],
- 120 : ["random_blessing",ustring("Случайное заклинание тьмы и света")],
- 121 : ["deathstare",ustring("Смертальный взгляд")],
- 122 : ["deathattack",ustring("Смертельная атака")],
- 123 : ["harmtouch",ustring("Смертельная хватка")],
- 124 : ["deathstrike",ustring("Смертельный удар")],
- 125 : ["deathcloud",ustring("Смертоносное облако")],
- 126 : ["seduction",ustring("Соблазнение")],
- 127 : ["crushblow",ustring("Сокрушающий удар")],
- 128 : ["magicproof25",ustring("Сопротивление магии 25%")],
- 129 : ["magicproof40",ustring("Сопротивление магии 40%")],
- 130 : ["magicproof50",ustring("Сопротивление магии 50%")],
- 131 : ["magicproof75",ustring("Сопротивление магии 75%")],
- 132 : ["shieldwall",ustring("Стена из щитов")],
- 133 : ["shooter",ustring("Стрелок")],
- 134 : ["norangepenalty",ustring("Стрельба без штрафов")],
- 135 : ["scattershot",ustring("Стрельба навесом")],
- 136 : ["swiftattack",ustring("Стремительная атака")],
- 137 : ["teleport",ustring("Телепортация")],
- 138 : ["teleportother",ustring("Телепортация других")],
- 139 : ["preciseshot",ustring("Точный выстрел")],
- 140 : ["triplestrike",ustring("Тройной удар")],
- 141 : ["cowardice",ustring("Трусость")],
- 142 : ["championcharge",ustring("Турнирный удар")],
- 143 : ["spray",ustring("Убийственные брызги")],
- 144 : ["bladeofslaughter",ustring("Убойный клинок")],
- 145 : ["stormstrike",ustring("Удар бури")],
- 146 : ["strikeandreturn",ustring("Удар и возврат")],
- 147 : ["pawstrike",ustring("Удар лапой")],
- 148 : ["lighting_attack",ustring("Удар молнией")],
- 149 : ["battledive",ustring("Удар с небес")],
- 150 : ["ridercharge",ustring("Удар с разбега")],
- 151 : ["sorrowstrike",ustring("Удар скорби")],
- 152 : ["threehead",ustring("Удар тремя головами")],
- 153 : ["whipstrike",ustring("Удар хлыстом")],
- 154 : ["six_heads",ustring("Удар шестью головами")],
- 155 : ["ferociouswound",ustring("Ужасная рана")],
- 156 : ["takeroots",ustring("Укоренение")],
- 157 : ["lizardbite",ustring("Укус ящера")],
- 158 : ["manadestroyer",ustring("Уничтожитель маны")],
- 159 : ["forcearrow",ustring("Усиленная стрела")],
- 160 : ["setsnares",ustring("Установка капканов")],
- 161 : ["bravery",ustring("Храбрость")],
- 162 : ["chainshot",ustring("Цепной выстрел")],
- 163 : ["rangepenalty",ustring("Штраф за стрельбу")],
- 164 : ["assault",ustring("Штурм")],
- 165 : ["elemental",ustring("Элементаль")],
- 166 : ["energychannel",ustring("Энергетический канал")],
- 167 : ["enraged",ustring("Ярость")],
- 168 : ["berserkerrage",ustring("Ярость берсерка")],
- 169 : ["prismaticbreath",ustring("Призменное дыхание")],
- 170 : ["undeadkiller",ustring("Уничтожитель нежити")],
- 171 : ["childofthelight",ustring("Дитя Света")],
- 172 : ["rageoftheforest",ustring("Ярость леса")],
- 173 : ["channeling",ustring("Канал")],
- 174 : ["harpoonstrike",ustring("Удар гарпуном")],
- 175 : ["organicarmor",ustring("Живая броня")],
- 176 : ["perseverance",ustring("Упорство")],
- 177 : ["magicproof80",ustring("Сопротивление магии 80%")],
- 178 : ["invisibility",ustring("Невидимость")],
- 179 : ["acidblood",ustring("Кислотная кровь")],
- 180 : ["incinerate",ustring("Сжигание")],
- 181 : ["conferluck",ustring("Дарующий удачу")],
- 182 : ["pirate",ustring("Пират")],
- 183 : ["mightyslam",ustring("Могучий удар")],
- 184 : ["shielded",ustring("Защита от стрел")],
- 185 : ["songtimes",ustring("Песнь времён")],
- 186 : ["petrifiedblood",ustring("Окаменевшая кровь")],
- 187 : ["rezerv-3",ustring("Резерв-3")],
- 188 : ["rezerv-4",ustring("Резерв-4")],
- 189 : ["rezerv-5",ustring("Резерв-5")],
- 190 : ["rezerv-6",ustring("Резерв-6")],
- 191 : ["rezerv-7",ustring("Резерв-7")]
- };
- //****************************************************
- /** Библиотека юникода
- *
- * Реализует функции работы с юникодом.
- * @file lib_unicode.js
- * @version 1.1.0
- * @author DrunkenStranger
- * @link http://userscripts.org/users/362572
- * @license GPL
- */
- function uchar(s) {
- switch (s[0]) {
- case "А": return "\u0410";
- case "Б": return "\u0411";
- case "В": return "\u0412";
- case "Г": return "\u0413";
- case "Д": return "\u0414";
- case "Е": return "\u0415";
- case "Ж": return "\u0416";
- case "З": return "\u0417";
- case "И": return "\u0418";
- case "Й": return "\u0419";
- case "К": return "\u041a";
- case "Л": return "\u041b";
- case "М": return "\u041c";
- case "Н": return "\u041d";
- case "О": return "\u041e";
- case "П": return "\u041f";
- case "Р": return "\u0420";
- case "С": return "\u0421";
- case "Т": return "\u0422";
- case "У": return "\u0423";
- case "Ф": return "\u0424";
- case "Х": return "\u0425";
- case "Ц": return "\u0426";
- case "Ч": return "\u0427";
- case "Ш": return "\u0428";
- case "Щ": return "\u0429";
- case "Ъ": return "\u042a";
- case "Ы": return "\u042b";
- case "Ь": return "\u042c";
- case "Э": return "\u042d";
- case "Ю": return "\u042e";
- case "Я": return "\u042f";
- case "а": return "\u0430";
- case "б": return "\u0431";
- case "в": return "\u0432";
- case "г": return "\u0433";
- case "д": return "\u0434";
- case "е": return "\u0435";
- case "ж": return "\u0436";
- case "з": return "\u0437";
- case "и": return "\u0438";
- case "й": return "\u0439";
- case "к": return "\u043a";
- case "л": return "\u043b";
- case "м": return "\u043c";
- case "н": return "\u043d";
- case "о": return "\u043e";
- case "п": return "\u043f";
- case "р": return "\u0440";
- case "с": return "\u0441";
- case "т": return "\u0442";
- case "у": return "\u0443";
- case "ф": return "\u0444";
- case "х": return "\u0445";
- case "ц": return "\u0446";
- case "ч": return "\u0447";
- case "ш": return "\u0448";
- case "щ": return "\u0449";
- case "ъ": return "\u044a";
- case "ы": return "\u044b";
- case "ь": return "\u044c";
- case "э": return "\u044d";
- case "ю": return "\u044e";
- case "я": return "\u044f";
- case "Ё": return "\u0401";
- case "ё": return "\u0451";
- default: return s[0];
- }
- }
-
- function ustring(s) {
- s = String(s);
- var result = "";
- for (var i = 0; i < s.length; i++) result += uchar(s[i]);
- return result;
- }
- //****************************************************
- function $uchar(s) {
- switch (s[0]) {
- case "\u0410": return "А";
- case "\u0411": return "Б";
- case "\u0412": return "В";
- case "\u0413": return "Г";
- case "\u0414": return "Д";
- case "\u0415": return "Е";
- case "\u0416": return "Ж";
- case "\u0417": return "З";
- case "\u0418": return "И";
- case "\u0419": return "Й";
- case "\u041a": return "К";
- case "\u041b": return "Л";
- case "\u041c": return "М";
- case "\u041d": return "Н";
- case "\u041e": return "О";
- case "\u041f": return "П";
- case "\u0420": return "Р";
- case "\u0421": return "С";
- case "\u0422": return "Т";
- case "\u0423": return "У";
- case "\u0424": return "Ф";
- case "\u0425": return "Х";
- case "\u0426": return "Ц";
- case "\u0427": return "Ч";
- case "\u0428": return "Ш";
- case "\u0429": return "Щ";
- case "\u042a": return "Ъ";
- case "\u042b": return "Ы";
- case "\u042c": return "Ь";
- case "\u042d": return "Э";
- case "\u042e": return "Ю";
- case "\u042f": return "Я";
- case "\u0430": return "а";
- case "\u0431": return "б";
- case "\u0432": return "в";
- case "\u0433": return "г";
- case "\u0434": return "д";
- case "\u0435": return "е";
- case "\u0436": return "ж";
- case "\u0437": return "з";
- case "\u0438": return "и";
- case "\u0439": return "й";
- case "\u043a": return "к";
- case "\u043b": return "л";
- case "\u043c": return "м";
- case "\u043d": return "н";
- case "\u043e": return "о";
- case "\u043f": return "п";
- case "\u0440": return "р";
- case "\u0441": return "с";
- case "\u0442": return "т";
- case "\u0443": return "у";
- case "\u0444": return "ф";
- case "\u0445": return "х";
- case "\u0446": return "ц";
- case "\u0447": return "ч";
- case "\u0448": return "ш";
- case "\u0449": return "щ";
- case "\u044a": return "ъ";
- case "\u044b": return "ы";
- case "\u044c": return "ь";
- case "\u044d": return "э";
- case "\u044e": return "ю";
- case "\u044f": return "я";
- case "\u0401": return "Ё";
- case "\u0451": return "ё";
- default: return s[0];
- }
- }
- function $ustring(s) {
- s = String(s);
- var result = "";
- for (var i = 0; i < s.length; i++) result += $uchar(s[i]);
- return result;
- }
- //************ Начало фрагментов кода от (C) Demin с моими вставками и комментариями **********************************
- function show_settings() {
- if (url_cur.indexOf('mercenary_guild') == -1) return;
- var x1 = document.querySelector("td > img[src*='gn_face.png']");
- if (x1 == null) return;
- var d = document.createElement('div');
- d.setAttribute('style', 'position: absolute; margin: 3px 0px 0px 155px; text-align: center;'); //Положение кнопки, для вызова настроек
- d.innerHTML = '<style> .hwm_gn * {font-size: 12px; color: #FFFF00;} .cell_gn {white-space: nowrap; height: 18px; background: #4190FF; font-weight: bold;} </style>' +
- '<table class="hwm_gn" width=76px> <tr height=20>' + // Размер кнопки и фон, для вызова настроек
- '<td class="cell_gn" style="cursor:pointer" id="set_gn"><font style="font-size:11px;">'+str_settings+'</font></td>' +
- '</tr> </table>';
- x1 = x1.parentNode.parentNode.parentNode;
- x1.insertBefore(d,x1.firstChild); //Вставка куска
- addEvent( $("set_gn"), "click", settings_gn ); //Привязка к куску на клик вызов функции
- var ems = document.querySelectorAll("li > a[href*='auction.php']"); //Когда научусь кнопку на второй план ставить,
- ems[0].innerHTML = ustring('       Рынок'); //тогда убрать эти 2 строки
- //************
- function settings_gn_close()
- {
- var bg = $('bgOverlay');
- var bgc = $('bgCenter');
- bg.parentNode.removeChild(bg);
- bgc.parentNode.removeChild(bgc);
- }
- function settings_gn()
- {
- var bg = $('bgOverlay');
- var bgc = $('bgCenter');
- var bg_height = ScrollHeight();
- if ( !bg )
- {
- bg = document.createElement('div');
- document.body.appendChild( bg );
- bgc = document.createElement('div');
- document.body.appendChild( bgc );
- }
- bg.id = 'bgOverlay';
- bg.style.position = 'absolute';
- bg.style.left = '0px';
- bg.style.width = '100%';
- bg.style.background = "#000000";
- bg.style.opacity = "0.5";
- bg.style.zIndex = "7";
- bgc.id = 'bgCenter';
- bgc.style.position = 'absolute';
- bgc.style.left = ( ( ClientWidth() - 580 ) / 2 ) + 'px';
- bgc.style.width = '580px';
- bgc.style.background = "#F6F3EA";
- bgc.style.zIndex = "8";
- addEvent(bg, "click", settings_gn_close);
- //форма и внешний вид окно настроек
- bgc.innerHTML = '<div style="border:1px solid #abc;padding:5px;margin:2px;"><div style="float:right;border:1px solid #abc;width:15px;height:15px;text-align:center;cursor:pointer;" id="bt_close_tr" title="Close">x</div><table>'+
- //заголовок окна настроек
- '<tr><td colspan=3><b>'+str_start+'<font style="color:#0070FF;">'+version+'</font></b><hr/></td></tr>' +
- //Опыт в протоколе боев
- '<tr><td colspan=3><label>'+str_show+' : <input type=checkbox '+(show_exp_on_warlog=="1"?"checked":"")+' id=set_show_exp title=""></label><br><br></td></tr>'+
- //коэфициент перекача
- '<tr><td colspan=3>'+str_koef_0+'<font style="color:#0070FF;"><b id=k_p>'+Number(koef).toFixed(4) +'</b></font>'+str_koef_2+'<br></td></tr>' +
- '<tr><td colspan=3>'+str_koef_1+' <input id="set_koef" value="'+ Number(koef).toFixed(4) +
- '" size="4" maxlength="6"> <input type="submit" id="set_koef_ok" value="OK"><br><hr/></td></tr>'+
- //Предупреждение
- '<tr><td colspan=3><font size="1" color="red">'+str_warning1+'</font><a href="'+str_url_prav+'"><font size="1" color="red">'+str_warning2+'</font></a><br></td></tr>'+
- //заголовки столбцов
- '<tr><td>'+str_skip00+'<br></td><td width="30%" align="center">'+str_skip01+'</td><td width="30%" align="center">'+str_skip02+'</td></tr>'+
- //армии
- '<tr><td>'+'<label><input type=checkbox '+(skip_army =="1"?"checked":"")+' id=set_skip_army title="">'+str_skip1+'</label><br></td><td width="30%" align="center"><font style="color:#0070FF;"><b id=lvl_army>'+level_army+'</b>  '+
- '<input class=MN id="set_level_army" value="'+level_army+'" size="1" maxlength="2" ><input type="submit" id="set_level_army_ok" value="OK"></font></td><td width="30%"></td></tr>'+
- //набеги
- '<tr><td>'+'<label><input type=checkbox '+(skip_raids =="1"?"checked":"")+' id=set_skip_raids title="">'+str_skip2+'</label><br></td><td width="30%" align="center"><font style="color:#0070FF;"><b id=lvl_raids>'+level_raids+'</b>  '+
- '<input id="set_level_raids" value="'+level_raids+'" size="1" maxlength="2"><input type="submit" id="set_level_raids_ok" value="OK"></font></td><td width="30%"></td></tr>'+
- //монстры
- '<tr><td>'+'<label><input type=checkbox '+(skip_monstr=="1"?"checked":"")+' id=set_skip_monstr title="">'+str_skip3+'</label><br></td><td width="30%" align="center"><font style="color:#0070FF;"><b id=lvl_monstr>'+level_monstr+'</b>  </font>'+
- '<input id="set_level_monstr" value="'+level_monstr+'" size="1" maxlength="2"><input type="submit" id="set_level_monstr_ok" value="OK"></td>'+
- '<td width="30%" align="center" title="'+str_title_3+'"><font style="color:#0070FF;"><b id=lim_exp_monstr>'+limit_exp_monstr+'</b>  </font>'+
- '<input id="set_limit_exp_monstr" value="'+limit_exp_monstr+'" size="3" maxlength="4"><input type="submit" id="set_limit_exp_monstr_ok" value="OK"></td></tr>'+
- //заговорщики
- '<tr><td>'+'<label><input type=checkbox '+(skip_conspir=="1"?"checked":"")+' id=set_skip_conspir title="">'+str_skip4+'</label><br></td><td width="30%" align="center"><font style="color:#0070FF;"><b id=lvl_conspir>'+level_conspir+'</b>  '+
- '<input id="set_level_conspir" value="'+level_conspir+'" size="1" maxlength="2"><input type="submit" id="set_level_conspir_ok" value="OK"></font></td><td width="30%"></td></tr>'+
- //захватчики
- '<tr><td>'+'<label><input type=checkbox '+(skip_invader=="1"?"checked":"")+' id=set_skip_invader title="">'+str_skip5+'</label><br></td><td width="30%" align="center"><font style="color:#0070FF;"><b id=lvl_invader>'+level_invader+'</b>  '+
- '<input id="set_level_invader" value="'+level_invader+'" size="1" maxlength="2"><input type="submit" id="set_level_invader_ok" value="OK"></font></td><td width="30%"></td></tr>'+
- //отряды
- '<tr><td>'+'<label><input type=checkbox '+(skip_otryad=="1"?"checked":"")+' id=set_skip_otryad title="">'+str_skip6+'</label><br></td><td width="30%" align="center"><font style="color:#0070FF;"><b id=lvl_otryad>'+level_otryad+'</b>  '+
- '<input id="set_level_otryad" value="'+level_otryad+'" size="1" maxlength="2"><input type="submit" id="set_level_otryad_ok" value="OK"></font></td><td width="30%"></td></tr>'+
- //разбойники(охрана каравана)
- '<tr><td>'+'<label><input type=checkbox '+(skip_convoy=="1"?"checked":"")+' id=set_skip_convoy title="">'+str_skip7+'</label><br></td><td width="30%" align="center"><font style="color:#0070FF;"><b id=lvl_convoy>'+level_convoy+'</b>  '+
- '<input id="set_level_convoy" value="'+level_convoy+'" size="1" maxlength="2"><input type="submit" id="set_level_convoy_ok" value="OK"></font></td><td width="30%"></td></tr>'+
- //ссылка на сайт скрипта
- '<tr><td><a href="'+str_url+'">'+str_update+'</a></td><td colspan=2 align="right"><a href="'+str_url_aut+'">'+str_autor+'</a></td></tr></table>'; //концовка
- //назначение вызова функция при событиях кнопок и чекбоксов
- addEvent($("bt_close_tr"), "click", settings_gn_close); //крестик в углу
- addEvent($("set_skip_army"), "click", change_skip_army); //чек-бокс
- addEvent($("set_skip_raids"), "click", change_skip_raids); //чек-бокс
- addEvent($("set_skip_monstr"), "click", change_skip_monstr); //чек-бокс
- addEvent($("set_skip_conspir"), "click", change_skip_conspir); //чек-бокс
- addEvent($("set_skip_invader"), "click", change_skip_invader); //чек-бокс
- addEvent($("set_skip_otryad"), "click", change_skip_otryad); //чек-бокс
- addEvent($("set_skip_convoy"), "click", change_skip_convoy); //чек-бокс
- addEvent($("set_show_exp"), "click", change_show_exp); //чек-бокс
- addEvent($("set_koef_ok"), "click", change_koef); //поле ввода
- addEvent($("set_level_army_ok"), "click", change_level_army); //поле ввода
- addEvent($("set_level_raids_ok"), "click", change_level_raids); //поле ввода
- addEvent($("set_level_monstr_ok"), "click", change_level_monstr); //поле ввода
- addEvent($("set_level_conspir_ok"), "click", change_level_conspir); //поле ввода
- addEvent($("set_level_invader_ok"), "click", change_level_invader); //поле ввода
- addEvent($("set_level_otryad_ok"), "click", change_level_otryad); //поле ввода
- addEvent($("set_level_convoy_ok"), "click", change_level_convoy); //поле ввода
- addEvent($("set_limit_exp_monstr_ok"), "click", change_limit_exp_monstr);//поле ввода
-
- bg.style.top = '0px';
- bg.style.height = bg_height + 'px';
- bgc.style.top = ( window.pageYOffset + 155 ) + 'px';
- bg.style.display = '';
- bgc.style.display = '';
- }
- //********* обработчики полей ввода *******
- function change_koef()
- {
- if ( Number( $("set_koef").value ) >= 1 ) koef = $("set_koef").value; else koef = Number(1.0);
- document.getElementById('k_p').innerHTML = Number(koef).toFixed(4);
- GM_setValue("hwm_koef_dop_exp", koef);
- }
- function change_level_army()
- {
- if ( Number( $("set_level_army").value ) >= 0 ) level_army = Number($("set_level_army").value).toFixed(0); else level_army = 0;
- document.getElementById('lvl_army').innerHTML = Number(level_army).toFixed(0);
- GM_setValue("hwm_level_army", level_army);
- }
- function change_level_raids()
- {
- if ( Number( $("set_level_raids").value ) >= 0 ) level_raids = Number($("set_level_raids").value).toFixed(0); else level_raids = 0;
- document.getElementById('lvl_raids').innerHTML = Number(level_raids).toFixed(0);
- GM_setValue("hwm_level_raids", level_raids);
- }
- function change_level_monstr()
- {
- if ( Number( $("set_level_monstr").value ) >= 0 ) level_monstr = Number($("set_level_monstr").value).toFixed(0); else level_monstr = 0;
- document.getElementById('lvl_monstr').innerHTML = Number(level_monstr).toFixed(0);
- GM_setValue("hwm_level_monstr", level_monstr);
- }
- function change_level_conspir()
- {
- if ( Number( $("set_level_conspir").value ) >= 0 ) level_conspir = Number($("set_level_conspir").value).toFixed(0); else level_conspir = 0;
- document.getElementById('lvl_conspir').innerHTML = Number(level_conspir).toFixed(0);
- GM_setValue("hwm_level_conspir", level_conspir);
- }
- function change_level_invader()
- {
- if ( Number( $("set_level_invader").value ) >= 0 ) level_invader = Number($("set_level_invader").value).toFixed(0); else level_invader = 0;
- document.getElementById('lvl_invader').innerHTML = Number(level_invader).toFixed(0);
- GM_setValue("hwm_level_invader", level_invader);
- }
- function change_level_otryad()
- {
- if ( Number( $("set_level_otryad").value ) >= 0 ) level_otryad = Number($("set_level_otryad").value).toFixed(0); else level_otryad = 0;
- document.getElementById('lvl_otryad').innerHTML = Number(level_otryad).toFixed(0);
- GM_setValue("hwm_level_otryad", level_otryad);
- }
- function change_level_convoy()
- {
- if ( Number( $("set_level_convoy").value ) >= 0 ) level_convoy = Number($("set_level_convoy").value).toFixed(0); else level_convoy = 0;
- document.getElementById('lvl_convoy').innerHTML = Number(level_convoy).toFixed(0);
- GM_setValue("hwm_level_convoy", level_convoy);
- }
- function change_limit_exp_monstr()
- {
- if ( Number( $("set_limit_exp_monstr").value ) >= 0 ) limit_exp_monstr = Number($("set_limit_exp_monstr").value).toFixed(0); else limit_exp_monstr = 0;
- document.getElementById('lim_exp_monstr').innerHTML = Number(limit_exp_monstr).toFixed(0);
- GM_setValue("hwm_limit_exp_monstr", limit_exp_monstr);
- }
- //*********** обработчики чек-боксов *****
- function change_show_exp() {GM_setValue("hwm_show_exp_on_warlog", show_exp_on_warlog = !show_exp_on_warlog);}
- function change_skip_army() {GM_setValue("hwm_skip_army", skip_army = !skip_army);}
- function change_skip_raids() {GM_setValue("hwm_skip_raids", skip_raids = !skip_raids);}
- function change_skip_monstr() {GM_setValue("hwm_skip_monstr", skip_monstr = !skip_monstr);}
- function change_skip_conspir() {GM_setValue("hwm_skip_conspir", skip_conspir = !skip_conspir);}
- function change_skip_invader() {GM_setValue("hwm_skip_invader", skip_invader = !skip_invader);}
- function change_skip_otryad() {GM_setValue("hwm_skip_otryad", skip_otryad = !skip_otryad);}
- function change_skip_convoy() {GM_setValue("hwm_skip_convoy", skip_convoy = !skip_convoy);}
- //********** непонятно что, взято 1:1 у Demin ******
- function $(id) { return document.querySelector("#"+id); }
- function addEvent(elem, evType, fn) {
- if (elem.addEventListener) elem.addEventListener(evType, fn, false);
- else if (elem.attachEvent) elem.attachEvent("on" + evType, fn);
- else elem["on" + evType] = fn;
- }
- //function ClientHeight() {return document.compatMode=='CSS1Compat' && document.documentElement?document.documentElement.clientHeight:document.body.clientHeight;} //Не использую
- function ClientWidth() {return document.compatMode=='CSS1Compat' && document.documentElement?document.documentElement.clientWidth:document.body.clientWidth;}
- function ScrollHeight() {return Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);}
- }
- //************ Конец фрагментов кода от (C) Demin **********************************
-
- //*************** Извлечение умений ********************************
- function get_skills(str_sk) {
- var hex2bin = {
- 0: "0000",
- 1: "0001",
- 2: "0010",
- 3: "0011",
- 4: "0100",
- 5: "0101",
- 6: "0110",
- 7: "0111",
- 8: "1000",
- 9: "1001",
- A: "1010",
- B: "1011",
- C: "1100",
- D: "1101",
- E: "1110",
- F: "1111"
- };
- var sk_arr = new Array(2);
- var str_full_skills = str_skills;
- var i, pos = 0, n = 0;
- var bit_str_sk = "";
-
- for (i=0; i<str_sk.length;i++) bit_str_sk +=hex2bin[str_sk[i]];
- while (bit_str_sk.indexOf("1",pos) != -1) {
- pos = bit_str_sk.indexOf("1",pos);
- sk_arr = monstr_skills[pos];
- if (n>0) str_full_skills +=', ';
- str_full_skills += '<a href="' + str_url_hlp + sk_arr[0] + '"><font size="1">'+sk_arr[1]+'</font></a>';
- pos++;
- n++;
- }
- return str_full_skills;
- }
- //*************** Расчет опыта будет только здесь ********************************
- function get_exp(go_exp, go_hp, level) {
- var expiriens = new Array(2);
- var n375, monstr_0_exp, mostr_0_hp, Kexp;
-
- mostr_0_hp = (go_hp<50) ? ((go_hp % 10) + 50) * 36 : go_hp * 36; //кол-во HP монстра 0-уровня
- Kexp = Math.round(mostr_0_hp / go_hp / 5 + 1); //Множитель опыта монстра 0-уровня
- monstr_0_exp = go_exp * Kexp; //кол-во Exp монстра 0-уровня
- n375 = Math.floor((level*2+1)/5); //кол-во уровней где добавляют 0.375*HP, а не 0.5*HP
- expiriens[0] = Math.round(monstr_0_exp / 10 * koef * new_exp_koef * (+level + 2)); //кол-во опыта непонятной зависимости
- if (go_hp<=6) expiriens[1] = Math.round(monstr_0_exp / 10 * koef * new_exp_koef * (+level + 2 - n375*2/Kexp));//кол-во опыта если HP<=6
- else expiriens[1] = Math.round(monstr_0_exp / 10 * koef * new_exp_koef * (+level + 2 - n375/4 )); //кол-во опыта HP>=50
- return expiriens;
- // для HP==45 : Каждый 2 и 5 (из 5) уровень ExpM += ExpGO, остальные ExpM += 4/5 * ExpGO;
- // для HP>=50 : Каждый 2 и 5 (из 5) уровень ExpM += 3/4*ExpGO, остальные ExpM += ExpGO; ?
- }
- //****************************************************
- function show_param_monstr(n_zad,level,name_monstr) {
- var elem, elem0, param_0_monster, str_man, str_skills;
- var pos, base_ini, ini_monstr, base_mana, mana_monstr, hp_monstr; //числовые переменные
- var expir = new Array(2);
- var add_str ='';
- var ins_br = document.createElement('br');
- if (n_zad == 0) {
- var ins_data = document.createElement('td');
- var ins_end = '<BR><BR id=end_first_monstr>';
- ins_data.setAttribute('width','240');
- ins_data.setAttribute('style','vertical-align: top');
- } else {
- var ins_data = document.createElement('div');
- var ins_end = '';
- }
-
- for (var k = 0; k < all_tables.length; k++) {
- if (all_tables[k].className == "wbwhite") {
- elem0 = all_tables[k].childNodes[0].childNodes[0];
- // ******************** Начали ********************
- // ******************** проверка наличия данных по монстру ********************
- if (monstr_rus_data[$ustring(name_monstr)] == null) { //Если такого монстра в базе нет - сообщить юзеру
- ins_data.innerHTML = '<font style="font-size:11px;">'+name_monstr+key_monstr+'{'+level+'}</font>'+
- '<br><font style="color:#FF2020;"><b>'+str_no_found+'</b></font>';
- elem0.appendChild(ins_data);
- break;
- }
- param_0_monster = monstr_rus_data[$ustring(name_monstr)]; //считывает параметры монстра 0 уровня
- // ******************** Извлечение умений ********************
- str_skills = get_skills(param_0_monster[0]);
- // ******************** Расчет опыта ********************
- if (param_0_monster[1] == '1') { //Если данные на монстра не заполнены - сообщить юзеру
- add_str = str_pusto;
- } else {
- expir = get_exp (param_0_monster[1],param_0_monster[6],level);
- if ((param_0_monster[6] >= 50) || (param_0_monster[6] <= 6) || (level == 0))
- add_str += expir[1]; //Альтернативная понятная прогрессия опыта
- else add_str += Math.round(expir[1]*0.95)+'...'+expir[0]; //Линейная непонятная прогрессия опыта
- }
- // ******************** расчет HP ********************
- hp_monstr = param_0_monster[6];
- if (hp_monstr<50) hp_monstr = (hp_monstr % 10) + 50;
- hp_monstr *= 36 * (level / 2 + 1);
- // ******************** расчет инициативы ********************
- base_ini = Math.round(param_0_monster[8]*5/6); //Базовая ини для масштабирования (монстры>0ур)
- if (level > 1) ini_monstr = base_ini*3/2; //Для монстров{2+} ини на 50% больше базовой
- else if (level) ini_monstr = base_ini + Math.round(base_ini*2/5)*level; //Для монстров{1} ини на 40% больше базовой
- else ini_monstr = param_0_monster[8]; //Для монстров{0} ини на 25% больше базовой
- // ******************** расчет маны/кастов ********************
- if (param_0_monster[9] < 0) { //Для джинов будет писать кол-во кастов
- mana_monstr = (param_0_monster[9] == -1) ? 4+Math.floor(level*3/5) : 3; //Для визирей 3, для остальных по формуле
- str_man = str_mana2;
- } else { //Для колдунов будет писать кол-во маны
- base_mana = Math.round(param_0_monster[9]*5/6); //Базовая мана для масштабирования
- mana_monstr = Math.round(base_mana*(+level+6)/5); //Расчет маны для текущего уровня монстра
- str_man = str_mana1;
- }
- // ********** Вставляем данные на страницу ***********************
- ins_data.innerHTML = '<tr><font style="font-size:11px;"><center><b>'+name_monstr+key_monstr+'</b>{'+level+'}</center></font>'+
- '<font style="font-size:12px;" face="Courier new">'+
- ' <font style="color:#0070FF;">'+str_exp+'</font> <font style="color:#FF2020;"><b>' +add_str+'</b></font>'+
- '<br><font style="color:#0070FF;">'+str_atk+'</font> <font style="color:#FF2020;">' +(param_0_monster[2]+level*7)+'</font>'+
- '<br><font style="color:#0070FF;">'+str_def+'</font> <font style="color:#FF2020;">' +(param_0_monster[3]+level*7)+'</font>'+
- '<br><font style="color:#0070FF;">'+str_dam+'</font> <font style="color:#FF2020;">' +(param_0_monster[4]+level*12)+'-'+(param_0_monster[5]+level*16)+'</font>'+
- '<br><font style="color:#0070FF;">'+str_hp +'</font> <font style="color:#FF2020;"><b>' +hp_monstr+'</b></font>'+
- '<br><font style="color:#0070FF;">'+str_spd+'</font> <font style="color:#FF2020;">' +(param_0_monster[7]+Math.ceil(level/4))+'</font>'+
- '<br><font style="color:#0070FF;">'+str_ini+'</font> <font style="color:#FF2020;">' +ini_monstr+'</font>'+
- '<br><font style="color:#0070FF;">'+str_vys+'</font> <font style="color:#FF2020;">' +param_0_monster[10]+'</font>'+
- '<br><font style="color:#0070FF;">'+str_man+'</font> <font style="color:#FF2020;">' +mana_monstr+'</font>'+
- '<br><font style="color:#0070FF;">'+str_skills+'</font>'+
- '</font>'+ins_end+
- '</tr>';
- // ********** Если монстров в место справа от задания ***********************'
- if (n_zad == 0) {
- // elem0.appendChild(ins_data); //Первого монстра ставим сверху
- elem0.appendChild(ins_data); //Первого монстра ставим сверху
- need_move_up = true;
- } else {
- if (document.getElementById('end_first_monstr') == null) {
- var shift_down = document.createElement('td');
- shift_down.setAttribute('width','240');
- shift_down.innerHTML = '<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR id=end_first_monstr>';
- elem0.appendChild(shift_down); //Если первое задание не монстр, то вставляем на его место пустые строки
- need_move_up = true;
- }
- elem0 = document.getElementById('end_first_monstr').parentNode;
- elem0.appendChild(ins_data); //Второго монстра ставим снизу
- }
- // *********** Двигаем разделитель ниже, чтобы описание монстров не налазило на чужое задание
- var ems = document.querySelector("hr[width*='90']"); //сдвинем разделитель вниз немного
- ems.parentNode.insertBefore(ins_br,ems);
- }
- }
- }
- // ********** Сползшую кнопку отказа двигаем наверх ***********************
- function cancel_up() {
- var ems = document.querySelector("a[href*='action=skip']");
- var elem = ems.parentNode.parentNode.parentNode.parentNode.children[0].children[0];
- var elem0 = ems.parentNode.parentNode.removeChild(ems.parentNode);
- elem.appendChild(elem0);
- elem.parentNode.parentNode.children[1].removeChild(elem.parentNode.parentNode.children[1].children[0]);
- }
- //****************************************************
- function warlog() {
- var ems, elem, elem0, name_monstr, str_info, param_0_monster;
- var expir = new Array(2);
- var pos, level, i;
- var ins_data;
-
- elem0 = document.getElementsByTagName('body');
- elem0 = elem0[0].children[1].children[1].children[0].children[0].children[0];
- if (elem0.children[3].tagName == 'TABLE') { //Работает скрипт hwm_WarLog_2_Table
- elem0 = elem0.children[3].children[0];
- for (i =2; i < elem0.children.length; i++) {
- elem = elem0.children[i].children[1].children[1];
- str_info = elem.childNodes[0].data;
- if (str_info == null) continue;
-
- pos = str_info.lastIndexOf(key_monstr); //Проверка на монстра
- if (pos == -1) continue;
-
- level = str_info.substring(str_info.indexOf("{")+1,str_info.indexOf("}")); //Получили уровень монстра
- name_monstr = str_info.substring(0,pos); //Получили имя монстра
- if (monstr_rus_data[$ustring(name_monstr)] == null) continue; //Если такого монстра нет, то пропускаем
-
- param_0_monster = monstr_rus_data[$ustring(name_monstr)]; //считывает параметры монстра 0 уровня
- expir = get_exp (param_0_monster[1],param_0_monster[6],level);
-
- ins_data = document.createElement('b'); //создаем и заполняем элемент для вставки.
- if ((param_0_monster[6] >= 50) || (param_0_monster[6] <= 6) || (level == 0)) { //Линейная непонятная прогрессия опыта
- ins_data.innerHTML = ' Exp: <font style="color:#FF2020;">' + expir[1];
- } else { //Альтернативная понятная прогрессия опыта
- ins_data.innerHTML = ' Exp: <font style="color:#FF2020;">' + Math.round(expir[1]*0.95)+'...'+expir[0];
- }
- elem.parentNode.appendChild(ins_data); //вставляем элемент.
- }
- } else { //Не стоит или не работает скрипт hwm_WarLog_2_Table
- ems = elem0.querySelectorAll("td > i");
- if (ems.length == 0) return;
- for (i =0; i < ems.length; i++) {
- str_info = ems[i].childNodes[0].data;
- if (str_info == null) continue;
-
- pos = str_info.lastIndexOf(key_monstr); //Проверка на монстра
- if (pos == -1) continue;
-
- level = str_info.substring(str_info.indexOf("{")+1,str_info.indexOf("}")); //Получили уровень монстра
- name_monstr = str_info.substring(0,pos); //Получили имя монстра
- if (monstr_rus_data[$ustring(name_monstr)] == null) continue; //Если такого монстра нет, то пропускаем
-
- param_0_monster = monstr_rus_data[$ustring(name_monstr)]; //считывает параметры монстра 0 уровня
- expir = get_exp (param_0_monster[1],param_0_monster[6],level);
-
- ins_data = document.createElement('b'); //создаем и заполняем элемент для вставки.
- if ((param_0_monster[6] >= 50) || (param_0_monster[6] <= 6) || (level == 0)) { //Линейная непонятная прогрессия опыта
- ins_data.innerHTML = ' Exp: <font style="color:#2020FF;">' + expir[1];
- } else { //Альтернативная понятная прогрессия опыта
- ins_data.innerHTML = ' Exp: <font style="color:#2020FF;">' + Math.round(expir[1]*0.95)+'...'+expir[0];
- }
- ems[i].appendChild(ins_data); //вставляем элемент.
- }
- }
- }
- //****************************************************
- function rutina_1(t_gn,N,el_s,elem,ch,level,skip) {
- var s = document.createElement('div');
- t_gn[0] = N;
- t_gn[1] = el_s.substring(el_s.indexOf("{")+1,el_s.indexOf("}"));
- if (t_gn[1] >= +level && skip) {elem.childNodes[ch].innerHTML ='<font style="color:#FF0000">'+el_s+'</font>'};
- if (N == 7) {
- s.innerHTML = '<B><font style="color:#FF0000">'+str_warning3+'</font></B><br><br>'; //если сопровождение каравана, то предупредим об аммуниции
- elem.insertBefore(s,elem.childNodes[ch-1]);
- }
- return t_gn;
- }
- //****************************************************
- function get_type_gn() {
- var pos, el, name, elem0; //0-Нет, 1-армии, 2-набеги, 3-монстры, 4-заговорщики, 5-захватчики, 6-отряд, 7-разбойники.
- var type_gn = new Array([0,0,'',0],[0,0,'',0]);
- var cur = 0;
- for (var k = 0; k < all_tables.length; k++) {
- if (all_tables[k].className == "wbwhite") {
- elem0 = all_tables[k].childNodes[0].childNodes[0].childNodes[1];
- for (var i =0; i < elem0.childNodes.length; i++) {
- if (elem0.childNodes[i].tagName != "B") {
- el = elem0.childNodes[i].data;
- if (el == null) continue;
- } else el = elem0.childNodes[i].childNodes[0].data; //поиск текстовых полей
- pos = el.indexOf(key_convoy); if (pos != -1) {type_gn[cur] = rutina_1(type_gn[cur++],7,el,elem0,i++,level_convoy,skip_convoy); continue;}
- pos = el.indexOf(key_otryad); if (pos != -1) {type_gn[cur] = rutina_1(type_gn[cur++],6,el,elem0,i,level_otryad,skip_otryad); continue;}
- pos = el.indexOf(key_invader); if (pos != -1) {type_gn[cur] = rutina_1(type_gn[cur++],5,el,elem0,i,level_invader,skip_invader); continue;}
- pos = el.indexOf(key_conspir); if (pos != -1) {type_gn[cur] = rutina_1(type_gn[cur++],4,el,elem0,i,level_conspir,skip_conspir); continue;}
- pos = el.indexOf(key_raids); if (pos != -1) {type_gn[cur] = rutina_1(type_gn[cur++],2,el,elem0,i,level_raids,skip_raids); continue;}
- pos = el.indexOf(key_army); if (pos != -1) {type_gn[cur] = rutina_1(type_gn[cur++],1,el,elem0,i,level_army,skip_army); continue;}
- pos = el.indexOf(key_monstr);
- if (pos == -1) continue; //Если задания ГН не найдены в этом тексте
- type_gn[cur][0] = 3;
- type_gn[cur][1] = el.substring(el.indexOf("{")+1,el.indexOf("}")); //Получили уровень монстра
- name = el.substring(0,pos);
- type_gn[cur][2] = name.substring(name.lastIndexOf("'")+1,pos); //Получили имя монстра
- if (type_gn[cur++][1]>=+level_monstr && skip_monstr) {elem0.childNodes[i].innerHTML ='<font style="color:#FF0000">'+el+'</font>';}
- }
- }
- }
- // alert(type_gn);
- return type_gn;
- }
- //****************************************************
- function skip() {
- var ems, el;
- ems = document.querySelectorAll("a[href*='action=skip']");
- if (ems.length != 0)
- setTimeout(function() { window.location.href = ems[0].href; }, 2000);
- //alert('nponyck');
- else document.title = str_need_skp;
- return;
- }
- //****************************************************
- function get_time_wait() {
- var elem, elem0, pos;
- for (var k = 0; k < all_tables.length; k++) {
- if (all_tables[k].className != "wbwhite") continue;
- elem0 = all_tables[k].childNodes[0].childNodes[0].childNodes[1].childNodes[12];
- if (elem0 == null) continue;
- elem = elem0.childNodes[0].childNodes[0].childNodes[0].childNodes[0].data;
- if (elem == null) continue;
- pos = elem.lastIndexOf(str_time);
- if (pos == -1) continue;
-
- var time_min = elem.substring(pos+14,elem.indexOf(str_min));
- var time_ms = ++time_min * 60000; //переводим из минут в мс
- return time_ms;
- }
- for (var k = 0; k < all_tables.length; k++) {
- if (all_tables[k].className != "wbwhite") continue;
- elem0 = all_tables[k].childNodes[0].childNodes[0].childNodes[1].childNodes[6].childNodes[0].childNodes[0].childNodes[0];
- if (elem0 == null) continue;
- elem = elem0.childNodes[0].data;
- if (elem == null) continue;
- pos = elem.lastIndexOf(str_time);
- if (pos == -1) continue;
-
- var time_min = elem.substring(pos+14,elem.indexOf(str_min));
- var time_ms = ++time_min * 60000; //переводим из минут в мс
- return time_ms;
- }
- return 0;
- }
- //****************************************************
- function update_title(time) {
- var sec = Math.floor(time / 1000);
- var dm = Math.floor( sec / 60 );
- var ds = sec % 60;
-
- document.title = str_tab_b+dm+str_min+' '+ds+str_sec+str_tab_e;
- if ( time > 1000 ) setTimeout(function() { update_title(time-1000); }, 970);
- else location.reload(true);
- }
- //************* Begin ***************************************
- if ((url_cur.indexOf('pl_warlog') != -1) && (show_exp_on_warlog != 0)) warlog();
- if (url_cur.indexOf('mercenary_guild') == -1) return;
- var need_skip = 1; //доступность кнопки пропустить задание
- var zadanie_gn = new Array(2);
- zadanie_gn[0] = new Array(4);
- zadanie_gn[1] = new Array(4);
- zadanie_gn = get_type_gn(); //0-Нет, 1-армии, 2-набеги, 3-монстры, 4-заговорщики, 5-захватчики, 6-отряд, 7-разбойники.
- //alert(zadanie_gn);
- for (var cur = 0; cur < 2; cur++) {
- if ((zadanie_gn[cur][0] == 0) && (cur ==1)) break;
- if ((zadanie_gn[cur][0] == 1) && skip_army && (+zadanie_gn[cur][1] >= +level_army)) zadanie_gn[cur][3] = 1;
- if ((zadanie_gn[cur][0] == 2) && skip_raids && (+zadanie_gn[cur][1] >= +level_raids)) zadanie_gn[cur][3] = 1;
- if ((zadanie_gn[cur][0] == 4) && skip_conspir && (+zadanie_gn[cur][1] >= +level_conspir)) zadanie_gn[cur][3] = 1;
- if ((zadanie_gn[cur][0] == 5) && skip_invader && (+zadanie_gn[cur][1] >= +level_invader)) zadanie_gn[cur][3] = 1;
- if ((zadanie_gn[cur][0] == 6) && skip_otryad && (+zadanie_gn[cur][1] >= +level_otryad)) zadanie_gn[cur][3] = 1;
- if ((zadanie_gn[cur][0] == 7) && skip_convoy && (+zadanie_gn[cur][1] >= +level_convoy)) zadanie_gn[cur][3] = 1;
-
- if (zadanie_gn[cur][0] == 3) {
- var expir = new Array(2);
- var param_0_monster = monstr_rus_data[$ustring(zadanie_gn[cur][2])];
- var exp_t;
- if (monstr_rus_data[$ustring(zadanie_gn[cur][2])] != null)
- {
- expir = get_exp (param_0_monster[1],param_0_monster[6],zadanie_gn[cur][1]);
- exp_t = ((param_0_monster[6] >= 50) || (param_0_monster[6] <= 6) || (zadanie_gn[cur][1] == 0)) ? expir[1] : expir[0];
- if (skip_monstr && ( (+zadanie_gn[cur][1] >= +level_monstr) || ((+exp_t > +limit_exp_monstr) && (limit_exp_monstr != 0)))) zadanie_gn[cur][3] = 1;
- else show_param_monstr(cur,zadanie_gn[cur][1],zadanie_gn[cur][2]);
- } else show_param_monstr(cur,zadanie_gn[cur][1],zadanie_gn[cur][2]);
- }
- }
- if ((need_move_up) && (zadanie_gn[1][0] != 0)) cancel_up();
- //alert('need_skip='+need_skip+' zadanie_gn[0][3]='+zadanie_gn[0][3]+' zadanie_gn[1][3]='+zadanie_gn[1][3]);
- if (zadanie_gn[1][0] == 0) {need_skip *= zadanie_gn[0][3];} //Если 1 задание (ГН<7)
- else {need_skip *= zadanie_gn[0][3]*zadanie_gn[1][3];} //Если 2 задания (ГН>6)
-
- if (need_skip) skip();
- if (zadanie_gn[0][0] == 0) {
- var gn_time_wait = get_time_wait();
- if (gn_time_wait != 0) {
- update_title(gn_time_wait);
- } else document.title = str_no_gn;
- } else {
- if ((need_skip == 0) && ((skip_army || skip_raids || skip_monstr || skip_invader || skip_conspir || skip_otryad || skip_convoy) != 0)) document.title = str_zad_ok;
- }
- show_settings();
- })();