[Engedélyezett] Visszatérő támadás figyelő

Státusz
Nem lehet hozzászólni.

DeletedUser19087

Vendég
A script a térképen használható. Segítségével nem kell egyesével végigmenni egérrel a falvakon, hogy megkeressük, melyiknél vannak visszatérő (kicsi/közepes/nagy) támadó egységek, nemesek. Feljelöli az ilyen falvakat.
Ez azért hasznos, mert pl. egy arma során azonnal képet kaphatunk róla, melyik falvak lettek átütve, vágva. Tehát lehet rájuk fordulni.

Használata:
- futtatod térkép nézetben
- feljelöli "Támadj" felirattal a fent említett falvakat (a saját klánunk falvait is feljelöli, nem csak az ellenfélét, de szín alapján mindeki különbséget tud tenni)
- a térkép mozgatása után is jelöli a falvakat
- értelemszerűen, ha nem talál a feltételeknek megfelelő falvakat, akkor nem címkéz
- várni kell néhány másodpercet, ha befejezte a címkézést jelzi egy üzenettel, minnél több falu van a bal oldali térképen, annál tovább tart a folyamat

Kód beillesztése:
javascript:

var i = 1;

$(window).on('mouseup', function() {
    i = 1;
    run(0);
})

function resolveAfterSeconds() {
    return new Promise(resolve => {
        setTimeout(() => {
            resolve(i++);
        }, 200);
    });
}

async function asyncCall() {
    console.log('calling');
    const result = await resolveAfterSeconds();
    run(result);
}

function createText(ids) {
    $(`#map_village_${ids}`).after($(`<div id=öreg_map_hilight_${ids}>Támadj</div>`));
}

function makeItPretty(ids,left,top) {
    $(`#öreg_map_hilight_${ids}`).css({
        "position": "absolute",
        "z-index": "9999999999",
        "left": left,
        "top": top,
        "font-size": "8pt",
        "font-weight": "normal",
        "background-color": "#ffffff",
        "opacity": ".7",
        "width": "40px",
        "height": "12px",
        "margin-left": "0px",
        "margin-top": "0px",
        "display": "block",
        "color": "#000000",
        "text-align": "center"
    })
}

function getVillageInfo(ids) {
    $.ajax({
        url: `https://${window.location.host}/game.php?village=${game_data.village.id}&screen=map&ajax=map_info&source=${game_data.village.id}&target=${ids}`,
        type: 'GET',
        async: true,
        success: function(data) {
            console.log(data);
            html = data.incoming_html;
            if (html) {
                if (html.includes('return_attack_large') || html.includes('return_attack_medium') || html.includes('return_attack_small') || html.includes('return_snob')) {
                    console.log("siker");
                    var top = parseInt($(`#map_village_${ids}`).css('top'), 10) + 10 + "px",
                        left = parseInt($(`#map_village_${ids}`).css('left'), 10) + 10 + "px";
                    createText(ids);
                    makeItPretty(ids,left,top);
                }
            }
            asyncCall();
        },
        error: function(xhr,statusText,error) {
            console.log(xhr,statusText,error);
        }
    })
}

function regexp(i,text) {
    return $("[id*=map_village_]")[i].id.match(text);
}

function run(i) {
    k = $("[id*=map_village_]").length;
    UI.InfoMessage(`${i}/${k}`,400);
    if (i < k && !regexp(i,/undefined/g)) {
        ids = regexp(i,/\d+/)[0];
        getVillageInfo(ids);
    } else if (i < k && regexp(i,/undefined/g)) {
        console.log("undefined");
        asyncCall();
    } else {
        UI.SuccessMessage("A falvak jelölése kész.", 2500);
    }
}

run(0);

void(0);
 
Utoljára egy moderátor szerkesztette:

öreg

Well-Known Member
A reakció pontszáma
1.733
A script nem működött, újra lett írva.
Két változás történt:
- mostantól másodpercenként csak 5 falut dolgoz fel a térképen
- kiírja éppen hányadik falunál tart
 
Utoljára egy moderátor szerkesztette:
Státusz
Nem lehet hozzászólni.
Fent