// ==UserScript== // @name HWM_AutoReportMGTasks // @namespace Небылица // @version 1.22 // @description Автосдача задания ГН // @author Небылица // @include /^https{0,1}:\/\/((www|qrator)\.heroeswm\.ru|178\.248\.235\.15)\/(map|mercenary_guild|home)\.php/ // @grant GM_setValue // @grant GM_getValue // @downloadURL none // ==/UserScript== (function() { 'use strict'; // скрипт требует для своей работы скрипт SetsMaster от Demin, который должен находиться выше по порядку исполнения // код для страницы карты // проверяем наличие активного задания ГН и нахождение в секторе гильдии if (location.pathname.indexOf("map.php") !== -1){ if (document.getElementById("pers_gn").innerHTML.split(":").length === 3){ if (document.querySelector("img[src*=\"merc.gif\"][title=\"Гильдия Наемников\"]") !== null){ // запрашиваем страницу ГН var xhr = new XMLHttpRequest(); var response; xhr.open('GET', "mercenary_guild.php", true); xhr.send(); xhr.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { response = xhr.responseText; // получаем ответ и проверяем, было ли задание сдано if (response.indexOf("Статус") !== -1 && response.indexOf("минут") === -1){ // запоминаем текст награды и переходим в ГН try{GM_setValue("reward", response.match(/

([\S\s]+?)/)[1]);} catch(err){console.log(err);} window.open("mercenary_guild.php", "_self"); } } }; } } } // код для страницы ГН // если имеется сохранённый текст только что сданного задания, то вставляем его в страницу if (location.pathname.indexOf("mercenary_guild.php") !== -1){ if (GM_getValue("reward") !== "-1"){ var td = document.querySelector("td[rowspan=\"2\"]"); td.innerHTML = td.innerHTML.split("(.+?)<\/font>/)[1].indexOf("разбойники") !== -1){ // сдаём груз и забываем текущее задание GM_setValue("ifRogues", false); window.open("map.php?action=accept_merc_task3", "_self"); } } }; } } })();