Меняет разметку вкладки ресурсов под нужды других скриптов
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/447488/1067678/HWM_Resource_Retabler.js
// ==UserScript==
// @name HWM_Resource_Retabler
// @namespace http://tampermonkey.net/
// @version 0.2
// @description Меняет разметку вкладки ресурсов под нужды других скриптов
// @author Tags
// @include /^https{0,1}:\/\/(www\.heroeswm\.ru|178\.248\.235\.15|my\.lordswm\.com)\/(pl_info.php*)/
// @icon https://www.google.com/s2/favicons?sz=64&domain=heroeswm.ru
// @grant none
// ==/UserScript==
const MercenaryElements = ["абразив","змеиный яд","клык тигра","ледяной кристалл","лунный камень","огненный кристалл","осколок метеорита","цветок ведьм","цветок ветров","цветок папоротника","ядовитый гриб"];
(function() {
'use strict';
const tables = Array.from(document.getElementsByClassName('wb'));
const resourceTable = tables[tables.indexOf(tables.filter(e=>e.innerText=="Ресурсы")[0])+3]
//Вытаскиваем все доступные элементы и превращаем в объекты.
const items = resourceTable.innerHTML.split(/ /).filter(e => e !== "").map(s => s.replaceAll("<b>", "").replaceAll("<br>", "").replaceAll("</b>", "")).map(e => ({
name: e.split(':')[0],
value: e.split(':')[1],
isMercenary: MercenaryElements.includes(e.split(':')[0]),
}));
const parts = items.filter(e=>!e.isMercenary);
const mercenary = items.filter(e=>e.isMercenary);
//Чистим табличку
resourceTable.innerHTML = "";
//Записываем новую разметку
for (let item of parts) {
const div = Object.assign(
document.createElement('div'), {
innerHTML: `<div> <b>${item.name}</b>: ${item.value}</div>`,
});;
div.setAttribute('ismercenary', item.isMercenary);
div.setAttribute('name', item.name);
resourceTable.appendChild(div);
}
const splitter = Object.assign(
document.createElement('div'), {
innerHTML: `<div name="splitter"><br></div>`,
});;
if(parts.length>0){
resourceTable.appendChild(splitter);
}
for (let item of mercenary) {
const div = Object.assign(
document.createElement('div'), {
innerHTML: `<div"> <b>${item.name}</b>: ${item.value}</div>`,
});;
div.setAttribute('ismercenary', item.isMercenary);
div.setAttribute('name', item.name);
resourceTable.appendChild(div);
}
})();