您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Gugu Town IconPack.
当前为
// ==UserScript== // @name Gugu Town IconPack // @namespace https://github.com/HazukiKaguya/GuguTown_IconPack/ // @homepage https://github.com/HazukiKaguya // @version 0.2.1 // @description Gugu Town IconPack. // @icon https://sticker.inari.site/favicon.ico // @author Hazuki Kaguya // @copyright 2022- Hazukikaguya // @include https://www.guguzhen.com/* // @run-at document-end // @license MIT License // @require https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.min.js // ==/UserScript== /** * default settings */ 'use strict'; this.$ = this.jQuery = jQuery.noConflict(true); const defaultConf={"useOldNames":false,"iconPack":"classic","iconSize":"50px"}; let useOldNamesCheck ='',custom = defaultConf,userIcons={},timeout = null,nowIcons; if (localStorage.IconPackConf) { custom = JSON.parse(localStorage.IconPackConf) } else {localStorage.setItem('IconPackConf', JSON.stringify(defaultConf)); } if (custom.useOldNames == true) { useOldNamesCheck = 'checked' } const classicIcons={ "url":"https://sticker.inari.site/guguicons/old/", "ext":".gif", "dessert":["apple","grape","cherry"], "i0":["反叛者的刺杀弓 z2105_.gif","bow_"], "i1":["狂信者的荣誉之刃 z2104_.gif","knife_"], "i2":["陨铁重剑 z2109_.gif","sword_"], "i3":["幽梦匕首 z2106_.gif","knife_"], "i4":["荆棘盾剑 z2108_.gif","sword_"], "i5":["饮血魔剑 z2110_.gif","sword_"], "o5":["饮血长枪","spear_"], "i6":["光辉法杖 z2107_.gif","staff_"], "i7":["探险者短弓 z2102_.gif","bow_"], "i8":["探险者短杖 z2103_.gif","staff_"], "i9":["探险者之剑 z2101_.gif)","sword_"], "i10":["命师的传承手环 z2202_.gif","bracelet_"], "i11":["秃鹫手环 z2203_.gif","bracelet_"], "o11":["秃鹫手套","gloves_"], "i12":["探险者手环 z2201_.gif","bracelet_"], "o12":["探险者手套","gloves_"], "i13":["旅法师的灵光袍 z2304_.gif","gown_"], "i14":["挑战斗篷 z2307_.gif","clothes_"], "i15":["战线支撑者的荆棘重甲 z2305_.gif","armour_"], "i16":["复苏战衣 z2306_.gif","gown_"], "i17":["探险者铁甲 z2301_.gif","armour_"], "i18":["探险者皮甲 z2302_.gif","clothes_"], "i19":["探险者布甲 z2303_.gif","clothes_"], "i20":["萌爪耳钉 z2403_.gif","neko_"], "o20":["天使缎带","swirl_"], "i21":["占星师的耳饰 z2402_.gif","earring_"], "o21":["占星师的发饰","swirl_"], "i22":["探险者耳环 z2401_.gif","earring_"], "o22":["探险者头巾","swirl_"]} ,pcrIcons={ "url":"https://sticker.inari.site/guguicons/pcr/", "ext":".gif", "dessert":["pie","donuts","cake"], "i0":["反叛者的刺杀弓","%E5%8F%8D%E5%8F%9B%E8%80%85%E7%9A%84%E5%88%BA%E6%9D%80%E5%BC%93"], "i1":["狂信者的荣誉之刃","%E7%8B%82%E4%BF%A1%E8%80%85%E7%9A%84%E8%8D%A3%E8%AA%89%E4%B9%8B%E5%88%83"], "i2":["陨铁重剑","%E9%99%A8%E9%93%81%E9%87%8D%E5%89%91"], "i3":["幽梦匕首","%E5%B9%BD%E6%A2%A6%E5%8C%95%E9%A6%96"], "i4":["荆棘盾剑","%E8%8D%86%E6%A3%98%E7%9B%BE%E5%89%91"], "i5":["饮血魔剑","%E9%A5%AE%E8%A1%80%E9%AD%94%E5%89%91"], "o5":["饮血长枪","%E9%A5%AE%E8%A1%80%E9%95%BF%E6%9E%AA"], "i6":["光辉法杖","%E5%85%89%E8%BE%89%E6%B3%95%E6%9D%96"], "i7":["探险者短弓","%E6%8E%A2%E9%99%A9%E8%80%85%E7%9F%AD%E5%BC%93"], "i8":["探险者短杖","%E6%8E%A2%E9%99%A9%E8%80%85%E7%9F%AD%E6%9D%96"], "i9":["探险者之剑","%E6%8E%A2%E9%99%A9%E8%80%85%E4%B9%8B%E5%89%91"], "i10":["命师的传承手环","%E5%91%BD%E5%B8%88%E7%9A%84%E4%BC%A0%E6%89%BF%E6%89%8B%E7%8E%AF"], "i11":["秃鹫手环","%E7%A7%83%E9%B9%AB%E6%89%8B%E7%8E%AF"], "o11":["秃鹫手套","%E7%A7%83%E9%B9%AB%E6%89%8B%E5%A5%97"], "i12":["探险者手环","%E6%8E%A2%E9%99%A9%E8%80%85%E6%89%8B%E7%8E%AF"], "o12":["探险者手套","%E6%8E%A2%E9%99%A9%E8%80%85%E6%89%8B%E5%A5%97"], "i13":["旅法师的灵光袍","%E6%97%85%E6%B3%95%E5%B8%88%E7%9A%84%E7%81%B5%E5%85%89%E8%A2%8D"], "i14":["挑战斗篷","%E6%8C%91%E6%88%98%E6%96%97%E7%AF%B7"], "i15":["战线支撑者的荆棘重甲","%E6%88%98%E5%9C%BA%E6%94%AF%E6%92%91%E8%80%85%E7%9A%84%E8%8D%86%E6%A3%98%E9%87%8D%E7%94%B2"], "i16":["复苏战衣","%E5%A4%8D%E8%8B%8F%E6%88%98%E8%A1%A3"], "i17":["探险者铁甲","%E6%8E%A2%E9%99%A9%E8%80%85%E9%93%81%E7%94%B2"], "i18":["探险者皮甲","%E6%8E%A2%E9%99%A9%E8%80%85%E7%9A%AE%E7%94%B2"], "i19":["探险者布甲","%E6%8E%A2%E9%99%A9%E8%80%85%E5%B8%83%E7%94%B2"], "i20":["萌爪耳钉","%E8%90%8C%E7%88%AA%E8%80%B3%E9%92%89"], "o20":["天使缎带","%E5%A4%A9%E4%BD%BF%E7%BC%8E%E5%B8%A6"], "i21":["占星师的耳饰","%E5%8D%A0%E6%98%9F%E8%80%85%E7%9A%84%E8%80%B3%E9%A5%B0"], "o21":["占星师的发饰","%E5%8D%A0%E6%98%9F%E8%80%85%E7%9A%84%E5%8F%91%E9%A5%B0"], "i22":["探险者耳环","%E6%8E%A2%E9%99%A9%E8%80%85%E8%80%B3%E7%8E%AF"], "o22":["探险者头巾","%E6%8E%A2%E9%99%A9%E8%80%85%E5%A4%B4%E5%B7%BE"]},iconsize=custom.iconSize; if (localStorage.userIcons){ userIcons = JSON.parse(localStorage.userIcons)} /** * main functions */ $(`<p><input type="button" class="iconpack-icons" value="选择主题"> <input type="button" class="iconpack-usr" value="输入自定义主题"></p> <p><input type="button" class="iconpack-size" value="图标大小"> <input type="checkbox" class="iconpack-switch" value="useOldNames" ${useOldNamesCheck}>切换旧装备名</p>`).insertAfter($("#userd")); $(".iconpack-icons").click(function(){ if (confirm("按【确定】选择主题包,按【取消】恢复默认主题包。")) { let IconPack = prompt('输入1使用【公主链接R主题包】;输入2使用【自定义主题包】;\n输入0不启用主题更改;输入其他使用【旧版风格主题包】。', "1"); if (IconPack) { if(IconPack=="1"){ console.log('pcr');custom.iconPack="pcr"; localStorage.setItem('IconPackConf', JSON.stringify(custom));location.reload();} else if(IconPack=="2"){ console.log('user');custom.iconPack="user"; localStorage.setItem('IconPackConf', JSON.stringify(custom));location.reload();} else if(IconPack=="0"){ console.log('off');custom.iconPack="off"; localStorage.setItem('IconPackConf', JSON.stringify(custom));location.reload();} else{ console.log('classic');custom.iconPack="classic"; localStorage.setItem('IconPackConf', JSON.stringify(custom));location.reload();} } }else{ if(confirm("按【确定】恢复默认主题包,按【取消】则不操作。")){ console.log('classic');custom.iconPack="classic"; localStorage.setItem('IconPackConf', JSON.stringify(custom));location.reload();}} }); $(".iconpack-size").click(function(){ let IconSize = prompt('请输入图标大小,格式应为32-128间的数字+px\n示例:50px', "50px"); if (IconSize) { custom.iconSize = IconSize; localStorage.setItem('IconPackConf', JSON.stringify(custom));location.reload();} else{ custom.iconSize = '50px'; localStorage.setItem('IconPackConf', JSON.stringify(custom));location.reload();} }); $(".iconpack-usr").click(function(){ let userIcon = prompt('请输入自定义主题包的json数据,\n请访问默认显示的url,以查看完整的json格式。', "https://kf.miaola.work/read.php?tid=809121&sf=141&page=21"); if (userIcon) { console.log(userIcon); userIcons=JSON.parse(userIcon); localStorage.setItem('userIcons', userIcon);} }); $(".iconpack-switch").click(function(e){ custom.useOldNames = e.target.checked; localStorage.setItem('IconPackConf', JSON.stringify(custom));location.reload();}); function listener(){console.log("listener fired.");repfunc();} document.addEventListener("DOMSubtreeModified", function() { if(timeout) {clearTimeout(timeout);} timeout = setTimeout(listener, 50);}, false); function repfunc(){ if(custom.iconPack=="classic"){ nowIcons=classicIcons;} else if(custom.iconPack=="pcr"){ nowIcons=pcrIcons;} else if(custom.iconPack=="off"){ return;} else if(custom.iconPack=="user"){ if(userIcons.i19){nowIcons=userIcons;} else{ console.log("自定义主题包数据异常,没有主题包启用!"); return;} } let ext=nowIcons.ext,url=nowIcons.url,dessert=nowIcons.dessert,i0=nowIcons.i0,i1=nowIcons.i1,i2=nowIcons.i2,i3=nowIcons.i3,i4=nowIcons.i4,i5=nowIcons.i5,i6=nowIcons.i6,i7=nowIcons.i7,i8=nowIcons.i8,i9=nowIcons.i9,i10=nowIcons.i10, i11=nowIcons.i11,i12=nowIcons.i12,i13=nowIcons.i13,i14=nowIcons.i14,i15=nowIcons.i15,i16=nowIcons.i16,i17=nowIcons.i17,i18=nowIcons.i18,i19=nowIcons.i19,i20=nowIcons.i20,i21=nowIcons.i21,i22=nowIcons.i22; if(custom.useOldNames==true){ i5=nowIcons.o5;i11=nowIcons.o11;i12=nowIcons.o12;i20=nowIcons.o20;i21=nowIcons.o21;i22=nowIcons.o22; $("button[data-original-title*='荆棘盾剑']").attr("data-original-title",function(n,v){ n= v.replace(/荆棘盾剑/g, "荆棘剑盾");return n;}); $("button[data-original-title*='饮血魔剑']").attr("data-original-title",function(n,v){ n= v.replace(/饮血魔剑/g, "饮血长枪");return n;}); $("button[data-original-title*='探险者手环']").attr("data-original-title",function(n,v){ n= v.replace(/探险者手环/g, "探险者手套");return n;}); $("button[data-original-title*='秃鹫手环']").attr("data-original-title",function(n,v){ n= v.replace(/秃鹫手环/g, "秃鹫手套");return n;}); $("button[data-original-title*='复苏战衣']").attr("data-original-title",function(n,v){ n= v.replace(/复苏战衣/g, "复苏木甲");return n;}); $("button[data-original-title*='探险者耳环']").attr("data-original-title",function(n,v){ n= v.replace(/探险者耳环/g, "探险者头巾");return n;}); $("button[data-original-title*='占星师的耳饰']").attr("data-original-title",function(n,v){ n= v.replace(/占星师的耳饰/g, "占星师的发饰");return n;}); $("button[data-original-title*='萌爪耳钉']").attr("data-original-title",function(n,v){ n= v.replace(/萌爪耳钉/g, "天使缎带");return n;}); } if(ext!=".gif"){ $("button[style*='ys/icon/z/z2']").attr("style",function(n,v){ n= v.replace(/.gif/g, ext);return n;});} if(custom.iconPack=="pcr"){ $("button[data-original-title*='稀有苹果护身符']").attr("data-original-title",function(n,v){ n= v.replace(/稀有苹果护身符/g, "家常的苹果派");return n;}); $("button[data-original-title*='史诗苹果护身符']").attr("data-original-title",function(n,v){ n= v.replace(/史诗苹果护身符/g, "美味的苹果派");return n;}); $("button[data-original-title*='传奇苹果护身符']").attr("data-original-title",function(n,v){ n= v.replace(/传奇苹果护身符/g, "诱人的苹果派");return n;}); $("button[data-original-title*='稀有葡萄护身符']").attr("data-original-title",function(n,v){ n= v.replace(/稀有葡萄护身符/g, "家常的甜甜圈");return n;}); $("button[data-original-title*='史诗葡萄护身符']").attr("data-original-title",function(n,v){ n= v.replace(/史诗葡萄护身符/g, "美味的甜甜圈");return n;}); $("button[data-original-title*='传奇葡萄护身符']").attr("data-original-title",function(n,v){ n= v.replace(/传奇葡萄护身符/g, "诱人的甜甜圈");return n;}); $("button[data-original-title*='稀有樱桃护身符']").attr("data-original-title",function(n,v){ n= v.replace(/稀有樱桃护身符/g, "家常的樱桃蛋糕");return n;}); $("button[data-original-title*='史诗樱桃护身符']").attr("data-original-title",function(n,v){ n= v.replace(/史诗樱桃护身符/g, "美味的樱桃蛋糕");return n;}); $("button[data-original-title*='传奇樱桃护身符']").attr("data-original-title",function(n,v){ n= v.replace(/传奇樱桃护身符/g, "诱人的樱桃蛋糕");return n;}); } $("button[style*='z2105_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2105_/g, url+i0[1]);return n;}); $("button[style*='z2104_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2104_/g, url+i1[1]);return n;}); $("button[style*='z2109_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2109_/g, url+i2[1]);return n;}); $("button[style*='z2106_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2106_/g, url+i3[1]);return n;}); $("button[style*='z2108_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2108_/g, url+i4[1]);return n;}); $("button[style*='z2110_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2110_/g, url+i5[1]);return n;}); $("button[style*='z2107_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2107_/g, url+i6[1]);return n;}); $("button[style*='z2102_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2102_/g, url+i7[1]);return n;}); $("button[style*='z2103_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2103_/g, url+i8[1]);return n;}); $("button[style*='z2101_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2101_/g, url+i9[1]);return n;}); $("button[style*='z2202_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2202_/g, url+i10[1]);return n;}); $("button[style*='z2203_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2203_/g, url+i11[1]);return n;}); $("button[style*='z2201_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2201_/g, url+i12[1]);return n;}); $("button[style*='z2304_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2304_/g, url+i13[1]);return n;}); $("button[style*='z2307_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2307_/g, url+i14[1]);return n;}); $("button[style*='z2305_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2305_/g, url+i15[1]);return n;}); $("button[style*='z2306_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2306_/g, url+i16[1]);return n;}); $("button[style*='z2301_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2301_/g, url+i17[1]);return n;}); $("button[style*='z2302_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2302_/g, url+i18[1]);return n;}); $("button[style*='z2303_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2303_/g, url+i19[1]);return n;}); $("button[style*='z2403_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2403_/g, url+i20[1]);return n;}); $("button[style*='z2402_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2402_/g, url+i21[1]);return n;}); $("button[style*='z2401_']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z\/z2401_/g, url+i22[1]);return n;}); $("button[style*='z903.gif']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z903/g, url+dessert[0]);return n;}); $("button[style*='z902.gif']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z902/g, url+dessert[1]);return n;}); $("button[style*='z901.gif']").attr("style",function(n,v){ n= v.replace(/ys\/icon\/z901/g, url+dessert[2]);return n;}); $(".fyg_tc>img[src*='z2105_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2105_/g, url+i0[1]);return n;}); $(".fyg_tc>img[src*='z2104_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2104_/g, url+i1[1]);return n;}); $(".fyg_tc>img[src*='z2109_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2109_/g, url+i2[1]);return n;}); $(".fyg_tc>img[src*='z2106_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2106_/g, url+i3[1]);return n;}); $(".fyg_tc>img[src*='z2108_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2108_/g, url+i4[1]);return n;}); $(".fyg_tc>img[src*='z2110_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2110_/g, url+i5[1]);return n;}); $(".fyg_tc>img[src*='z2107_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2107_/g, url+i6[1]);return n;}); $(".fyg_tc>img[src*='z2102_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2102_/g, url+i7[1]);return n;}); $(".fyg_tc>img[src*='z2103_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2103_/g, url+i8[1]);return n;}); $(".fyg_tc>img[src*='z2101_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2101_/g, url+i9[1]);return n;}); $(".fyg_tc>img[src*='z2202_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2202_/g, url+i10[1]);return n;}); $(".fyg_tc>img[src*='z2203_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2203_/g, url+i11[1]);return n;}); $(".fyg_tc>img[src*='z2201_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2201_/g, url+i12[1]);return n;}); $(".fyg_tc>img[src*='z2304_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2304_/g, url+i13[1]);return n;}); $(".fyg_tc>img[src*='z2307_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2307_/g, url+i14[1]);return n;}); $(".fyg_tc>img[src*='z2305_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2305_/g, url+i15[1]);return n;}); $(".fyg_tc>img[src*='z2306_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2306_/g, url+i16[1]);return n;}); $(".fyg_tc>img[src*='z2301_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2301_/g, url+i17[1]);return n;}); $(".fyg_tc>img[src*='z2302_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2302_/g, url+i18[1]);return n;}); $(".fyg_tc>img[src*='z2303_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2303_/g, url+i19[1]);return n;}); $(".fyg_tc>img[src*='z2403_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2403_/g, url+i20[1]);return n;}); $(".fyg_tc>img[src*='z2402_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2402_/g, url+i21[1]);return n;}); $(".fyg_tc>img[src*='z2401_']").attr("src",function(n,v){ n= v.replace(/ys\/icon\/z\/z2401_/g, url+i22[1]);return n;}); } /** * add CSS */ $('head').append(`<style> .btn.fyg_mp3 { width: ${iconsize} !important; height: ${iconsize} !important; background-size:100% 100%;line-height: ${Math.floor(parseInt(iconsize)*3/5)}px; } .btn.fyg_colpzbg.fyg_mp3 { width: ${iconsize} !important; height: ${iconsize} !important; background-size:100% 100%;} .img-rounded { width: 50px; height:50px;} .btn.fyg_colpzbg.fyg_tc { width: 60px !important; height: 100px !important;line-height:25px;} </style>`); if(custom.iconPack=="pcr"){ $('head').append(`<style> [data-trigger=hover] {background-blend-mode: normal !important; } </style>`);}