您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Показ предыдущих заданий ГН
当前为
// ==UserScript== // @name GN_ShowLastTask // @namespace Gradient // @description Показ предыдущих заданий ГН // @include /.+(heroeswm|178\.248\.235\.15).+\/mercenary_guild\.php/ // @version 1.0.0 // ==/UserScript== "use strict"; //----------------------------------------------------------------------------// (function(){ // wrapper start //----------------------------------------------------------------------------// // UnifiedLibrary 1.4.0 start //----------------------------------------------------------------------------// //----------------------------------------------------------------------------// // SysUtils //----------------------------------------------------------------------------// var GN_SysUtils = new SysUtils(); var SU = GN_SysUtils; //----------------------------------------------------------------------------// function SysUtils(){ // wrapper start //----------------------------------------------------------------------------// this.show_error = function(error_string){ throw new Error(error_string); }; //----------------------------------------------------------------------------// this.load_value = function(value, def){ var div = document.getElementById('GN_GM_Handler'); div.setAttribute('desc', value); div.setAttribute('operation', 'load'); div.click(); if(div.getAttribute('state') != 'complete') this.show_error('Ошибка при загрузке значения'); return (div.getAttribute('is_null') == 'true' ? def : div.getAttribute('value')); }; //----------------------------------------------------------------------------// this.check_login = function(){ var re = /.*?pl_id=\d+?.*?/gmi; if(!re.test(document.cookie.toString())) this.show_error('Пользователь не авторизован'); }; //----------------------------------------------------------------------------// this.check_login(); //----------------------------------------------------------------------------// } // wrapper end //----------------------------------------------------------------------------// // UnifiedLibrary end //----------------------------------------------------------------------------// var current_user_id = /.*?pl_id=(\d+)[^\d]*?/gmi.exec(document.cookie.toString())[1]; var mercenaries = JSON.parse(SU.load_value('GN_ShowLastTask_Tasks' + current_user_id, '[]')); var merc_table = document.querySelector('table[width="970"] table.wbwhite td[valign="top"][align="left"]'); var b = merc_table.querySelectorAll('b'); var tasks = []; for(var i = 0; i < b.length; ++i) if(/(.+?)\s{(\d+)}/.test(b[i].innerHTML)) tasks.push(b[i]); for(var i = 0; i < tasks.length; ++i){ var task = tasks[i]; var str = /(.+)\s{\d+}/.exec(task.innerHTML)[1]; for(var j = 0; j < mercenaries.length; ++j){ var merc = mercenaries[j]; if(merc.str == str){ var a = document.createElement('a'); a.href = '/war.php?lt=-1&warid=' + merc.battle; a.textContent = ' (пред. бой, уровень ' + merc.lvl + ')'; task.parentNode.insertBefore(a, task.nextSibling); } } } //----------------------------------------------------------------------------// }()); // wrapper end //----------------------------------------------------------------------------//