Greasy Fork is available in English.

bot.wapheroes.quest

Большая просьба после получения не распространять

// ==UserScript==
// @name         bot.wapheroes.quest
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Большая просьба после получения не распространять
// @author       Mortan
// @match        http://wapheroes.ru/index.php?action=npc*
// ==/UserScript==
var allCreaturesLairs = ["1110401&n=44", "1110402&n=46", "2220401&n=184", "4440401&n=273", "5550401&n=341", "1110401&n=45", "1110403&n=49", "2220402&n=185", 
"4440401&n=274", "5550402&n=342", "1110402&n=47", "1110403&n=50", "2220403&n=186", "4440402&n=275", "5550402&n=343", "1110403&n=51", 
"1110404&n=54", "2220403&n=187", "4440403&n=276", "5550403&n=344", "1110404&n=53", "1110405&n=56", "2220404&n=188", "4440404&n=277", 
"5550403&n=345", "1110405&n=57", "1110406&n=60", "2220404&n=189", "4440405&n=279", "5550404&n=346", "1110407&n=63", "1110408&n=65", 
"2220405&n=190", "4440405&n=280", "5550405&n=347", "1110301&n=24", "1110302&n=28", "2220301&n=177", "4440301&n=266", "5550301&n=334", 
"1110301&n=25", "1110303&n=29", "2220302&n=178", "4440301&n=271", "5550302&n=335", "1110302&n=27", "1110303&n=30", "2220303&n=179", 
"4440302&n=267", "5550302&n=336", "1110303&n=31", "1110305&n=35", "2220303&n=180", "4440303&n=268", "5550303&n=337", "1110304&n=33", 
"1110306&n=37", "2220304&n=181", "4440304&n=269", "5550304&n=338", "1110306&n=38", "1110307&n=39", "2220305&n=182", "4440304&n=270", 
"5550305&n=339", "1110307&n=40", "1110308&n=42", "2220305&n=183", "4440305&n=272", "5550305&n=340", "1110901&n=133", "1110902&n=135", 
"2220901&n=219", "4440901&n=312", "5550901&n=376", "1110901&n=134", "1110902&n=136", "2220901&n=220", "4440902&n=314", "5550901&n=377", 
"1110903&n=137", "1110904&n=139", "2220902&n=221", "4440903&n=315", "5550902&n=378", "1110904&n=138", "1110905&n=141", "2220903&n=222", 
"4440903&n=316", "5550903&n=379", "1110905&n=140", "1110906&n=143", "2220904&n=223", "4440904&n=317", "5550904&n=380", "1110905&n=142", 
"1110907&n=145", "2220904&n=224", "4440905&n=318", "5550904&n=381", "1110907&n=144", "1110908&n=146", "2220905&n=225", "4440905&n=319", 
"5550905&n=382", "1110601&n=86", "1110602&n=88", "2220601&n=198", "4440601&n=289", "5550601&n=355", "1110601&n=87", "1110602&n=89", 
"2220602&n=199", "4440602&n=290", "5550602&n=356", "1110603&n=91", "1110604&n=93", "2220602&n=200", "4440602&n=291", "5550603&n=357", 
"1110603&n=92", "1110604&n=94", "2220603&n=201", "4440603&n=292", "5550603&n=358", "1110605&n=95", "1110606&n=98", "2220604&n=202", 
"4440604&n=294", "5550604&n=359", "1110605&n=96", "1110606&n=99", "2220604&n=203", "4440604&n=295", "5550604&n=360", "1110607&n=100", 
"1110608&n=102", "2220605&n=204", "4440605&n=296", "5550605&n=361", "1110701&n=105", "1110702&n=107", "2220701&n=205", "4440701&n=297", 
"5550701&n=362", "1110701&n=106", "1110703&n=108", "2220702&n=206", "4440702&n=298", "5550701&n=363", "1110703&n=109", "1110704&n=110", 
"2220702&n=207", "4440702&n=299", "5550702&n=364", "1110704&n=111", "1110705&n=113", "2220703&n=208", "4440703&n=300", "5550703&n=365", 
"1110705&n=112", "1110706&n=115", "2220704&n=209", "4440703&n=301", "5550703&n=366", "1110706&n=114", "1110707&n=116", "2220705&n=210", 
"4440704&n=302", "5550704&n=367", "1110707&n=117", "1110708&n=118", "2220705&n=211", "4440705&n=303", "5550705&n=368", "1110801&n=119", 
"1110802&n=121", "2220801&n=212", "4440801&n=304", "5550801&n=369", "1110801&n=120", "1110804&n=124", "2220801&n=213", "4440802&n=305", 
"5550802&n=370", "1110802&n=122", "1110805&n=127", "2220802&n=214", "4440803&n=307", "5550803&n=371", "1110803&n=123", "1110805&n=126", 
"2220803&n=215", "4440803&n=308", "5550804&n=372", "1110804&n=125", "1110807&n=129", "2220804&n=216", "4440804&n=309", "5550804&n=373", 
"1110806&n=128", "1110807&n=130", "2220805&n=217", "4440804&n=310", "5550805&n=374", "1110807&n=131", "1110808&n=132", "2220805&n=218", 
"4440805&n=311", "5550805&n=375", "1110501&n=68", "1110502&n=71", "2220501&n=191", "4440501&n=281", "5550501&n=348", "1110501&n=69", 
"1110503&n=74", "2220502&n=192", "4440502&n=283", "5550501&n=349", "1110502&n=72", "1110503&n=75", "2220502&n=193", "4440502&n=284", 
"5550502&n=350", "1110504&n=78", "1110506&n=82", "2220503&n=194", "4440503&n=285", "5550503&n=351", "1110504&n=77", "1110505&n=80", 
"2220503&n=195", "4440504&n=286", "5550504&n=352", "1110505&n=81", "1110507&n=83", "2220504&n=196", "4440505&n=287", "5550505&n=353", 
"1110507&n=84", "1110508&n=85", "2220505&n=197", "4440505&n=288", "5550505&n=354", "1110101&n=3", "1110102&n=5", "2220101&n=170", 
"4440101&n=258", "5550101&n=12", "1110101&n=2", "1110104&n=8", "2220102&n=171", "4440101&n=259", "5550102&n=328", "1110102&n=6", "1110104&n=9", 
"2220103&n=172", "4440102&n=260", "5550102&n=329", "1110102&n=4", "1110105&n=10", "2220104&n=173", "4440103&n=261", "5550103&n=330", 
"1110103&n=7", "1110106&n=14", "2220104&n=174", "4440103&n=262", "5550104&n=331", "1110105&n=11", "1110106&n=13", "2220105&n=175", 
"4440104&n=263", "5550104&n=332", "1110107&n=15", "1110108&n=17", "2220105&n=176", "4440105&n=264", "5550105&n=333", "11101101&n=147", 
"11101106&n=157", "22201101&n=226", "44401101&n=320", "55501101&n=383", "11101101&n=148", "11101102&n=150", "22201101&n=227", "44401102&n=321", 
"55501102&n=384", "11101102&n=149", "11101103&n=152", "22201102&n=228", "44401103&n=323", "55501103&n=385", "11101103&n=151", "11101104&n=154", 
"22201103&n=229", "44401104&n=324", "55501103&n=386", "11101104&n=153", "11101105&n=156", "22201103&n=230", "44401104&n=325", "55501104&n=387", 
"11101105&n=155", "11101106&n=158", "22201104&n=231", "44401105&n=326", "55501105&n=388", "11101107&n=159", "11101108&n=160", "22201105&n=232", 
"44401105&n=327", "55501105&n=389"]

var parent;
var creaturesID = []
var lastCreature;
var creaturesCount = []
var isAutoBuy;
var questLocation;

botMenuHelper();



function botMenuHelper()
{    
    if(isQuest())
    {
        findCreaturesID();
        findCreaturesCount();
        addEventListener("keydown", moveRect);
    }
}

function autoBuy()
{
    
}

function moveRect(e)
{
    if(e.keyCode == 113)
    {
        autoBuy();
    }            
}

function isQuest()
{
    var tmp = document.getElementsByClassName('mtext');
    var help = new RegExp('Доставь ко мне следующие армии');

    for ( var i = 0; i < tmp.length; i++ )
    {
        var str = tmp[i].textContent
        if(help.test(str))        
        {
            //tmp[i].textContent +="\n это квест"
            return true;
        }
    }
    return false;

}

function findCreaturesCount()
{
    if(parent!=null)
    {
        var tmp = parent.getElementsByTagName('b');
        for ( var i = 0; i < 5; i++ )
        {
        var str = tmp[i].textContent;
        creaturesCount.push(str);
        }
    }
}

function findCreaturesID()
{
    var tmp = document.getElementsByTagName('a')
    var help = new RegExp('http:\/\/wapheroes.ru\/index.php\\?action=unit_info&u=')
    for ( var i = 0; i < tmp.length; i++ )
    {
	    var str = tmp[i].href
	    if(help.test(str))
        {
            str = str.replace(help,"");
            var nhref = "http://wapheroes.ru/index.php?action=npc&l=" + allCreaturesLairs[str-1];
            tmp[i].href = nhref
            creaturesID.push(str);
            parent = tmp[i].parentElement;
        }
    }
}