Greasy Fork

pennergame bot botellas 2022 - 2

menu buscador de botellas

目前为 2022-12-01 提交的版本。查看 最新版本

// ==UserScript==
// @name         pennergame bot botellas 2022 - 2
// @namespace    http://tampermonkey.net/
// @version      11.2022.2
// @description  menu buscador de botellas
// @author       NullPointer
// @license      MIT
// @match        https://*/*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant GM_setValue
// @grant GM_getValue
// @grant GM_xmlhttpRequest
// @grant GM.xmlHttpRequest
// @grant GM_addStyle
// ==/UserScript==

(function() {
    'use strict';

    var link = "";
    var url = document.location.href;
    if (url.indexOf("http://www.pennergame") >= 0) {link = "http://www.pennergame.de"}
    if (url.indexOf("http://pennergame") >= 0) {link = "http://pennergame.de"}
    if (url.indexOf("berlin.pennergame.de") >= 0) {link = "http://berlin.pennergame.de"}
    if (url.indexOf("www.berlin.pennergame.de") >= 0) {link = "http://www.berlin.pennergame.de"}
    if (url.indexOf("muenchen.pennergame.de") >= 0) {link = "http://muenchen.pennergame.de"}
    if (url.indexOf("www.muenchen.pennergame.de")>=0) {link = "http://www.muenchen.pennergame.de"}
    if (url.indexOf("koeln.pennergame.de")>=0) {link = "http://koeln.pennergame.de"}
    if (url.indexOf("www.koeln.pennergame.de")>=0) {link = "http://www.koeln.pennergame.de"}
    if (url.indexOf("reloaded.pennergame.de")>=0) {link = "http://reloaded.pennergame.de"}
    if (url.indexOf("www.reloaded.pennergame.de")>=0) {link = "http://www.reloaded.pennergame.de"}
    if (url.indexOf("sylt.pennergame.de")>=0) {link = "http://sylt.pennergame.de"}
    if (url.indexOf("www.sylt.pennergame.de")>=0) {link = "http://www.sylt.pennergame.de"}
    if (url.indexOf("malle.pennergame.de")>=0) {link = "http://malle.pennergame.de"}
    if (url.indexOf("http://halloweeen.pennergame.de")>=0) {link = "http://halloweeen.pennergame.de"}
    if (url.indexOf("vatikan.pennergame.de")>=0) {link = "http://vatikan.pennergame.de"}

    GM_addStyle("input[type=button].formbutton {margin: 4px 8px; padding: 8px; border: 1px solid #0a0; border-radius: 5px; cursor: pointer;} input[type=button].formbutton:hover {border: 1px solid #0c0; color: #fff;}");
    GM_addStyle("input[type=button].formbutton:disabled {color: #888; cursor: default;} input[type=button].formbutton:disabled:hover {border: 1px solid #0a0;}");

    var pgHeader = document.getElementById("header");
    var menu = document.createElement("div");
    menu.setAttribute("style", "position: absolute; top: "+(pgHeader.offsetHeight*1-5)+"px; left: "+(pgHeader.getBoundingClientRect().left*1+360)+"px; z-index: 100; display: block; min-width: 200px; font-size: 10pt; padding: 15px;  background-color: rgb(100, 100, 100, 0.75); border: 1px solid #555; border-radius: 10px;");
    menu.setAttribute("align", "left");
    menu.innerHTML +=
        '<div align="center" style="margin-bottom: 10px;">'+
        '<input id="startBtn" name="startBtn" class="formbutton" type="button" value="Start BOT">'+
        '</div>'+
        '<div id="botStatus" style="font-size: 120%; color: #df2;">&nbsp;</div>'+
        '<div id="out">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Loading...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>';
    document.getElementsByTagName("body")[0].appendChild(menu);

    var botStarted = GM_getValue("botStarted", false);
    if (botStarted) {
        document.getElementById("startBtn").value="Stop BOT";
        _check();
    }
    _bottlecheck();

    document.getElementById("startBtn").addEventListener("click", function() {
        GM_setValue("botStarted", !botStarted);
        location.reload();
    });

    function _check() {
        log("_check");
        if (!botStarted) {
            _status("Stopped!");
            return;
        }
        GM.xmlHttpRequest({
            method: 'GET',
            url: link+'/activities/',
            onload: function(responseDetails) {
                var content = responseDetails.responseText;
                try {
                    var xx = content.split('720">12 Stunden</option>')[1].split('<div class')[0].split('Du bist auf')[1].split(':')[0];
                    // buscando ...
                    var _t = _r(2, 14) * 60 * 1000;// 2 - 15 min
                    _status("Buscando... hasta " + (new Date(new Date().getTime() + _t)).toLocaleTimeString());
                    window.setTimeout(function() {
                        _check();
                    }, _t);
                } catch(e) {
                    try{
                        content.split('von der')[1].split('.')[0];
                        _status("Vaciando carrito...");
                        window.setTimeout(function() {
                            _vaciar();
                        }, 1000);
                    } catch(e) {
                        try {
                            content.split('12 Stunden</option>')[1].split('</form>')[0].split('value="Sammeln gehen"')[1].split('type')[0];
                            _status("Empezando b&uacute;squeda...");
                            window.setTimeout(function() {
                                _buscar();
                            }, 1000);
                        } catch(e) {
                            var s = content.search("gerade einen Angriff durch");
                            if (s != -1) {
                                window.setTimeout(function() {
                                    _status("Est&aacute;s en una pelea " + document.getElementById("counter1").innerHTML);
                                }, 1000);// 1s
                                window.setTimeout(function() {
                                    _check();
                                }, 600000);// 10min
                            }
                        }
                    }
                }
            }
        });
    }

    function _r(min, max) {
        return Math.floor(Math.random() * max) + min;
    }

    function _status(s) {
        document.getElementById("botStatus").innerHTML=s;
    }

    function _bottlecheck() {
        log("_bottlecheck");
        GM.xmlHttpRequest({
            method: 'GET',
            url: link+'/stock/bottle/',
            onload: function(responseDetails) {
                var content = responseDetails.responseText;
                var flaschen = content.split('<td align="left" width="250">')[1].split('Preis:')[0];
                var flaschen1 = flaschen.split('<span>')[1].split(' Pfandflaschen')[0];
                var flaschen2 = flaschen1.replace(/\s/g, "");
                var cent = content.split('zum akuellen Kurs:')[1].split('</b>')[0];
                var cent2 = cent.split('euro;')[1].split(' ')[0];
                var cent3 = cent2.replace(/\,/g, ".");
                var preis = Math.round(flaschen2*cent3)*1/1;
                document.getElementById("out").innerHTML = '<table><tr><td>Botellas &nbsp;</td><td>'+flaschen2+'</td></tr><tr><td>Venta &nbsp;</td><td>'+preis+'&euro;</td></tr></table>';
            }
        });
    }

    function _vaciar() {
        log("_vaciar");
        var x = document.createElement("div");
        x.innerHTML = '<form id="myform" name="myform" action="/activities/bottle/" method="post"><input type="hidden" name="type" value="1"><input type="hidden" name="bottlecollect_pending" value="True"></form>';
        document.getElementsByTagName("body")[0].appendChild(x);
        document.myform.submit();
    }

    function _buscar() {
        log("_buscar");
        var x = document.createElement("div");
        x.innerHTML = '<form id="myform" name="myform" action="/activities/bottle/" method="post"><input type="hidden" name="type" value="1">'+
            '<select name="time" class="dropdown" onchange="FlaschenRechner(this.value)"><option value="10" selected="">10 Minuten</option><option value="30">30 Minuten</option></select>'+
            '<input type="button" class="button_skill" name="Submit2" id="Submit2" onclick="javascript:setupForm(\'/activities/bottle/\')" value="Sammeln gehen">'+
            '<input type="hidden" name="sammeln" value="10"><input type="hidden" name="konzentrieren" value="1">'
            '</form>';
        document.getElementsByTagName("body")[0].appendChild(x);
        document.myform.submit();
    }

    function log(m) {
        console.log((new Date()).toLocaleString()+" - "+m);
    }

})();