[Engedélyezett] Egy nap alatt statisztika ( farm / gyűjtögetés )

öreg

Well-Known Member
A reakció pontszáma
1.724
A script @-NooBLeadeR- kérésére született ez év második havának tizenkettedik napján.

A ranglista/klánok felületen kattintunk az egyik klánra. Látni fogjuk a klántagokat. Ezen a felületen futtatjuk a scriptet. Ekkor megkérdezi, hogy a farmolási vagy a gyűjtögetési adatokra vagyunk-e kíváncsiak, kiválasztjuk valamelyiket.
A játékosok nevére klikkelve létrehoz egy új oszlopot, ahová beírja, mennyi az egy nap alatti legnagyobb eredményünk. Ezt természetesen a ranglista/egy nap alatt felületről kérdezi le.
Az új oszlop alján összegzi az eredményeket.
Amelyik névre rákattintunk az elhalványul.
Ds3Ma35.png


Kód beillesztése:
javascript:
var array = [];
function select() {
    var buttons = [{
        text: "Farmolt nyersanyagok",
        callback: function() {change("loot_res")}
    }, {
        text: "Összegyűjtött nyersanyagok",
        callback: function() {change("scavenge")}
    }];
    UI.ConfirmationBox("Kattints valamelyik gombra a folytatáshoz!", buttons, "", true);
}
select()

function change(val) {
    array.push(val);
    if (array[0] == "loot_res") {
        name = "Farmolt nyersanyagok";
    } else {
        name = "Összegyűjtött nyersanyagok";
    }
    createHeader(`
        <th>${name}</th>
    `);
}

function createMessage(type,message,time) {
    UI[type](message,time);
}

function createContent(val) {
    $("#content_value td:first table:last").append(val);
}

createContent(`
    <tr>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td>Összesen:</td>
        <td id="sum"></td>
    </tr>
`);

function createHeader(val) {
    $("#content_value td:first table:last").find("tr").first().append(val);
}

function fade(val) {
    $(val).fadeTo(0, 0.5);
}

$("#content_value td:first table:last a").on("click", function (e) {
    var player = e.target.innerText.trim();
    var url = `https://${document.location.host}/game.php?screen=ranking&mode=in_a_day&type=${array[0]}&name=${player}`;

    $.get(url, function(data, status) {
        var selector = $(data).find("#in_a_day_ranking_table").find("tr");

        for (var i = 0; i < selector.length; i++) {
            var name = selector.eq(i).find("td").eq(1).text().trim();
            var point = selector.eq(i).find("td").eq(3).text().trim();
            if (selector.eq(1).find("td").prop("colspan") == 5) {
                point = 0;
                $(e.target.parentElement.parentElement).append('<td class="points">'+ point +'</td>');
                break;
            } else {
                if (name == player) {
                    $(e.target.parentElement.parentElement).append('<td class="points">'+ point +'</td>');
                }
            }
        }
        var points = $(".points");
        var sum = 0;
        for (var i = 0; i < points.length; i++) {
             sum += parseInt(points.eq(i).text().replace(/\./g, ""));
        }
        $("#sum").text(sum);
    });
    fade(this)
    return false;
})
void(0);
 
Utoljára egy moderátor szerkesztette:

öreg

Well-Known Member
A reakció pontszáma
1.724
még egy csere lesz:
77.sort erre:
sum += parseInt(points.eq(i).text().replace(".", ""));

elkezdtek megjelenni tizedes értékek, ezt javítja
 

The Devil

New Member
A reakció pontszáma
4
szia!
eddig működött a v66on - most ez is "elszállt"
megoldható h itt is legyen lehetőség a táblázat exportálása forumra?
üdv,Dev
 

öreg

Well-Known Member
A reakció pontszáma
1.724
Hali

eddig működött a v66on - most ez is "elszállt"
Nálam működik (google chrome 89.0.4389.90 ). Ha esetleg leírnád bővebben, milyen hibát tapasztalsz, akkor tudnék segíteni.

megoldható h itt is legyen lehetőség a táblázat exportálása forumra?
Mivel ez nem készít táblázatot, ezért nincs is lehetőség exportálásra:D
Akik használják, azok bedobálják excelbe a számokat, ott lehet belőle csinálni táblázatot meg grafikonokat.
 
Fent