Привет, подскажи пожалуйста как решить следующею проблему.
Есть плагин на диалог на Благо. Весь диалог засунул в один файл
function Makropus(enabled)
{
if(enabled)
{
//должна быть одна из двух строк
PluginsOnLoad["Makropus"] = "MakropusHandler"; // работать по обновлению верхнего фрейма
}
else
{
//должна быть одна из двух строк
PluginsOnLoad["Makropus"] = ""; // выключить обработку по обновлению верхнего фрейма
}
}
function blago()
{
if(top.Battle.bInBattle) return;
//Макропус-1
if(get_mainframe().document.all[0].innerHTML.match(/И вам хорошего дня/))
external.ClickLink("И вам хорошего дня",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Да-да-да, хорошо/))
external.ClickLink("Да-да-да, хорошо",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Да интересует/))
external.ClickLink("Да интересует",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Да./))
external.ClickLink("Да.",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Вперед! На задание/))
{
external.ClickLink("Вперед! На задание",2);
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName + "?rnd=" + Math.random() +"&path=rr";
}
//Макропус-2
if(get_mainframe().document.all[0].innerHTML.match(/Да! Конечно! Всегда вперед/))
external.ClickLink("Да! Конечно! Всегда вперед",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Уже бегу./))
{
external.ClickLink("Уже бегу.",2);
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName + "?rnd=" + Math.random() +"&path=rr";
}
//Макропус-3
if(get_mainframe().document.all[0].innerHTML.match(/Я с ним поговорил/))
external.ClickLink("Я с ним поговорил",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Слушаю внимательно/))
external.ClickLink("Слушаю внимательно",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Хорошо, вопросы задавать я умею/))
{
external.ClickLink("Хорошо, вопросы задавать я умею",2);
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName + "?rnd=" + Math.random() +"&path=rr";
}
//Макропус-2
if(get_mainframe().document.all[0].innerHTML.match(/Это мы еще посмотрим/))
external.ClickLink("Это мы еще посмотрим",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Выйти/))
{
external.ClickLink("Выйти",2);
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName + "?rnd=" + Math.random() +"&path=m1";
}
//Хищен
if(get_mainframe().document.all[0].innerHTML.match(/Эй, ты меня слышишь/))
external.ClickLink("Эй, ты меня слышишь",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Ага, отлично! Раз слышишь/))
external.ClickLink("Ага, отлично! Раз слышишь",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Скажи, давно тут был Хищнец/))
external.ClickLink("Скажи, давно тут был Хищнец",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Решено. Так и скажу, Хищнец был здесь/))
{
external.ClickLink("Решено. Так и скажу, Хищнец был здесь",2);
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName + "?rnd=" + Math.random() +"&path=m7";
}
//Жук
if(get_mainframe().document.all[0].innerHTML.match(/Погоди, а мы разве с тобой не общались/))
external.ClickLink("Погоди, а мы разве с тобой не общались",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Нет-нет! Я тебя точно помню/))
external.ClickLink("Нет-нет! Я тебя точно помню",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Потыкать его палочкой/))
external.ClickLink("Потыкать его палочкой",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Стой! Не кричи, что случилось?/))
external.ClickLink("Стой! Не кричи, что случилось?",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Какая Грибница? Какой кристалл/))
external.ClickLink("Какая Грибница? Какой кристалл",2);
else
if(get_mainframe().document.all[0].innerHTML.match(/Ну хорошо./))
{
external.ClickLink("Ну хорошо.",2);
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + dungName + "?rnd=" + Math.random() +"&path=rl";
}
}
function MakropusHandler()
{
try
{
blago();
}
catch(err)
{
//alert(err.description); // выводит сообщение, если в результате выполнения кода была получена ошибка. Если сообщения не нужна - удалить эту строку, оставив конструкцию try{}catch(err){}
}
}
Тут получается три диалога с Макропусам, один с Рогачем, один с Шизожуков и когда бот начинает диалог то ответы не совпадают с прописанными в плагине. Короче он хаотично отвечает, я так подозреваю что ответы у многих схожы и он не правильно отвечает.
У каждого диалога-ответа есть уникальная ссылка в виде
http://suncity.combats.com/main.pl?move_dialog=3&0.504439939534969
http://suncity.combats.com/main.pl?move_dialog=0&0.194365678492826
http://suncity.combats.com/main.pl?move_dialog=0&0.065782565842035
Подскажи пожалуйста как мне указать эти ссылки в плагине за место слов
if(get_mainframe().document.all[0].innerHTML.match(/И вам хорошего дня/))
external.ClickLink("И вам хорошего дня",2);
else
Заранее спасибо!!!