您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Bot do gladiatusa na automatyczne chodzenie na wyprawy i lochy
// ==UserScript== // @name Gladiatus AutoBot // @namespace http://tampermonkey.net/ // @version 1.6.11 // @description Bot do gladiatusa na automatyczne chodzenie na wyprawy i lochy // @author Moja osoba // @match *://*.gladiatus.gameforge.com/game/index.php* // @grant none // ==/UserScript== (function () { 'use strict'; let mi_global = { ustawienia: { get: function (name, defvalue) { defvalue = defvalue || 0; this.loadFromLocalStorage(); if (this.tablicaDanych[name] !== undefined) return this.tablicaDanych[name]; return defvalue; }, set: function (name, value) { if (value !== undefined) { this.tablicaDanych[name] = value; this.saveToLocalStorage(); return true; } return false; }, del: function (name) { if (this.tablicaDanych[name] !== undefined) { this.loadFromLocalStorage(); delete this.tablicaDanych[name]; this.saveToLocalStorage(); return true; } return false; }, saveToLocalStorage: function () { let json = JSON.stringify(this.tablicaDanych); return localStorage.setItem("automatyzacja_opcje", json); }, loadFromLocalStorage: function () { let json = localStorage.getItem("automatyzacja_opcje"); if (json !== null) this.tablicaDanych = JSON.parse(json); }, tablicaDanych: {} }, dane: { get: function (name, defvalue) { defvalue = defvalue || 0; this.loadFromLocalStorage(); if (this.tablicaDanych[name] !== undefined) return this.tablicaDanych[name]; return defvalue; }, set: function (name, value) { if (value !== undefined) { this.loadFromLocalStorage(); this.tablicaDanych[name] = value; this.saveToLocalStorage(); return true; } return false; }, del: function (name) { if (this.tablicaDanych[name] !== undefined) { this.loadFromLocalStorage(); delete this.tablicaDanych[name]; this.saveToLocalStorage(); return true; } return false; }, saveToLocalStorage: function () { let json = JSON.stringify(this.tablicaDanych); return localStorage.setItem("mi_dane", json); }, loadFromLocalStorage: function () { let json = localStorage.getItem("mi_dane"); if (json !== null) this.tablicaDanych = JSON.parse(json); }, tablicaDanych: {} }, automatyzacjaAtak: { attack: function (d, b, c, a, e) { if (e === undefined) { e = ""; } jQuery("#errorRow").css({display: "none"}); sendRequest("get", "ajax.php", "mod=location&submod=attack&location=" + b + "&stage=" + c + e + "&premium=" + a, d); }, startFight: function (a, b) { sendRequest("get", "ajax/doDungeonFight.php", "did=" + b + "&posi=" + a); }, wyprawa: function () { setTimeout(function () { mi_global.automatyzacjaAtak.attack(null, mi_global.ustawienia.get("mapa"), mi_global.ustawienia.get("potwor"), 0, ''); }, mi_global.przydatne.getCooldown("cooldown_bar_text_expedition") + mi_global.przydatne.dodatkoweOpoznienie()); }, loch: function () { if (mi_global.przydatne.getCooldown("cooldown_bar_text_dungeon") > 1000) { setTimeout(function () { mi_global.automatyzacjaAtak.loch(); }, mi_global.przydatne.getCooldown("cooldown_bar_text_dungeon")); return; } jQuery.get(mi_global.przydatne.link({ "mod": "dungeon", "loc": mi_global.ustawienia.get("loch") }), function (content) { let poczatek = content.indexOf("startFight"); if (poczatek === -1) { let dif = mi_global.ustawienia.get("loch_trudnosc") === "dif1" ? {"dif1": "1"} : {"dif2": "1"}; jQuery.post(mi_global.przydatne.link({ "mod": "dungeon", "loc": mi_global.ustawienia.get("loch") }), dif); setTimeout(function () { mi_global.automatyzacjaAtak.loch(); }, mi_global.przydatne.getCooldown("cooldown_bar_text_dungeon")); return; } let koniec = content.indexOf(")", poczatek); let informacje = content.substring(poczatek + 12, koniec - 1).split("', '"); let idPotwora = informacje[0]; let idLochu = informacje[1]; if (content.indexOf("Boss") !== -1 && !mi_global.ustawienia.get('boss_atakowany', true)) { var xhttp = new XMLHttpRequest(); xhttp.open("POST", mi_global.przydatne.link({ "mod": "dungeon", "loc": mi_global.ustawienia.get("loch"), "action": "cancelDungeon" }), true); xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xhttp.send("dungeonId=" + idLochu); mi_global.automatyzacjaAtak.loch(); } else { setTimeout(function () { mi_global.automatyzacjaAtak.startFight(idPotwora, idLochu); }, mi_global.przydatne.dodatkoweOpoznienie()); } }); }, automat: function () { setTimeout(function () { let cde = document.getElementById("cooldown_bar_text_expedition"); let cdd = document.getElementById("cooldown_bar_text_dungeon"); if (cde !== null && cdd !== null && cde.innerHTML !== '-' && cdd.innerHTML !== '-') { if (mi_global.ustawienia.get('wyprawa_aktywny', false)) mi_global.automatyzacjaAtak.wyprawa(); if (mi_global.ustawienia.get('loch_aktywny', false)) mi_global.automatyzacjaAtak.loch(); } else setTimeout(mi_global.automatyzacjaAtak.automat, 10000); }, 2000); } }, przydatne: { link: function (x, path) { let url = document.location.href; let sh = (url.match(/sh=[0-9a-fA-F]+/i)) ? url.match(/sh=([0-9a-fA-F]+)/i)[1] : null; if (!path) path = "index.php"; let link = path; let front = "?"; for (let i in x) { link += front + i + "=" + x[i]; if (front == "?") front = "&"; } return link + front + "sh=" + sh; }, getCooldown: function (id) { let button = document.getElementById(id); // Check no button if (!button) return; // Cooldown let cooldown = button.textContent.match(/(\d+):(\d+):(\d+)/); // Check id cooldown if (cooldown) { // Calculate cooldown cooldown = (parseInt(cooldown[1], 10) * 60 * 60 + parseInt(cooldown[2], 10) * 60 + parseInt(cooldown[3], 10)) * 1000; // Return a cooldown return cooldown; } else { return 100; } }, fireMouseEvent: function (type, elem, centerX, centerY) { let evt = document.createEvent('MouseEvents'); evt.initMouseEvent(type, true, true, window, 1, 1, 1, centerX, centerY, false, false, false, false, 0, elem); elem.dispatchEvent(evt); }, triggerDragAndDrop: function (itemToDrag, itemToDrop) { // calculate positions let pos = itemToDrag.getBoundingClientRect(); let center1X = Math.floor((pos.left + pos.right) / 2); let center1Y = Math.floor((pos.top + pos.bottom) / 2); pos = itemToDrop.getBoundingClientRect(); let center2X = Math.floor((pos.left + pos.right) / 2); let center2Y = Math.floor((pos.top + pos.bottom) / 2); // mouse over dragged element and mousedown mi_global.przydatne.fireMouseEvent('mousemove', itemToDrag, center1X, center1Y); mi_global.przydatne.fireMouseEvent('mouseenter', itemToDrag, center1X, center1Y); mi_global.przydatne.fireMouseEvent('mouseover', itemToDrag, center1X, center1Y); mi_global.przydatne.fireMouseEvent('mousedown', itemToDrag, center1X, center1Y); // start dragging process over to drop target mi_global.przydatne.fireMouseEvent('dragstart', itemToDrag, center1X, center1Y); mi_global.przydatne.fireMouseEvent('drag', itemToDrag, center1X, center1Y); mi_global.przydatne.fireMouseEvent('mousemove', itemToDrag, center1X, center1Y); mi_global.przydatne.fireMouseEvent('drag', itemToDrag, center2X, center2Y); mi_global.przydatne.fireMouseEvent('mousemove', itemToDrop, center2X, center2Y); // trigger dragging process on top of drop target mi_global.przydatne.fireMouseEvent('mouseenter', itemToDrop, center2X, center2Y); mi_global.przydatne.fireMouseEvent('dragenter', itemToDrop, center2X, center2Y); mi_global.przydatne.fireMouseEvent('mouseover', itemToDrop, center2X, center2Y); mi_global.przydatne.fireMouseEvent('dragover', itemToDrop, center2X, center2Y); // release dragged element on top of drop target mi_global.przydatne.fireMouseEvent('drop', itemToDrop, center2X, center2Y); mi_global.przydatne.fireMouseEvent('dragend', itemToDrag, center2X, center2Y); mi_global.przydatne.fireMouseEvent('mouseup', itemToDrag, center2X, center2Y); return true; }, wyciagnijZPaczek: function (link, callback, cena, nrZakladek = '01234567', zmienStrone = true) { if (zmienStrone) { let akcje = "mi_global.przydatne.wyciagnijZPaczek('" + link + "', " + callback + ", " + cena + ", '" + nrZakladek + "', false)"; localStorage.setItem("automatyzacja_akcje", akcje); window.location.href = link; return; } let paczki = document.querySelectorAll("#packages .packageItem div[class*='item-i-']"); let pos = paczki[0].getBoundingClientRect(); let center1X = Math.floor((pos.left + pos.right) / 2); let center1Y = Math.floor((pos.top + pos.bottom) / 2); let inv = document.querySelector('#inv'); pos = inv.getBoundingClientRect(); let center2X = Math.floor((pos.left + pos.right) / 2); let center2Y = Math.floor((pos.top + pos.bottom) / 2); let zakladki = document.querySelectorAll("a[data-available='true']"); let wolne = null; mi_global.przydatne.fireMouseEvent('mousemove', paczki[0], center1X, center1Y); mi_global.przydatne.fireMouseEvent('mouseenter', paczki[0], center1X, center1Y); mi_global.przydatne.fireMouseEvent('mouseover', paczki[0], center1X, center1Y); mi_global.przydatne.fireMouseEvent('mousedown', paczki[0], center1X, center1Y); mi_global.przydatne.fireMouseEvent('dragstart', paczki[0], center1X, center1Y); mi_global.przydatne.fireMouseEvent('drag', paczki[0], center1X, center1Y); mi_global.przydatne.fireMouseEvent('mousemove', paczki[0], center1X, center1Y); mi_global.przydatne.fireMouseEvent('drag', paczki[0], center2X, center2Y); mi_global.przydatne.fireMouseEvent('mousemove', inv, center2X, center2Y); wolne = document.querySelector("#inv div.image-grayed.active:not([class*='item-i-'])"); if (wolne === null) { mi_global.przydatne.fireMouseEvent('drop', inv, center2X, center2Y); mi_global.przydatne.fireMouseEvent('dragend', paczki[0], center2X, center2Y); mi_global.przydatne.fireMouseEvent('mouseup', paczki[0], center2X, center2Y); if (nrZakladek === '') { mi_global.przydatne.wlasnyAlert("Brak miejsca w ekwipunku", "Paczki"); return false; } setTimeout(function () { mi_global.przydatne.fireMouseEvent('click', zakladki[nrZakladek.slice(0, 1)], 0, 0); nrZakladek = nrZakladek.slice(1); mi_global.przydatne.wyciagnijZPaczek(link, callback, cena, nrZakladek, false); }, 250); } else { pos = wolne.getBoundingClientRect(); center2X = Math.floor((pos.left + pos.right) / 2); center2Y = Math.floor((pos.top + pos.bottom) / 2); mi_global.przydatne.fireMouseEvent('drag', paczki[0], center2X, center2Y); mi_global.przydatne.fireMouseEvent('mousemove', wolne, center2X, center2Y); mi_global.przydatne.fireMouseEvent('drop', wolne, center2X, center2Y); mi_global.przydatne.fireMouseEvent('dragend', paczki[0], center2X, center2Y); mi_global.przydatne.fireMouseEvent('mouseup', paczki[0], center2X, center2Y); let przedmioty = document.querySelectorAll("#inv div[class*='item-i-']"); let wsp = {x: 0, y: 0}; wsp.x = przedmioty[przedmioty.length - 1].style.left.slice(0, -2) / 32 + 1; wsp.y = przedmioty[przedmioty.length - 1].style.top.slice(0, -2) / 32 + 1; callback.apply(this, [wsp.x, wsp.y, cena]); } }, getAllUrlParams: function (url) { let queryString = url ? url.split('?')[1] : window.location.search.slice(1); let obj = {}; if (queryString) { queryString = queryString.split('#')[0]; let arr = queryString.split('&'); for (let i = 0; i < arr.length; i++) { let a = arr[i].split('='); let paramNum = undefined; let paramName = a[0].replace(/\[\d*\]/, function (v) { paramNum = v.slice(1, -1); return ''; }); let paramValue = typeof (a[1]) === 'undefined' ? true : a[1]; paramName = paramName.toLowerCase(); paramValue = paramValue.toLowerCase(); if (obj[paramName]) { if (typeof obj[paramName] === 'string') { obj[paramName] = [obj[paramName]]; } if (typeof paramNum === 'undefined') { obj[paramName].push(paramValue); } else { obj[paramName][paramNum] = paramValue; } } else { obj[paramName] = paramValue; } } } return obj; }, wykonajAkcje: function () { setTimeout(function () { let akcje = localStorage.getItem("automatyzacja_akcje"); if (akcje !== null) { try { eval(akcje); localStorage.removeItem("automatyzacja_akcje"); return true; } catch (e) { console.error(e); localStorage.removeItem("automatyzacja_akcje"); return false; } } return false; }, 1000); }, dodatkoweOpoznienie: function (min, max) { min = min || mi_global.ustawienia.get('min_opoznienie', 5); max = max || mi_global.ustawienia.get('max_opoznienie', 10); let dodatkoweOpoznienie = Math.random() * (max * 1 - min * 1) + min * 1; dodatkoweOpoznienie *= 1000; return Math.round(dodatkoweOpoznienie); }, wlasnyAlert: function (wiadomosc, tytul) { if (!tytul) tytul = 'Wiadomość'; if (!wiadomosc) wiadomosc = 'Nie ma nic do wyswietlenia'; jQuery('<div></div>').html(wiadomosc).dialog({ title: tytul, resizable: false, dialogClass: 'no-close', buttons: { 'Ok': function () { jQuery(this).dialog('close'); } } }); } }, interfejs: { dodajInterfejs: function () { let smf = document.querySelector("#submenufooter"); if (smf !== null) smf.innerHTML = null; jQuery('#submenufooter').prepend('<style>#submenufooter{height: auto !important;}input[type=\'number\'].menuitem{width: 156px;}.menutext{color: #bfae54; text-align: center;}.nextsection{margin-bottom: 30px;}.eq_table{margin-left: auto; margin-right: auto;}.eq_table td{border: 1px #af8e50 solid;}.hidden{display: none;}</style><script>function zwinRozwin(elem, ostatni=false){elem.nextElementSibling.classList.toggle(\'hidden\'); if (!ostatni) elem.nextElementSibling.classList.toggle(\'nextsection\'); let txt=elem.innerText; let lastChar=txt.slice(-2).split(""); elem.innerText=txt.slice(0, -2) + lastChar[1] + lastChar[0]; let zakladki=JSON.parse(localStorage.getItem("mi_pokazZakladki")); zakladki[elem.title]=!zakladki[elem.title]; localStorage.setItem("mi_pokazZakladki", JSON.stringify(zakladki));}</script><div style="margin-top: 20px; text-align: center; padding-top: 10px; padding-bottom: 10px;" class="submenu advanced_sub_menu" id="moj_interfejs"> <form onsubmit="mi_global.interfejs.zapiszDane()" action="javascript:void(0);" novalidate> <span title="opoznienie" class="menuitem" onclick="zwinRozwin(this)"><b>Wybór opóźnienia \\/</b></span> <section class="hidden"> <span class="menutext">Minimalne opóźnienie (s)</span> <input type="number" min="5" class="menuitem" name="mi_min_opoznienie"/> <span class="menutext">Maksymalne opóźnienie (s)</span> <input type="number" min="5" class="menuitem" name="mi_max_opoznienie"/> </section> <span title="wyprawy" class="menuitem underworld-hide" onclick="zwinRozwin(this)">Wybór wyprawa \\/</span> <section class="hidden"> <span class="menutext">Wybór mapy</span> <select class="menuitem" name="mi_mapa_wyprawa"> <option value="0">1</option> <option value="1">2</option> <option value="2">3</option> <option value="3">4</option> <option value="4">5</option> <option value="5">6</option> <option value="6">7</option> <option value="7">8</option> </select> <span class="menutext">Wybór potwora</span> <select class="menuitem" name="mi_potwor_wyprawa"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> <div class="menuitem"> <input type="checkbox" name="mi_aktywny_wyprawa"/> <span>Aktywne wyprawy</span> </div></section> <span title="lochy" class="menuitem underworld-hide" onclick="zwinRozwin(this)">Wybór lochy \\/</span> <section class="hidden"> <span class="menutext">Wybór mapy</span> <select class="menuitem" name="mi_mapa_loch"> <option value="0">1</option> <option value="1">2</option> <option value="2">3</option> <option value="3">4</option> <option value="4">5</option> <option value="5">6</option> <option value="6">7</option> <option value="7">8</option> </select> <span class="menutext">Wybór poziomu</span> <select class="menuitem" name="mi_trudnosc_loch"> <option value="dif1">normalny</option> <option value="dif2">zaawansowany</option> </select> <div class="menuitem"><input type="checkbox" name="mi_atakowany_boss"/> <span>Atakowanie bossa</span></div><div class="menuitem"><input type="checkbox" name="mi_aktywny_loch"/> <span>Aktywne lochy</span></div></section> <span title="event" class="menuitem underworld-hide" onclick="zwinRozwin(this)">Wybór event \\/</span> <section class="hidden"> <span class="menutext">Wybór potwora</span> <select class="menuitem" name="mi_potwor_event"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> <div class="menuitem"><input type="checkbox" name="mi_aktywny_event"/> <span>Aktywne eventy</span></div></section> <span title="jedzenie" class="menuitem underworld-hide" onclick="zwinRozwin(this)">Automatyczne jedzenie \\/</span> <section class="hidden"> <span class="menutext">Minimalny procent życia</span> <input type="number" min="1" max="99" class="menuitem" name="mi_min_zycie"/> <span class="menutext">Docelowy procent życia</span> <input type="number" min="1" max="99" class="menuitem" name="mi_docelowe_zycie"/> <div class="menuitem"><input type="checkbox" name="mi_aktywny_zycie"/> <span>Aktywne jedzenie</span></div><div class="menuitem"><input type="checkbox" name="mi_aktywny_jedzenie_wylacz"/> <span>Wyłącz wyprawy i arenę przy braku jedzenia</span> </div></section> <span title="arena-ct" class="menuitem" onclick="zwinRozwin(this)">Arena CT \\/</span> <section class="hidden"> <span class="menutext">Strategia arena</span> <select class="menuitem" name="mi_dobor_arena"> <option value="0">Losowo</option> <option value="1">Najwyżej w rankingu</option> <option value="3">Najniższy lv</option> </select> <div class="menuitem"><input type="checkbox" name="mi_arena_provinciarum"/> <span>Arena Provinciarum</span> </div><div class="menuitem"><input type="checkbox" name="mi_aktywny_arena"/> <span>Aktywna arena</span></div><span class="menutext">Strategia CT</span> <select class="menuitem" name="mi_dobor_ct"> <option value="0">Losowo</option> <option value="1">Najwyżej w rankingu</option> <option value="3">Najniższy lv</option> </select> <div class="menuitem"><input type="checkbox" name="mi_ct_provinciarum"/> <span>Circus Provinciarum</span> </div><div class="menuitem"><input type="checkbox" name="mi_aktywny_ct"/> <span>Aktywne CT</span></div></section> <span title="roztapiarka" class="menuitem" onclick="zwinRozwin(this)">Roztapiarka \\/</span> <section class="hidden"> <span class="menutext">Zakładki do roztopienia</span> <table class="eq_table"> <tr> <td><input type="checkbox" name="mi_roztapiarka_1"/><br/><span class="menutext">I</span></td><td><input type="checkbox" name="mi_roztapiarka_2"/><br/><span class="menutext">II</span></td><td><input type="checkbox" name="mi_roztapiarka_3"/><br/><span class="menutext">III</span></td><td><input type="checkbox" name="mi_roztapiarka_4"/><br/><span class="menutext">IV</span></td></tr><tr> <td><input type="checkbox" name="mi_roztapiarka_5"/><br/><span class="menutext">V</span></td><td><input type="checkbox" name="mi_roztapiarka_6"/><br/><span class="menutext">VI</span></td><td><input type="checkbox" name="mi_roztapiarka_7"/><br/><span class="menutext">VII</span></td><td><input type="checkbox" name="mi_roztapiarka_8"/><br/><span class="menutext">VIII</span></td></tr></table> <div class="menuitem"><input type="checkbox" name="mi_aktywny_roztapiarka"/> <span>Aktywne roztapianie</span></div></section> <span title="paczkowanie" class="menuitem" onclick="zwinRozwin(this)">Paczkowanie \\/</span> <section class="hidden"> <span class="menutext">Co jaki czas sprawdzać (min)</span> <input type="number" min="0" class="menuitem" name="mi_paczki_czas"/> <span class="menutext">Przy jakiej ilości złota kupić</span> <input type="number" min="0" class="menuitem" name="mi_paczki_zloto"/> <span class="menutext">Od jakiej ceny kupować</span> <input type="number" min="0" class="menuitem" name="mi_paczki_min_zloto"/> <div class="menuitem"><input type="checkbox" name="mi_paczki_odstawianie"/> <span>Odstawianie paczek</span> </div><div class="menuitem"><input type="checkbox" name="mi_aktywny_paczki"/> <span>Aktywne paczki</span></div><div class="menuitem" onclick="mi_global.paczki.wyborGraczy.utworzenieDialogu()">Wybór graczy</div></section> <span title="zadania" class="menuitem ostatni" onclick="zwinRozwin(this, true)">Zadania \\/</span> <section class="hidden"> <span class="menutext">Typy zadań</span> <table class="eq_table"> <tr> <td><span class="menutext">Arena</span></td><td><input type="checkbox" name="mi_zadania_arena"/></td></tr><tr> <td><span class="menutext">CT</span></td><td><input type="checkbox" name="mi_zadania_grouparena"/></td></tr><tr> <td><span class="menutext">Walka</span></td><td><input type="checkbox" name="mi_zadania_combat"/></td></tr><tr> <td><span class="menutext">Wyprawy</span></td><td><input type="checkbox" name="mi_zadania_expedition"/></td></tr><tr> <td><span class="menutext">Lochy</span></td><td><input type="checkbox" name="mi_zadania_dungeon"/></td></tr><tr> <td><span class="menutext">Praca</span></td><td><input type="checkbox" name="mi_zadania_work"/></td></tr><tr> <td><span class="menutext">Przedmioty</span></td><td><input type="checkbox" name="mi_zadania_items"/></td></tr><tr> <td></td><td></td></tr><tr> <td><span class="menutext">"Z rzędu"</span></td><td><input type="checkbox" name="mi_zadania_rzad"/></td></tr><tr> <td><span class="menutext">Czasowe</span></td><td><input type="checkbox" name="mi_zadania_czas"/></td></tr></table> <div class="menuitem"><input type="checkbox" name="mi_aktywny_zadania"/> <span>Aktywne zadania</span></div></section> <input type="submit" class="menuitem" style="margin-top: 5px" value="Zapisz"> <input type="button" class="menuitem" style="margin-top: 10px" onclick="mi_global.interfejs.zatrzymajWszystko()" value="Zatrzymaj wszystko"> <input type="button" class="menuitem" style="margin-top: 10px" onclick="mi_global.interfejs.resetUstawien()" value="Reset"> </form> <a type="button" class="menuitem" style="margin-top: 10px" href="https://drive.google.com/file/d/1Cxrlz8XtVll-p0biWTEEYnN-uLsykq3r/view" target="_blank">Pomoc</a> <span class="menutext" style="font-size: 10px">Wersja: 1.6.11</span></div>'); mi_global.interfejs.ukonczDodawanieInterfejsu(); }, ukonczDodawanieInterfejsu: function () { if (document.querySelector("#moj_interfejs") === null) { setTimeout(mi_global.interfejs.ukonczDodawanieInterfejsu, 100); } else { let zakladki_roztapiarki = document.querySelectorAll("input[name*='mi_roztapiarka_']"); zakladki_roztapiarki.forEach(function (value, index) { value.addEventListener("click", function () { if (value.checked === true) if (!confirm("Jesteś pewien dodania zakładki numer " + parseInt(index + 1) + "? Pamiętaj, że wszyskie przedmioty z niej zostaną usunięte!!!")) this.checked = false; }); }); let nazwyMap = document.querySelectorAll("#submenu2 a:not(.glow)"); if (nazwyMap.length > 1) { document.getElementsByName("mi_mapa_wyprawa")[0].innerHTML = null; document.getElementsByName("mi_mapa_loch")[0].innerHTML = null; } for (let i = 1; i < nazwyMap.length; i++) { let op = document.createElement('option'); let poczatekNr = nazwyMap[i].href.indexOf("loc=") + 4; let koniecNr = nazwyMap[i].href.indexOf("&", poczatekNr); op.value = nazwyMap[i].href.substr(poczatekNr, koniecNr - poczatekNr); op.innerHTML = nazwyMap[i].innerHTML; document.getElementsByName("mi_mapa_wyprawa")[0].appendChild(op.cloneNode(true)); document.getElementsByName("mi_mapa_loch")[0].appendChild(op); } if (nazwyMap.length > 1) { this.pobierzDane(); this.ukryjZakladki(); this.hadesoweZakladki(); } } }, pobierzDane: function () { document.getElementsByName("mi_mapa_wyprawa")[0].value = mi_global.ustawienia.get('mapa'); document.getElementsByName("mi_mapa_loch")[0].value = mi_global.ustawienia.get('loch'); document.getElementsByName("mi_potwor_wyprawa")[0].value = mi_global.ustawienia.get('potwor', 1); document.getElementsByName("mi_trudnosc_loch")[0].value = mi_global.ustawienia.get('loch_trudnosc', 'dif1'); document.getElementsByName("mi_aktywny_wyprawa")[0].checked = mi_global.ustawienia.get('wyprawa_aktywny'); document.getElementsByName("mi_aktywny_loch")[0].checked = mi_global.ustawienia.get('loch_aktywny', false); document.getElementsByName("mi_atakowany_boss")[0].checked = mi_global.ustawienia.get('boss_atakowany', true); document.getElementsByName("mi_potwor_event")[0].value = mi_global.ustawienia.get('event_potwor', 1); document.getElementsByName("mi_aktywny_event")[0].checked = mi_global.ustawienia.get('event_aktywny', false); document.getElementsByName("mi_aktywny_zycie")[0].checked = mi_global.ustawienia.get('jedzenie_aktywny'); document.getElementsByName("mi_aktywny_jedzenie_wylacz")[0].checked = mi_global.ustawienia.get('brak_jedzenia_aktywny'); document.getElementsByName("mi_min_zycie")[0].value = mi_global.ustawienia.get('min_zycia', 20); document.getElementsByName("mi_docelowe_zycie")[0].value = mi_global.ustawienia.get('docelowe_zycie', 21); document.getElementsByName("mi_min_opoznienie")[0].value = mi_global.ustawienia.get('min_opoznienie', 5); document.getElementsByName("mi_max_opoznienie")[0].value = mi_global.ustawienia.get('max_opoznienie', 10); document.getElementsByName("mi_dobor_arena")[0].value = mi_global.ustawienia.get('arena_dobor', 0); document.getElementsByName("mi_dobor_ct")[0].value = mi_global.ustawienia.get('ct_dobor', 0); document.getElementsByName("mi_aktywny_arena")[0].checked = mi_global.ustawienia.get('arena_aktywny', false); document.getElementsByName("mi_aktywny_ct")[0].checked = mi_global.ustawienia.get('ct_aktywny', false); document.getElementsByName("mi_arena_provinciarum")[0].checked = mi_global.ustawienia.get('arena_provinciarum', false); document.getElementsByName("mi_ct_provinciarum")[0].checked = mi_global.ustawienia.get('ct_provinciarum', false); document.getElementsByName("mi_aktywny_roztapiarka")[0].checked = mi_global.ustawienia.get('roztapiarka_aktywny', false); document.getElementsByName("mi_paczki_czas")[0].value = mi_global.ustawienia.get('paczki_czas', 10); document.getElementsByName("mi_paczki_zloto")[0].value = mi_global.ustawienia.get('paczki_zloto', 500000); document.getElementsByName("mi_paczki_odstawianie")[0].checked = mi_global.ustawienia.get('paczki_odstawianie', false); document.getElementsByName("mi_paczki_min_zloto")[0].value = mi_global.ustawienia.get('paczki_min_zloto', 100000); document.getElementsByName("mi_aktywny_paczki")[0].checked = mi_global.ustawienia.get('paczki_aktywny', false); document.getElementsByName("mi_aktywny_zadania")[0].checked = mi_global.ustawienia.get('zadania_aktywny', false); let zakladki_roztapiarki = document.querySelectorAll("input[name*='mi_roztapiarka_']"); zakladki_roztapiarki.forEach(function (value, index) { value.checked = mi_global.ustawienia.get('roztapiarka_zakladka_' + parseInt(index + 1), false); }); let typyZadanInterfejs = document.querySelectorAll("input[name*='mi_zadania_']"); let typyZadanZapisane = mi_global.ustawienia.get("zadania_typy", {}); typyZadanInterfejs.forEach(function (value) { value.checked = typyZadanZapisane[value.name.replace("mi_zadania_", "")]; }); }, zapiszDane: function () { try { mi_global.ustawienia.set('mapa', document.getElementsByName("mi_mapa_wyprawa")[0].value); mi_global.ustawienia.set('loch', document.getElementsByName("mi_mapa_loch")[0].value); mi_global.ustawienia.set('potwor', document.getElementsByName("mi_potwor_wyprawa")[0].value); mi_global.ustawienia.set('loch_trudnosc', document.getElementsByName("mi_trudnosc_loch")[0].value); mi_global.ustawienia.set('arena_dobor', document.getElementsByName("mi_dobor_arena")[0].value); mi_global.ustawienia.set('ct_dobor', document.getElementsByName("mi_dobor_ct")[0].value); mi_global.ustawienia.set('event_potwor', document.getElementsByName("mi_potwor_event")[0].value); mi_global.ustawienia.set('wyprawa_aktywny', document.getElementsByName("mi_aktywny_wyprawa")[0].checked); mi_global.ustawienia.set('loch_aktywny', document.getElementsByName("mi_aktywny_loch")[0].checked); mi_global.ustawienia.set('boss_atakowany', document.getElementsByName("mi_atakowany_boss")[0].checked); mi_global.ustawienia.set('jedzenie_aktywny', document.getElementsByName("mi_aktywny_zycie")[0].checked); mi_global.ustawienia.set('brak_jedzenia_aktywny', document.getElementsByName("mi_aktywny_jedzenie_wylacz")[0].checked); mi_global.ustawienia.set('arena_aktywny', document.getElementsByName("mi_aktywny_arena")[0].checked); mi_global.ustawienia.set('ct_aktywny', document.getElementsByName("mi_aktywny_ct")[0].checked); mi_global.ustawienia.set('paczki_aktywny', document.getElementsByName("mi_aktywny_paczki")[0].checked); mi_global.ustawienia.set('roztapiarka_aktywny', document.getElementsByName("mi_aktywny_roztapiarka")[0].checked); mi_global.ustawienia.set('zadania_aktywny', document.getElementsByName("mi_aktywny_zadania")[0].checked); mi_global.ustawienia.set('event_aktywny', document.getElementsByName("mi_aktywny_event")[0].checked); mi_global.ustawienia.set('arena_provinciarum', document.getElementsByName("mi_arena_provinciarum")[0].checked); mi_global.ustawienia.set('ct_provinciarum', document.getElementsByName("mi_ct_provinciarum")[0].checked); mi_global.ustawienia.set('paczki_czas', document.getElementsByName("mi_paczki_czas")[0].value); mi_global.ustawienia.set('paczki_zloto', document.getElementsByName("mi_paczki_zloto")[0].value); mi_global.ustawienia.set('paczki_min_zloto', document.getElementsByName("mi_paczki_min_zloto")[0].value); mi_global.ustawienia.set('paczki_odstawianie', document.getElementsByName("mi_paczki_odstawianie")[0].checked); mi_global.ustawienia.set('min_zycia', document.getElementsByName("mi_min_zycie")[0].value); if (document.getElementsByName("mi_min_zycie")[0].value * 1 >= document.getElementsByName("mi_docelowe_zycie")[0].value * 1) mi_global.ustawienia.set('docelowe_zycie', document.getElementsByName("mi_min_zycie")[0].value * 1 + 1); else mi_global.ustawienia.set('docelowe_zycie', document.getElementsByName("mi_docelowe_zycie")[0].value); mi_global.ustawienia.set('min_opoznienie', document.getElementsByName("mi_min_opoznienie")[0].value); if (document.getElementsByName("mi_min_opoznienie")[0].value * 1 > document.getElementsByName("mi_max_opoznienie")[0].value * 1) mi_global.ustawienia.set('max_opoznienie', document.getElementsByName("mi_min_opoznienie")[0].value); else mi_global.ustawienia.set('max_opoznienie', document.getElementsByName("mi_max_opoznienie")[0].value); let zakladki_roztapiarki = document.querySelectorAll("input[name*='mi_roztapiarka_']"); zakladki_roztapiarki.forEach(function (value, index) { mi_global.ustawienia.set('roztapiarka_zakladka_' + parseInt(index + 1), value.checked); }); let zadaniaTypyJSON = {}; let typyZadanInterfejs = document.querySelectorAll("input[name*='mi_zadania_']"); typyZadanInterfejs.forEach(function (value) { zadaniaTypyJSON[value.name.replace("mi_zadania_", "")] = value.checked; }); mi_global.ustawienia.set('zadania_typy', zadaniaTypyJSON); location.reload(); } catch (e) { zglos(e); } }, resetUstawien: function () { if (confirm("Czy na pewno chcesz zresetować ustawienia?")) { localStorage.removeItem("automatyzacja_jedzenie"); localStorage.removeItem("automatyzacja_opcje"); localStorage.removeItem("mi_dane"); localStorage.removeItem("mi_ostatni_ct"); localStorage.removeItem("mi_ostatni_arena"); localStorage.removeItem("mi_pokazZakladki"); localStorage.removeItem("automatyzacja_akcje"); location.reload(); } }, zatrzymajWszystko: function () { mi_global.ustawienia.set('wyprawa_aktywny', false); mi_global.ustawienia.set('loch_aktywny', false); mi_global.ustawienia.set('jedzenie_aktywny', false); mi_global.ustawienia.set('arena_aktywny', false); mi_global.ustawienia.set('ct_aktywny', false); mi_global.ustawienia.set('paczki_aktywny', false); mi_global.ustawienia.set('roztapiarka_aktywny', false); mi_global.ustawienia.set('zadania_aktywny', false); mi_global.ustawienia.set('event_aktywny', false); location.reload(); }, ukryjZakladki: function () { let zakladki = JSON.parse(localStorage.getItem("mi_pokazZakladki")); if (zakladki !== null) { for (let sekcja in zakladki) { if (zakladki[sekcja]) { let elem = document.querySelector('#moj_interfejs span.menuitem[title=' + sekcja + ']'); elem.nextElementSibling.classList.toggle('hidden'); if (!elem.classList.contains("ostatni")) elem.nextElementSibling.classList.toggle('nextsection'); let txt = elem.innerText; let lastChar = txt.slice(-2).split(""); elem.innerText = txt.slice(0, -2) + lastChar[1] + lastChar[0]; } } } else { zakladki = {}; let sekcjeWMenu = document.querySelectorAll("#moj_interfejs span.menuitem"); for (let i = 0; i < sekcjeWMenu.length; i++) { zakladki[sekcjeWMenu[i].title] = false; } localStorage.setItem("mi_pokazZakladki", JSON.stringify(zakladki)); } }, hadesoweZakladki: function () { let ukryj = document.querySelectorAll('.underworld #moj_interfejs .underworld-hide'); for (let i = 0; i < ukryj.length; i++) { const ukryjElement = ukryj[i]; ukryjElement.classList.add('inactive'); } let pokaz = document.querySelectorAll('.underworld #moj_interfejs .underworld-show'); for (let i = 0; i < pokaz.length; i++) { const pokazElement = pokaz[i]; pokazElement.classList.remove('inactive'); } let ukryte = document.querySelectorAll('#moj_interfejs .inactive'); for (let i = 0; i < ukryte.length; i++) { const ukryteElement = ukryte[i]; ukryteElement.onclick = function () { mi_global.przydatne.wlasnyAlert("Nie dostępne w aktualnej lokalizacji. Pójdź do hadesu lub wróć do normalnego świata.") }; ukryteElement.nextElementSibling.style.display = "none"; } } }, jedzenie: { jedzenie: function (idPrzedmiotu, numerInwentarza, wartoscLeczenia) { this.idPrzedmiotu = idPrzedmiotu; this.numerInwentarza = numerInwentarza; this.wartoscLeczenia = wartoscLeczenia; }, listaJedzenia: [], zapiszDoPamieciLokalnej: function () { let json = JSON.stringify(this.listaJedzenia); return localStorage.setItem("automatyzacja_jedzenie", json); }, wczytajZPamieciLokalnej: function () { let json = localStorage.getItem("automatyzacja_jedzenie"); if (json !== null) this.listaJedzenia = JSON.parse(json); }, szukajJedzenia: function () { try { mi_global.jedzenie.listaJedzenia = []; let zakladki = document.querySelectorAll("a[data-available='true']"); if (zakladki.length === 0 || mi_global.przydatne.getAllUrlParams().mod === "packages") { let akcje = "mi_global.jedzenie.szukajJedzenia();"; localStorage.setItem("automatyzacja_akcje", akcje); window.location.href = mi_global.przydatne.link({"mod": "overview"}); return; } zakladki.forEach(function (value, index) { mi_global.przydatne.fireMouseEvent("click", value, 0, 0); document.getElementById("inv").querySelectorAll("div[class*='item-i-7']").forEach(function (value) { if (value.attributes["data-tooltip"].value.match(/Cervisia/g) === null) { let leczenie = 0; let tooltip = JSON.parse(value.dataset.tooltip); if (tooltip[0][2][0].match(/\+\d+/i)) { leczenie += parseInt(tooltip[0][1][0].match(/(\d+)/i)[0]); } else if (tooltip[0][3][0].match(/\+\d+/i)) { leczenie += parseInt(tooltip[0][2][0].match(/(\d+)/i)[0]); } for (let i = 0; i < parseInt(value.attributes["data-amount"].value); i++) { let jedzenie = new mi_global.jedzenie.jedzenie(value.attributes["data-item-id"].value, index, leczenie); let len = mi_global.jedzenie.listaJedzenia.length; for (let i = 0; i < mi_global.jedzenie.listaJedzenia.length; i++) { if (parseInt(jedzenie["wartoscLeczenia"]) > parseInt(mi_global.jedzenie.listaJedzenia[i]["wartoscLeczenia"])) { mi_global.jedzenie.listaJedzenia.splice(i, 0, jedzenie); break; } } if (mi_global.jedzenie.listaJedzenia.length === len) mi_global.jedzenie.listaJedzenia.push(jedzenie); } } }) }); mi_global.jedzenie.zapiszDoPamieciLokalnej(); if (document.querySelector("#mi_panel") !== null) mi_global.jedzenie.panelInformacji.odswiezDane(); } catch (e) { zglos(e); } }, jedz: function (jedzenie) { if (jedzenie == null) { return; } if (mi_global.przydatne.getAllUrlParams().mod !== "overview" && (mi_global.przydatne.getAllUrlParams().doll !== "1") || mi_global.przydatne.getAllUrlParams().doll === undefined) { let akcje = "mi_global.jedzenie.jedz(new mi_global.jedzenie.jedzenie(\"" + jedzenie["idPrzedmiotu"] + "\", " + jedzenie["numerInwentarza"] + ", \"" + jedzenie["wartoscLeczenia"] + "\"));"; localStorage.setItem("automatyzacja_akcje", akcje); window.location.href = mi_global.przydatne.link({"mod": "overview", "doll": 1}); return; } mi_global.jedzenie.wczytajZPamieciLokalnej(); let zakladki = document.querySelectorAll("a[data-available='true']"); mi_global.przydatne.fireMouseEvent('click', zakladki[jedzenie["numerInwentarza"]], 0, 0); let przedmiot = document.getElementById("inv").querySelector("div[class*='item-i-7'][data-item-id='" + parseInt(jedzenie["idPrzedmiotu"]) + "']"); let postac = document.getElementById("avatar").querySelector("div[class*='ui-droppable']"); //Usuwanie z listy let index = -1; mi_global.jedzenie.listaJedzenia.forEach(function (value, index2) { if (value.idPrzedmiotu === jedzenie.idPrzedmiotu) index = index2; }); if (index > -1) { mi_global.jedzenie.listaJedzenia.splice(index, 1); } mi_global.jedzenie.zapiszDoPamieciLokalnej(); if (przedmiot !== null && postac !== null) mi_global.przydatne.triggerDragAndDrop(przedmiot, postac); mi_global.jedzenie.panelInformacji.odswiezDane(); setTimeout(function () { if (parseInt(document.getElementById("char_leben").innerText.match(/\d+/g)[0]) < parseInt(mi_global.ustawienia.get("docelowe_zycie", 21))) mi_global.jedzenie.jedz(mi_global.jedzenie.wybierzPrzedmiot()); }, 1000); }, wybierzPrzedmiot: function () { mi_global.jedzenie.wczytajZPamieciLokalnej(); if (mi_global.jedzenie.listaJedzenia.length <= 0) { let ilosc_szukan = mi_global.dane.get("ilosc_szukan", 1); if (ilosc_szukan > 0) { mi_global.dane.set("ilosc_szukan", mi_global.dane.get("ilosc_szukan", 1) - 1); mi_global.jedzenie.szukajJedzenia(); setTimeout(mi_global.jedzenie.pilnujZycia, 2000); return; } else { mi_global.dane.set("ilosc_szukan", 1) } mi_global.przydatne.wlasnyAlert("Brak jedzeznia w ekwipunku"); if (mi_global.ustawienia.get('brak_jedzenia_aktywny', false)) { mi_global.ustawienia.set('jedzenie_aktywny', false); mi_global.ustawienia.set('arena_aktywny', false); mi_global.ustawienia.set('wyprawa_aktywny', false); } return; } let zwracane = null; let roznica = parseInt(document.querySelector("#header_values_hp_bar").getAttribute("data-max-value")) - parseInt(document.querySelector("#header_values_hp_bar").getAttribute("data-value")); mi_global.jedzenie.listaJedzenia.every(function (value) { if (parseInt(value["wartoscLeczenia"]) < roznica) { zwracane = value; return false; } return true; }); return zwracane || mi_global.jedzenie.listaJedzenia.getLast(); }, pilnujZycia: function () { if (localStorage.getItem("automatyzacja_akcje") === null || localStorage.getItem("automatyzacja_akcje").indexOf("mi_global.jedzenie.jedz") === -1) setTimeout(function () { try { if (mi_global.ustawienia.get('jedzenie_aktywny', false)) { if (parseInt(document.getElementById("header_values_hp_percent").innerText.match(/\d+/g)[0]) < parseInt(mi_global.ustawienia.get("min_zycia", 20))) { mi_global.jedzenie.jedz(mi_global.jedzenie.wybierzPrzedmiot()); } } } catch (e) { setTimeout(mi_global.jedzenie.pilnujZycia, 5000); } }, 2000); }, panelInformacji: { dodajPanel: function () { if (document.querySelector("#mi_panel") !== null) return; jQuery('#container_game').prepend('<style>.informacja{display: inline-block; margin-left: 10px; margin-right: 10px;}#mi_panel{background-color: #290d03cc; color: #dcbb85; text-align: center; padding: 5px; width: 910px; margin: auto;}#mi_panel input[type=\'button\']{float: right; margin: -1px;}.pasek{z-index: 9000; position: fixed; top: 0; left: 0; right: 0;}</style><div id="mi_panel"> <div class="informacja"> <span>Punkty życia: </span> <span id="mi_panel_pz">100</span> </div><div class="informacja"> <span>Ilość jedzenia: </span> <span id="mi_panel_jedzenie">0</span> </div><div class="informacja"> <span>Życie z jedzenia: </span> <span id="mi_panel_pzjedzenie">0</span> </div><input type="button" value="Szukaj jedzenia w eq" onclick="mi_global.jedzenie.szukajJedzenia()"></div>'); mi_global.jedzenie.panelInformacji.ukonczDodawaniePanelu(); }, ukonczDodawaniePanelu: function () { if (document.querySelector("#mi_panel") === null) { setTimeout(mi_global.jedzenie.panelInformacji.ukonczDodawaniePanelu, 100); } else { mi_global.jedzenie.panelInformacji.odswiezDane(); let top = typeof gca !== 'undefined' ? 183 : 141; let margin = typeof gca !== 'undefined' ? 58 : 28; let bt = document.getElementById("banner_top"); let be = document.getElementById("banner_event"); let ci = document.getElementById("chat_icon"); let cbe = document.getElementById("cooldown_bar_event"); if (bt != null) bt.style.cssText += "top: " + top + "px !important"; if (be != null) be.style.cssText += "top: " + top + "px !important"; if (ci != null) ci.style.cssText += "top: 143px !important"; if (cbe != null) cbe.style.cssText += "margin-top: " + margin + "px !important"; if (typeof gca !== 'undefined') document.getElementById("mi_panel").style.top = "24px"; window.addEventListener("scroll", function () { mi_global.jedzenie.panelInformacji.onscroll(); }); mi_global.jedzenie.panelInformacji.onscroll(); } }, odswiezDane: function () { if (document.querySelector("#mi_panel") === null) { setTimeout(mi_global.jedzenie.panelInformacji.odswiezDane, 100); return; } mi_global.jedzenie.wczytajZPamieciLokalnej(); let akt = parseInt(document.querySelector("#header_values_hp_bar").getAttribute("data-value")); let max = parseInt(document.querySelector("#header_values_hp_bar").getAttribute("data-max-value")); let pz = akt; pz += "/" + max; pz += " (" + Math.round(akt / max * 100) + "%)"; document.getElementById("mi_panel_pz").innerText = pz; document.getElementById("mi_panel_jedzenie").innerText = mi_global.jedzenie.listaJedzenia.length.toString(); let suma = 0; mi_global.jedzenie.listaJedzenia.forEach(function (value) { suma += parseInt(value.wartoscLeczenia); }); document.getElementById("mi_panel_pzjedzenie").innerText = suma.toString(); }, onscroll: function () { let przesuniecie = parseInt((document.all ? document.scrollTop : window.pageYOffset)); if (przesuniecie > 35) { document.getElementById("mi_panel").classList.add("pasek"); let bt = document.getElementById("banner_top"); let be = document.getElementById("banner_event"); let ci = document.getElementById("chat_icon"); if (bt != null) bt.style.top = "0"; if (be != null) be.style.top = "0"; if (ci != null) ci.style.top = "0"; } else { document.getElementById("mi_panel").classList.remove("pasek"); let top = typeof gca !== 'undefined' ? 183 : 141; let bt = document.getElementById("banner_top"); let be = document.getElementById("banner_event"); let ci = document.getElementById("chat_icon"); if (bt != null) bt.style.cssText += "top: " + top + "px !important"; if (be != null) be.style.cssText += "top: " + top + "px !important"; if (ci != null) ci.style.cssText += "top: 143px !important"; } } } }, arenaCT: { trybyWyboru: { 0: "losowy", 1: "najlepszy", 2: "symulator", 3: "najnizszy" }, rodzajprovinciarum: { 2: "arena", 3: "ct" }, sendRequestArena: function (method, url, data) { let request = { method: method, url: url, data: data + "&a=" + new Date().getTime() + "&sh=" + mi_global.przydatne.getAllUrlParams()['sh'], onComplete: function (response) { if (response.indexOf("document.location.href = ") === -1) { if (parseInt(localStorage.getItem("mi_" + url.split("/")[1]) || 0) >= 10) { localStorage.setItem("mi_" + url.split("/")[1], 0); mi_global.przydatne.wlasnyAlert( "Wszyscy przeciwnicy na " + url.split("/")[1] === "doArenaFight.php" ? "arenie" : "CT" + " zostali już po zaatakowani 5 razy. Rozpocznij ponownie jutro.", "Arena/CT"); } else { localStorage.setItem("mi_" + url.split("/")[1], parseInt(localStorage.getItem("mi_" + url.split("/")[1]) || 0) + 1); mi_global.arenaCT.automat(); } } else { localStorage.setItem("mi_" + url.split("/")[1], 0); } eval(response); } }; new Request(request).send() }, startFight: function (a) { this.sendRequestArena("get", "ajax/doArenaFight.php", "did=" + a) }, startGroupFight: function (a) { this.sendRequestArena("get", "ajax/doGroupFight.php", "did=" + a) }, startProvinciarumFight: function (a, c, b, e) { sendRequest("get", "ajax.php", "mod=arena&submod=doCombat&aType=" + a + "&opponentId=" + c + "&serverId=" + b + "&country=" + e) }, //TODO: Zrobić system requestów symulatorArena: function (gracze, index, maxSzanse, maxSzanseId) { let krajSerwer = window.location.host.split(".")[0].split("-"); let kraj = krajSerwer[1]; let serwer = krajSerwer[0].substr(1); let nick = gracze[gracze.length - 1].querySelector(".ellipsis").innerText; let przeciwnik = gracze[index].querySelector(".ellipsis").innerText; jQuery.getJSON("https://gladiatussimulator.tk/monkey-brain/arena.json?a-country=" + kraj + "&a-server=" + serwer + "&a-name=" + nick + "&d-country=" + kraj + "&d-server=" + serwer + "&d-name=" + przeciwnik, function (data) { console.log(data); if (index < 4) mi_global.arenaCT.symulatorArena(gracze, index + 1, -1, -1); }); }, arena: function () { jQuery.get(mi_global.przydatne.link({ "mod": "arena" }), function (content) { let idPrzeciwnika = -1; let nrPrzeciwnika = -1; let strona = document.createElement("div"); strona.innerHTML = content; let gracze = strona.querySelectorAll("aside.right tr"); if (gracze.length <= 2) return; switch (mi_global.ustawienia.get('arena_dobor', 0) * 1) { case 1: { nrPrzeciwnika = (parseInt(localStorage.getItem("mi_ostatni_arena")) || 0) % (gracze.length - 2); nrPrzeciwnika++; idPrzeciwnika = gracze[nrPrzeciwnika].innerHTML.match(/startFight\(this, \d+\)/g)[0].match(/\d+/g)[0]; break; } default: { nrPrzeciwnika = Math.floor(Math.random() * (gracze.length - 2)) + 1; idPrzeciwnika = gracze[nrPrzeciwnika].innerHTML.match(/startFight\(this, \d+\)/g)[0].match(/\d+/g)[0]; break; } } if (idPrzeciwnika !== -1 && nrPrzeciwnika !== -1) { localStorage.setItem("mi_ostatni_arena", nrPrzeciwnika); localStorage.setItem("automatyzacja_akcje", 'if(document.querySelector(".reportWin") !== null)localStorage.setItem("mi_ostatni_arena",0);'); mi_global.arenaCT.startFight(idPrzeciwnika); } }); }, ct: function () { jQuery.get(mi_global.przydatne.link({ "mod": "arena", "submod": "grouparena" }), function (content) { let idPrzeciwnika = -1; let nrPrzeciwnika = -1; var strona = document.createElement("div"); strona.innerHTML = content; let gracze = strona.querySelectorAll("aside.right tr"); if (gracze.length <= 2) return; switch (mi_global.ustawienia.get('ct_dobor', 0) * 1) { case 1: { nrPrzeciwnika = (parseInt(localStorage.getItem("mi_ostatni_ct")) || 0) % (gracze.length - 2); nrPrzeciwnika++; idPrzeciwnika = gracze[nrPrzeciwnika].innerHTML.match(/startGroupFight\(this, \d+\)/g)[0].match(/\d+/g)[0]; break; } default: { nrPrzeciwnika = Math.floor(Math.random() * (gracze.length - 2)) + 1; idPrzeciwnika = gracze[nrPrzeciwnika].innerHTML.match(/startGroupFight\(this, \d+\)/g)[0].match(/\d+/g)[0]; break; } } if (idPrzeciwnika !== -1 && nrPrzeciwnika !== -1) { localStorage.setItem("mi_ostatni_ct", nrPrzeciwnika); localStorage.setItem("automatyzacja_akcje", 'if(document.querySelector(".reportWin") !== null)localStorage.setItem("mi_ostatni_ct",0);'); mi_global.arenaCT.startGroupFight(idPrzeciwnika); } }); }, provinciarum: function (aType) { jQuery.get(mi_global.przydatne.link({ "mod": "arena", "submod": "serverArena", "aType": aType }), function (content) { let idPrzeciwnika = -1; let serwer = -1; let kraj = ''; let nrPrzeciwnika = -1; var strona = document.createElement("div"); strona.innerHTML = content; let gracze = strona.querySelectorAll("#own" + aType + " tr"); if (gracze.length <= 1) return; switch (mi_global.ustawienia.get(mi_global.arenaCT.rodzajprovinciarum[aType] + '_dobor', 0) * 1) { case 1: { nrPrzeciwnika = (parseInt(localStorage.getItem("mi_ostatni_" + mi_global.arenaCT.rodzajprovinciarum[aType])) || 0) % (gracze.length - 1); nrPrzeciwnika++; break; } case 3: { let najnizszyLv = parseInt(gracze[1].getElementsByTagName("td")[1].innerText); nrPrzeciwnika = 1; for (let i = 2; i < gracze.length; i++) { let kolumny = gracze[i].getElementsByTagName("td"); let lv = parseInt(kolumny[1].innerText); if (lv < najnizszyLv) { najnizszyLv = lv; nrPrzeciwnika = i; } } break; } default: { nrPrzeciwnika = Math.floor(Math.random() * (gracze.length - 1)) + 1; break; } } if (nrPrzeciwnika !== -1) { let informacje = gracze[nrPrzeciwnika].innerHTML.match(/startProvinciarumFight\(this, \d+, \d+, \d+, '.+'\)/g)[0]; let liczbyInformacje = informacje.match(/\d+/g); idPrzeciwnika = liczbyInformacje[1]; serwer = liczbyInformacje[2]; kraj = informacje.match(/'.+'/g)[0]; kraj = kraj.substr(1, kraj.length - 2); } if (idPrzeciwnika !== -1 && nrPrzeciwnika !== -1) { localStorage.setItem("mi_ostatni_" + mi_global.arenaCT.rodzajprovinciarum[aType], nrPrzeciwnika); localStorage.setItem("automatyzacja_akcje", 'if(document.querySelector(".reportWin") !== null)localStorage.setItem("mi_ostatni_' + mi_global.arenaCT.rodzajprovinciarum[aType] + '",0);'); mi_global.arenaCT.startProvinciarumFight(aType, idPrzeciwnika, serwer, kraj); } }); }, automat: function () { setTimeout(function () { let cda = document.getElementById("cooldown_bar_text_arena"); let cdct = document.getElementById("cooldown_bar_text_ct"); if (cda !== null && cdct !== null && cda.innerHTML !== '-' && cdct.innerHTML !== '-') { if (mi_global.ustawienia.get('arena_aktywny', false)) { setTimeout(function () { if (mi_global.ustawienia.get('arena_provinciarum', false)) mi_global.arenaCT.provinciarum(2); else mi_global.arenaCT.arena(); }, mi_global.przydatne.getCooldown("cooldown_bar_text_arena") + mi_global.przydatne.dodatkoweOpoznienie()); } if (mi_global.ustawienia.get('ct_aktywny', false)) { setTimeout(function () { if (mi_global.ustawienia.get('ct_provinciarum', false)) mi_global.arenaCT.provinciarum(3); else mi_global.arenaCT.ct(); }, mi_global.przydatne.getCooldown("cooldown_bar_text_ct") + mi_global.przydatne.dodatkoweOpoznienie()); } } else setTimeout(mi_global.automatyzacjaAtak.automat, 10000); }, 2000); } }, roztapiarka: { automat: function () { if (mi_global.ustawienia.get('roztapiarka_aktywny', false)) setTimeout(mi_global.roztapiarka.sprawdzCzasy, 2000); else mi_global.ustawienia.set('roztapiarka_aktywny', false); }, sprawdzCzasy: function (od = 0) { for (let i = od; i < 6; i++) { let value = mi_global.dane.get("roztapiarka_czas", []); let czasZakladki = value[i]; if (!czasZakladki) czasZakladki = 0; let timeOut = czasZakladki - Date.now(); if (timeOut < 100) timeOut = 100; setTimeout(function () { mi_global.roztapiarka.wrzucPrzedmiot(i); }, timeOut); if (timeOut <= 2000) { setTimeout(function () { mi_global.roztapiarka.sprawdzCzasy(i + 1); }, 2000); break; } } }, wrzucPrzedmiot: function (zakladkaRoztapiarki) { if (mi_global.przydatne.getAllUrlParams().mod !== "forge" || mi_global.przydatne.getAllUrlParams().submod !== "smeltery") { window.location.href = mi_global.przydatne.link({"mod": "forge", "submod": "smeltery"}); return; } showForgeBox(zakladkaRoztapiarki); //wysłanie pakietu if (document.getElementById("slot-finished-succeeded").className !== "hidden") { document.getElementById("forge_lootbox").click(); return; } if (document.getElementById("slot-closed").className === "hidden") { setTimeout(function () { let napis = document.querySelector("#forge_time_remaining"); let czasTrwania; if (napis && (czasTrwania = napis.innerText.match(/(\d+):(\d+):(\d+)/))) { czasTrwania = (parseInt(czasTrwania[1], 10) * 60 * 60 + parseInt(czasTrwania[2], 10) * 60 + parseInt(czasTrwania[3], 10)) * 1000; czasTrwania += mi_global.przydatne.dodatkoweOpoznienie(); let dataZakonczenia = Date.now() + czasTrwania; let value = mi_global.dane.get("roztapiarka_czas", []); value[zakladkaRoztapiarki] = dataZakonczenia; mi_global.dane.set("roztapiarka_czas", value); } }, 1500); return; } //wybor przedmiotu let zakladki = document.querySelectorAll("a[data-available='true']"); let saPrzedmioty = false; for (let index = 0; index < zakladki.length; index++) { if (mi_global.ustawienia.get('roztapiarka_zakladka_' + parseInt(index + 1), false)) { mi_global.przydatne.fireMouseEvent("click", zakladki[index], 0, 0); let query = ""; for (let i = 1; i <= 9; i++) if (i !== 7) query += "div[class*='item-i-" + i + "-'],"; query = query.substr(0, query.length - 1); let przedmioty = document.getElementById("inv").querySelectorAll(query); let pole = document.getElementById("itembox"); if (przedmioty.length > 0 && pole !== null) { saPrzedmioty = true; //aktywacja mi_global.przydatne.triggerDragAndDrop(przedmioty[0], pole); setTimeout(function () { let napis = document.querySelector("#forge_duration span"); let czasTrwania; if (napis && (czasTrwania = napis.innerText.match(/(\d+):(\d+):(\d+)/))) { czasTrwania = (parseInt(czasTrwania[1], 10) * 60 * 60 + parseInt(czasTrwania[2], 10) * 60 + parseInt(czasTrwania[3], 10)) * 1000; czasTrwania += mi_global.przydatne.dodatkoweOpoznienie(); let dataZakonczenia = Date.now() + czasTrwania; let value = mi_global.dane.get("roztapiarka_czas", []); value[zakladkaRoztapiarki] = dataZakonczenia; mi_global.dane.set("roztapiarka_czas", value); document.querySelector("#rent div[data-rent='2']").click(); setTimeout(function () { if (document.querySelectorAll(".error").length > 0) { let value = mi_global.dane.get("roztapiarka_czas", []); value[zakladkaRoztapiarki] = null; mi_global.dane.set("roztapiarka_czas", value); } }, 500); } }, 500); break; } } } if (!saPrzedmioty) { mi_global.ustawienia.set('roztapiarka_aktywny', false); mi_global.przydatne.wlasnyAlert("Skończyły się przedmioty do roztapiania", "Roztapiarka"); } } }, paczki: { kup: function (buyid, cena) { let minZloto = parseInt(mi_global.ustawienia.get("paczki_min_zloto", 100000)); cena = parseInt(cena); if (minZloto > cena) return; let xmlHttp = new XMLHttpRequest(); xmlHttp.open("POST", mi_global.przydatne.link({"mod": "guildMarket"}), true); xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlHttp.onreadystatechange = function () { if (xmlHttp.readyState === 4 && xmlHttp.status === 200) { mi_global.przydatne.wlasnyAlert("Kupiono paczkę za " + cena + " złota.", "Paczki"); if (xmlHttp.responseText.indexOf('data-item-id="' + buyid + '"') === -1 && mi_global.ustawienia.get('paczki_odstawianie', false)) { let xmlHttp2 = new XMLHttpRequest(); xmlHttp2.open("POST", mi_global.przydatne.link({ mod: 'packages', submod: 'sort', page: 1 }), true); xmlHttp2.setRequestHeader("Content-type", "text/html; charset=UTF-8"); xmlHttp2.onreadystatechange = function () { if (xmlHttp2.readyState === 4 && xmlHttp2.status === 200) { mi_global.przydatne.wyciagnijZPaczek(mi_global.przydatne.link({mod: 'packages'}), mi_global.paczki.odstaw, cena); } }; xmlHttp2.send("packageSorting=in_desc"); } else { let akcje = "mi_global.paczki.znajdz(document.querySelector(\"#sstat_gold_val\").innerText.replace(/\\./g, '') * 1, mi_global.paczki.kup)"; localStorage.setItem("automatyzacja_akcje", akcje); window.location.href = mi_global.przydatne.link({"mod": "guildMarket"}); } } }; xmlHttp.send("buyid=" + buyid + "&buy=Kup"); }, znajdz: function (zaIleZlota, callback) { let minZloto = parseInt(mi_global.ustawienia.get("paczki_min_zloto", 100000)); zaIleZlota = parseInt(zaIleZlota); if (minZloto > zaIleZlota) return; let xmlHttp = new XMLHttpRequest(); xmlHttp.open("GET", mi_global.przydatne.link({ mod: 'guildMarket', s: 'pd', seller: mi_global.ustawienia.get("paczki_gracze", "") }), true); xmlHttp.setRequestHeader("Content-type", "text/html; charset=UTF-8"); xmlHttp.onreadystatechange = function () { if (xmlHttp.readyState === 4 && xmlHttp.status === 200) { let stronaRynku = jQuery('<div></div>'); stronaRynku.html(xmlHttp.responseText); let przedmioty = jQuery('table#market_item_table tr', stronaRynku); for (let i = 1; i < przedmioty.length; i++) { let wiersz = jQuery('td', przedmioty[i]); if (wiersz !== null && jQuery('a span', wiersz)[0] !== null && jQuery('a span', wiersz)[0].style.color !== 'blue') { let cena = parseInt(wiersz[2].innerText.replace(/[\s.]/g, "")); let ileDostepne = mi_global.ustawienia.get('paczki_odstawianie', false) ? cena * 1.04 : cena; if (ileDostepne <= zaIleZlota) { callback.call(this, wiersz[0].querySelector('div').dataset.itemId, cena); return; } } } mi_global.przydatne.wlasnyAlert("Nie znaleziono paczki za maksimum " + zaIleZlota + " złota na rynku", 'Paczki'); } }; xmlHttp.send(); }, odstaw: function (x, y, cena) { if (mi_global.przydatne.getAllUrlParams().mod !== "guildmarket") { let akcje = "mi_global.paczki.odstaw(" + x + ", " + y + ", " + cena + ")"; setTimeout(function () { localStorage.setItem("automatyzacja_akcje", akcje); window.location.href = mi_global.przydatne.link({"mod": "guildMarket"}); }, 100); return; } let itemId = document.querySelector("#inv div[class*='item-i-'][data-position-x='" + x + "'][data-position-y='" + y + "']").attributes['data-item-id'].value; let xmlHttp = new XMLHttpRequest(); xmlHttp.open("POST", mi_global.przydatne.link({"mod": "guildMarket"}), true); xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlHttp.onreadystatechange = function () { if (xmlHttp.readyState === 4 && xmlHttp.status === 200) { mi_global.przydatne.wlasnyAlert("Odstawiono paczkę za " + cena + " złota.", "Paczki"); let akcje = "mi_global.paczki.znajdz(document.querySelector(\"#sstat_gold_val\").innerText.replace(/\\./g, '') * 1, mi_global.paczki.kup)"; localStorage.setItem("automatyzacja_akcje", akcje); window.location.href = mi_global.przydatne.link({"mod": "guildMarket"}); } }; xmlHttp.send("sellid=" + itemId + "&preis=" + cena + "&dauer=3&anbieten=Oferta"); }, sprawdzCzas: function () { let iloscZlota = document.querySelector("#sstat_gold_val").innerText.replace(/\./g, '') * 1; setTimeout(function () { mi_global.dane.set("paczki_czas", Date.now() + mi_global.ustawienia.get('paczki_czas', 10) * 60 * 1000); mi_global.paczki.znajdz(iloscZlota, mi_global.paczki.kup); }, Math.max(0, mi_global.dane.get("paczki_czas") - Date.now()) + mi_global.przydatne.dodatkoweOpoznienie()); }, sprawdzZloto: function () { let iloscZlota = document.querySelector("#sstat_gold_val").innerText.replace(/\./g, '') * 1; let odIlu = mi_global.ustawienia.get('paczki_odstawianie', false) ? mi_global.ustawienia.get("paczki_zloto", 500000) * 1.04 : mi_global.ustawienia.get("paczki_zloto", 500000); if (iloscZlota >= odIlu) { setTimeout(function () { mi_global.paczki.znajdz(iloscZlota, mi_global.paczki.kup); }, mi_global.przydatne.dodatkoweOpoznienie()); } }, automat: function () { let iloscZlota = parseInt(document.querySelector("#sstat_gold_val").innerText.replace(/\./g, '')); if (mi_global.ustawienia.get('paczki_aktywny', false) && mi_global.ustawienia.get("paczki_min_zloto", 100000) <= iloscZlota) { if (parseInt(mi_global.ustawienia.get('paczki_czas', 10)) !== 0) mi_global.paczki.sprawdzCzas(); if (parseInt(mi_global.ustawienia.get("paczki_zloto", 500000)) !== 0) mi_global.paczki.sprawdzZloto(); } }, wyborGraczy: { utworzenieDialogu: function () { let tresc = "<table border=\"1px\" style=\"text-align: center\"> <tr> <th>Nazwa gracza</th> <th>Kupować?</th> </tr>"; jQuery.get(mi_global.przydatne.link({ "mod": "guild", "submod": "memberList" }), function (content) { let strona = jQuery('<div></div>'); strona.html(content); let gracze = jQuery("#mainbox table tr", strona); let aktualniGracze = mi_global.ustawienia.get("paczki_gracze", " "); for (let i = 1; i < gracze.length; i++) { let nick = jQuery("td a", gracze[i])[0].innerText; tresc += "<tr><td>" + nick + "</td><td><input type='checkbox' value='" + nick + "' "; tresc += aktualniGracze.indexOf(nick) !== -1 ? "checked" : ""; tresc += "/></td></tr>"; } tresc += "</table>"; jQuery('<div></div>').html(tresc).dialog({ title: "Wybór graczy do odkupowania", resizable: false, dialogClass: 'close', buttons: { 'Zapisz': function () { mi_global.paczki.wyborGraczy.zapisz(jQuery("input[type='checkbox']", this)); jQuery(this).dialog('close'); }, 'Anuluj': function () { jQuery(this).dialog('close'); } } }); }); }, zapisz: function (zaznaczenia) { let gracze = " "; for (let i = 0; i < zaznaczenia.length; i++) { if (zaznaczenia[i].checked === true) { gracze += zaznaczenia[i].value + "+"; } } mi_global.ustawienia.set("paczki_gracze", gracze); mi_global.przydatne.wlasnyAlert("Pomyślnie zapisano listę graczy.", "Paczki"); } } }, zadania: { zakonczPowtorzZadania: function (powtorzyc = false) { jQuery.get(mi_global.przydatne.link({ "mod": "quests" }), function (content) { let strona = document.createElement('div'); strona.innerHTML = content; strona.querySelectorAll(powtorzyc ? ".quest_slot_button_restart" : ".quest_slot_button_finish").forEach(function (elem) { let xmlHttp = new XMLHttpRequest(); xmlHttp.open("GET", elem.href, true); xmlHttp.setRequestHeader("Content-type", "text/html; charset=UTF-8"); xmlHttp.send(); }); }); }, wezZadanie: function () { let query = ""; let kategorie = mi_global.ustawienia.get("zadania_typy", {}); for (let kategoria in kategorie) { if (kategorie[kategoria]) query += ".contentboard_slot_inactive div[style*='_" + kategoria + "_'], "; } query = query.slice(0, -2); jQuery.get(mi_global.przydatne.link({ "mod": "quests" }), function (content) { let strona = document.createElement('div'); strona.innerHTML = content; let ilosc = strona.querySelector("#quest_header_accepted").innerText.match(/\d+/g); if (ilosc[0] / ilosc[1] >= 1) return; let zadania = strona.querySelectorAll(query); let zadanieAkceptuj = null; if (kategorie['czas'] && kategorie['rzad'] && zadania.length > 0) { zadanieAkceptuj = 0; } else if (!kategorie['rzad'] && !kategorie['czas']) { for (let i = 0; i < zadania.length; i++) { if (zadania[i].parentElement.querySelector(".quest_slot_time") === null && zadania[i].parentElement.querySelector(".quest_slot_title").innerText.indexOf("z rzędu") === -1) { zadanieAkceptuj = i; break; } } } else if (!kategorie['rzad']) { for (let i = 0; i < zadania.length; i++) { if (zadania[i].parentElement.querySelector(".quest_slot_title").innerText.indexOf("z rzędu") === -1) { zadanieAkceptuj = i; break; } } } else if (!kategorie['czas']) { for (let i = 0; i < zadania.length; i++) { if (zadania[i].parentElement.querySelector(".quest_slot_time") === null) { zadanieAkceptuj = i; break; } } } let href = null; if (zadanieAkceptuj !== null) { let elem = zadania[zadanieAkceptuj].parentElement.querySelector(".quest_slot_button_accept"); href = elem.href; } else { href = mi_global.przydatne.link({ mod: "quests", submod: "resetQuests" }); } let xmlHttp = new XMLHttpRequest(); xmlHttp.open("GET", href, true); xmlHttp.setRequestHeader("Content-type", "text/html; charset=UTF-8"); xmlHttp.onreadystatechange = function () { if (xmlHttp.readyState === 4 && xmlHttp.status === 200) { let strona = document.createElement('div'); strona.innerHTML = xmlHttp.responseText; let czas = strona.querySelector("#quest_header_cooldown span.ticker"); czas = czas !== null ? czas.dataset.tickerTimeLeft : 60000; mi_global.dane.set("zadania_czas", Date.now() + czas * 1 + 5000) } }; xmlHttp.send(); }); }, sprawdzCzas: function () { let czas = mi_global.dane.get("zadania_czas", Date.now()) setTimeout(mi_global.zadania.wezZadanie, czas - Date.now() + mi_global.przydatne.dodatkoweOpoznienie()); }, wymusOdswiezenieZakonczenie: function (coIleMinut) { let data = new Date(); setTimeout(function () { mi_global.zadania.zakonczPowtorzZadania(true); mi_global.zadania.zakonczPowtorzZadania(); }, (5 - (data.getMinutes() % coIleMinut)) * 60 * 1000 || 100); }, automat: function () { if (mi_global.ustawienia.get('zadania_aktywny', false)) { if (document.querySelector('a[href*=quests]').innerText.match(/\(\d+\)/g) !== null) setTimeout(mi_global.zadania.zakonczPowtorzZadania, mi_global.przydatne.dodatkoweOpoznienie()); mi_global.zadania.sprawdzCzas(); mi_global.zadania.wymusOdswiezenieZakonczenie(5); } } }, eventy: { czytajInformacjeZeStrony: function () { if (!document.querySelector("#submenu2 a.menuitem.glow")) return; let obecny = mi_global.przydatne.getAllUrlParams(); let eventowy = mi_global.przydatne.getAllUrlParams(document.querySelector("#submenu2 a.menuitem.glow").href); if (obecny.submod !== "serverquest" && obecny.loc !== eventowy.loc) { let akcje = "mi_global.eventy.czytajInformacjeZeStrony();"; localStorage.setItem("automatyzacja_akcje", akcje); window.location.href = document.querySelector("#submenu2 a.menuitem.glow").href; return; } let liczbaPunktow = document.getElementById("content").getElementsByClassName("section-header")[0].parentNode.innerHTML.match(/(\d+)\s*<img/im); if (liczbaPunktow) { liczbaPunktow = parseInt(liczbaPunktow[1]); } else { liczbaPunktow = 0; } let id = document.querySelector("#expedition_list button").attributes.onclick.value.match(/'&\S+(\d+)'/mi); if (id) id = parseInt(id[1]); else id = null; let data = JSON.parse(document.querySelector("#server-time").attributes['data-start-time'].value); data = new Date(data[0], data[1] - 1, data[2]); mi_global.dane.set("ilosc_punktow", liczbaPunktow); mi_global.dane.set("id_eventu", id); mi_global.dane.set("event_ostatnia_data", data * 1); }, atak: function () { let url = mi_global.przydatne.getAllUrlParams(document.querySelector("#submenu2 a.menuitem.glow").href); if (!mi_global.dane.get("id_eventu") && url.loc !== 'wild_farm' && url.loc !== 'nile_bank') { mi_global.eventy.czytajInformacjeZeStrony(); return; } if (url.loc === 'wild_farm' || url.loc === 'nile_bank') mi_global.automatyzacjaAtak.attack(null, url.loc, mi_global.ustawienia.get("event_potwor", 1), false, ''); else mi_global.automatyzacjaAtak.attack(null, url.loc, mi_global.ustawienia.get("event_potwor", 1), false, '&serverQuest=' + mi_global.dane.get('id_eventu')); mi_global.dane.set("event_czas", Date.now() + 5 * 60 * 1000 + mi_global.przydatne.dodatkoweOpoznienie()); mi_global.dane.set("ilosc_punktow", mi_global.dane.get("ilosc_punktow", 0) - 1); }, sprawdzCzas: function () { if (mi_global.dane.get("ilosc_punktow", 0) <= 0) return; let czas = mi_global.dane.get("event_czas", Date.now()); setTimeout(mi_global.eventy.atak, (czas - Date.now()) + mi_global.przydatne.dodatkoweOpoznienie()); }, sprawdzDate: function () { let data = JSON.parse(document.querySelector("#server-time").attributes['data-start-time'].value); data = new Date(data[0], data[1] - 1, data[2]); if (data > mi_global.dane.get("event_ostatnia_data")) { mi_global.eventy.czytajInformacjeZeStrony(); } else { data.setDate(data.getDate() + 1); let data2 = JSON.parse(document.querySelector("#server-time").attributes['data-start-time'].value); data2 = new Date(data2[0], data2[1] - 1, data2[2], data2[3], data2[4], data2[5], data2[6]); setTimeout(mi_global.eventy.czytajInformacjeZeStrony, data - data2) } }, automat: function () { if (!mi_global.ustawienia.get('event_aktywny', false)) return; if (document.querySelector("#submenu2 a.menuitem.glow") === null) { mi_global.ustawienia.set('event_aktywny', false); return; } let obecny = mi_global.przydatne.getAllUrlParams(); let eventowy = mi_global.przydatne.getAllUrlParams(document.querySelector("#submenu2 a.menuitem.glow").href); if (obecny.submod === "serverquest" || eventowy.loc === obecny.loc) mi_global.eventy.czytajInformacjeZeStrony(); if (mi_global.ustawienia.get('event_aktywny', false)) { mi_global.eventy.sprawdzCzas(); mi_global.eventy.sprawdzDate(); } } } }; window.mi_global = mi_global; function zglos(e) { //Może kiedyś } //Wywołanie funkcji if (mi_global.przydatne.getAllUrlParams().mod !== "start" && mi_global.przydatne.getAllUrlParams().mod !== "downtime") { console.log("W razie błędów pisz gg: 10563110. Pozdrawiam"); let func = function () { try { //Działające tylko w hadesie if (document.querySelector('.underworld') == null) { //Działające tylko poza hadesem mi_global.jedzenie.pilnujZycia(); mi_global.automatyzacjaAtak.automat(); mi_global.eventy.automat(); } //Hadesoobojętne mi_global.przydatne.wykonajAkcje(); mi_global.interfejs.dodajInterfejs(); mi_global.jedzenie.panelInformacji.dodajPanel(); mi_global.arenaCT.automat(); mi_global.roztapiarka.automat(); mi_global.paczki.automat(); mi_global.zadania.automat(); } catch (e) { zglos(e); } }; if (window.addEventListener) { window.addEventListener('load', func) } else { window.attachEvent('onload', func) } setTimeout(function () { if (document.querySelector("#moj_interfejs") === null) func(); }, 1000); } })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址