Re: Слабость к огню/дрож в коленях
Малость видоизменил плагин, дабы прикрутить проверку на эффекты
На практике не проверял, т.к. не на ком.
var MorkovkaTimer = {};
var WeaknessTimer = {};
var randomValue;
var min = 50000;
var max = 70000;
function MorkovkaTest(enabled)
{
if(enabled)
{
MorkovkaTimer[mylogin] = setInterval("MorkovkaHandler()", 500);
WeaknessTimer[mylogin] = setInterval("WeaknessHandler()", 60000);
}
else
{
clearInterval(MorkovkaTimer[mylogin]);
clearInterval(WeaknessTimer[mylogin]);
}
}
function MorkovkaHandler(){
try
{
if(external.inBattle || (external.dungeonEnabled && !IsMapVisible())) return;
var morkovkaName = [];
var hpRemain = parseInt(maxHP - tkHP);
if(tkHP < 813)
{
morkovkaName[morkovkaName.length] = new Array ("Настойка на грибах",4);
}
if(tkHP < 1513)
{
morkovkaName[morkovkaName.length] = new Array ("Заживляющий Эликсир",3);
}
if(tkHP < 1663)
{
morkovkaName[morkovkaName.length] = new Array ("Заживляющая Настойка",3);
}
for(x = 0; x < morkovkaName.length; x++)
{
Morkovka2Handler(morkovkaName[x][0],morkovkaName[x][1]);
}
}
catch(err)
{
}
}
function Morkovka2Handler(elikName,razdel)
{
var s = doLoad("http://" + external.SCity.Text + ".combats.com/main.pl?edit="+razdel+"&rnd=" + Math.random());
if(s.indexOf("Ослабление после боя") < 0)
{
var m = elikName + "(\\s\\(x\\d+\\))?','main.pl',\\s'(.+?)',\\s'.*?',\\s(\\d+)";
var found = s.match(m);
if(found != null)
{
external.AddToChat("Выпиваю эликсир <b>\\\"" + elikName + "\\\"</b>");
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/main.pl?use=" + found[2] + "&n=" + found[3];
}
}
}
function WeaknessHandler()
{
try
{
if(external.inBattle || (external.dungeonEnabled && !IsMapVisible())) return;
var antidoteName = [];
var weakInf = '';
weakInf = doLoad("http://"+external.SCity.Text+".combats.com/main.pl?skills=1&rand="+Math.random());
if(weakInf && weakInf.match(/Слабость к (?:Воде|Огню|Воздуху)/i))
{
antidoteName[antidoteName.length] = new Array ("Печень Гусеница",3);
}
if(weakInf && weakInf.match(/Дрожь в коленях/i))
{
antidoteName[antidoteName.length] = new Array ("Почки Палочника",3);
}
for(x = 0; x < antidoteName.length; x++)
{
Morkovka2Handler(antidoteName[x][0],antidoteName[x][1]);
}
clearInterval(WeaknessTimer[mylogin]);
randomValue = Math.floor(Math.random()*(max - min) + min);
WeaknessTimer[mylogin] = setInterval("WeaknessHandler()", randomValue);
}
catch(err)
{
}
}
function doLoad(url)
{
var req;
if (window.XMLHttpRequest)
req = new XMLHttpRequest();
else
req = new ActiveXObject("Microsoft.XMLHTTP");
req.open("GET", url, false);
req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
req.send(null);
return req.responseText;
}