Тема: МОД от форумчан: Лечение у Лича. Ангелс, Кэп, Мун, Сэнд, Сан.
Совместимость: версия 8.5+
Города: Ангелс, Кэп, Мун, Сэнд, Сан
Изменения: добавлены новые маршруты. исправлен баг с "Это не возможно", существующий до версии 8.6 включительно.
Установка:
1) В папке Modules существует файл Lich.js.
Актуальное содержание для файла:
var travma = false;
var LichProcess = false;
function LichHealMain(){
if(external.injury)
travma = true;
if (travma && external.SLichEnabled.Checked)
{
LichProcess = true;
if (external.room_name == "Центральный утес")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o10&rnd=" + Math.random();
else if(external.room_name == "Бойцовский Клуб")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o6&rnd=" + Math.random();
else if(external.room_name == "Будуар")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o7&rnd=" + Math.random();
else if(external.room_name == "Зал воинов")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o7&rnd=" + Math.random();
else if(external.room_name == "Зал воинов 2")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o7&rnd=" + Math.random();
else if(external.room_name == "Зал воинов 3")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o7&rnd=" + Math.random();
else if(external.room_name == "Этаж 2")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o4&rnd=" + Math.random();
else if(external.room_name == "Этаж 3")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o4&rnd=" + Math.random();
else if(external.room_name == "Огненный мир")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o5&rnd=" + Math.random();
else if(external.room_name == "Колдовской мир")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o5&rnd=" + Math.random();
else if(external.room_name == "Астральные миры")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o5&rnd=" + Math.random();
else if(external.room_name== "Башня рыцарей-магов")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o2&rnd=" + Math.random();
else if(external.room_name== "Рыцарский зал")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o7&rnd=" + Math.random();
else if(external.room_name == "Торговый Зал")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o7&rnd=" + Math.random();
else if (external.room_name == "Утес Перемещения")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o5&rnd=" + Math.random();
else if (external.room_name == "Водопад Возрождения")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();
else if (external.room_name == "Фонтан Возрождения"){ //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();}
else if (external.room_name == "Парк развлечений") //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o4&rnd=" + Math.random();
else if (external.room_name == "Центральная Площадь") //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o13&rnd=" + Math.random();
else if (external.room_name == "Центральная грибница") //sun
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o9&rnd=" + Math.random();
else if (external.room_name == "Овраг Возрождения") //sun
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();
else if (external.room_name == "Центральный Оазис") //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o6&rnd=" + Math.random();
else if (external.room_name == "Песочные Врата") //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
else if (external.room_name == "Озеро возрождения") //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();
else if (external.room_name == "Центр падения") //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o8&rnd=" + Math.random();
else if (external.room_name == "Площадь Башни") //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
else if (external.room_name == "Улетный тупик" || external.room_name == "Прорубь Возрождения") //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();
else if (external.room_name == "Врата Душ") {
if(top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/100\%\</)){
if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/смыртн/))
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=0&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Смелтн/)) //sun
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=1&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Пливлатник/)) //sun
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=2&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/расецнки\sна\sуслуги/)) //sun
{
dialog(true);
external.AddToChat("вылечил");
ReloadInfo();
travma=false;
}
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/смегтн/)) //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=1&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Вот\sтепегь\sтвое\sздоговье/)) //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=1&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/самый\sнастоящий\sлич/)) //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=1&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Тгавмы/)) //capital
{
dialog(true);
external.AddToChat("вылечил");
ReloadInfo();
travma=false;
}
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Вне\.\. внемлю тебе/)) //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=0&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Судо\.\. Судо\.\.\. С удовольствием/)) //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=5&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Мо\.\.мо\.\. могу\, все могу/)) //moon
{
dialog(true);
external.AddToChat("вылечил");
ReloadInfo();
travma=false;
}
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/по\sее\sжеланию\sнаделенные/)) //angels
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=0&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/по\sее\sжеланию\sнаделенные/)) //angels
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=0&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Что\sза\sглупости/)) //angels
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=2&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/неудачн/)) //angels
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=1&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Прыказ\sсвыше/)) //angels
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=1&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/бысплатно/)) //angels
{
dialog(true);
external.AddToChat("вылечил");
ReloadInfo();
travma=false;
}
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/сьмертьная/)) //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=1&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Привьратник/)) //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=2&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/запасье вечьность/)) //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=1&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/была волья Сьмерти/)) //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=0&" + Math.random();
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Но Сьмерть благосклонна к тебе/)){ //sand
dialog(false);
travma=false;
}
else if (top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/сьтоить тебе неськолько кьредитов/)) //sand
{
dialog(true);
external.AddToChat("вылечил");
ReloadInfo();
travma=false;
}
else
{
dialog(false);
ReloadInfo();
travma=false;
}
}
else
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random(); //capital && angel
}
else
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?homeworld=" + Math.random();
} else {
if (external.room_name == "Врата Душ"){
if(top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/100\%\</)) //Если мы в диалоге с Личем, то выбрать последний из списка ответ
dialog(false);
else
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o1&rnd=" + Math.random(); //capital && angel
}
else if (external.room_name == "Центральный утес")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();
else if(external.room_name == external.SLichBackRoom.Text){
LichProcess = false;
setTimeout("top.frames[external.mainFrameIndex].location = 'http://' + external.SCity.Text + '.combats.com/main.pl?skmp=' + external.SComplectBattle.Text;", 5000);
}
else if(external.room_name == "Бойцовский Клуб"){
if(external.SLichBackRoom.Text=="Зал воинов")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o1&rnd=" + Math.random();
else if(external.SLichBackRoom.Text=="Зал воинов 2")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o2&rnd=" + Math.random();
else if(external.SLichBackRoom.Text=="Зал воинов 3")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
else if(external.SLichBackRoom.Text=="Будуар")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();
else
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o4&rnd=" + Math.random();
}
else if(external.room_name == "Этаж 2"){
if(external.SLichBackRoom.Text=="Рыцарский зал" || external.SLichBackRoom.Text=="Башня рыцарей-магов")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o2&rnd=" + Math.random();
else if(external.SLichBackRoom.Text=="Торговый Зал")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o1&rnd=" + Math.random();
else
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
}
else if(external.room_name == "Рыцарский зал"){
if(external.SLichBackRoom.Text=="Башня рыцарей-магов")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o5&rnd=" + Math.random();
}
else if(external.room_name == "Этаж 3"){
if(external.SLichBackRoom.Text=="Огненный мир")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o1&rnd=" + Math.random();
else if(external.SLichBackRoom.Text=="Астральные миры")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
else if(external.SLichBackRoom.Text=="Колдовской мир")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o2&rnd=" + Math.random();
}
else if (external.room_name == "Овраг Возрождения") //sun
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o2&rnd=" + Math.random();
else if (external.room_name == "Центральная грибница") //sun
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();
else if (external.room_name == "Водопад Возрождения")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o4&rnd=" + Math.random();
else if (external.room_name == "Фонтан Возрождения") //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
else if (external.room_name == "Парк развлечений") //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
else if (external.room_name == "Центральная Площадь") //capital
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o0&rnd=" + Math.random();
else if (external.room_name == "Утес Перемещения")
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o4&rnd=" + Math.random();
else if (external.room_name == "Центральный Оазис") //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
else if (external.room_name == "Песочные Врата") //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o4&rnd=" + Math.random();
else if (external.room_name == "Озеро возрождения") //sand
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o2&rnd=" + Math.random();
else if (external.room_name == "Прорубь Возрождения") //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o3&rnd=" + Math.random();
else if (external.room_name == "Улетный тупик") //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o2&rnd=" + Math.random();
else if (external.room_name == "Площадь Башни") //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o1&rnd=" + Math.random();
else if (external.room_name == "Центр падения") //moon
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?path=o2&rnd=" + Math.random();
}
}
function dialog(up){
if(!up){
var mask = /move\_dialog\=(\d+)([^/]+)\/A/gim;
while(n = mask.exec(top.frames[external.mainFrameIndex].document.all[0].innerHTML)){
if(n[2].match(/\>\</)==null)
var res = n[1];
}
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog="+ res +"&" + Math.random();
}else{
var mask= /move\_dialog\=(\d+)/gim;
var n = mask.exec(top.frames[external.mainFrameIndex].document.all[0].innerHTML);
if(n)top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?move_dialog=" + n[1] + "&" + Math.random();
}
}
function ReloadInfo(){
external.injury = false;
httpGetPageRequest("http://"+external.SCity.Text+".combats.com/main.pl?skills=1&rand="+Math.random(),CheckInfo());
}
2) Файл Main.js.
Найти строку
if((external.room_name.match(/Врата\sДуш/)) && (external.SCity.Text == "angelscity" || external.SCity.Text == "capitalcity"))
заменить на:
if((external.room_name.match(/Врата\sДуш/)) && (external.SCity.Text == "angelscity" || external.SCity.Text == "capitalcity" || external.SCity.Text == "suncity" || external.SCity.Text == "sandcity" || external.SCity.Text == "mooncity"))
3) В Main.js найти другую строку:
if(!external.inBattle && ((external.SLichEnabled.Checked && external.level >= 8 && external.injury) || LichProcess) && (external.SCity.Text == "angelscity" || external.SCity.Text == "capitalcity"))
и заменяем её на:
if(!external.inBattle && ((external.SLichEnabled.Checked && external.level >= 8 && external.injury) || LichProcess) && (external.SCity.Text == "angelscity" || external.SCity.Text == "capitalcity" || external.SCity.Text == "suncity" || external.SCity.Text == "sandcity" || external.SCity.Text == "mooncity"))
Вроде всё.
Выражаю особую благодарность Mr Blanco. Лучший тестер Лича
Выражаю особую благодарность Петро, отважно получавшему травмы для тестирования
За идею о возвращении в конкретные комнаты, а не в ЗВ1, объявляю благодарность sergejs11
Бот после лечения может ползать по диалогу с Личем ещё около минуты, т.к. он ещё не в курсе, что вылечился...этот интервал прописан непонятно где, но явно не у меня...ничего с этим сделать я не могу
Отредактировано anahronik (2010-04-07 21:48:39)