diff --git a/torn-trans-zhcn.user.js b/torn-trans-zhcn.user.js index da1a2c3..f6ccb35 100644 --- a/torn-trans-zhcn.user.js +++ b/torn-trans-zhcn.user.js @@ -1,27 +1,40 @@ // ==UserScript== -// @lastmodified 202201181732 +// @lastmodified 202201261722 // @name Torn翻译 // @namespace WOOH -// @version 0.2.0118a +// @version 0.3.1 // @description Torn UI翻译 // @author Woohoo[2687093] Sabrina_Devil[2696209] // @match https://www.torn.com/* -// @grant none +// @grant GM_xmlhttpRequest +// @grant unsafeWindow +// @connect * // ==/UserScript== (function () { 'use strict'; - const ___window___ = window || window.unsafeWindow; - if (___window___.WHTRANS) return; - ___window___.WHTRANS = true; - - const CC_set = /[\u4e00-\u9fa5]/; - const version = '0.2.0118a'; - + // unsafewindow副本 + const UWCopy = window.unsafeWindow; + try { + window = UWCopy || window; + } catch (e) { + console.error(`[wh] 错误:window对象是常量 ${e}`); + } + // 防止脚本重复运行 + if (window.WHTRANS) return; + window.WHTRANS = true; + // 版本 + const version = '0.3.1'; + // 修改历史 const changelist = [ { todo: true, cont: `翻译:baza npc商店、imarket、imarket搜索结果`, }, + { + ver: '0.3.1', + date: '20220126', + cont: `添加载入伞佬的飞贼小助手`, + }, { ver: '0.2.0118a', date: '20220118', @@ -237,9 +250,13 @@ 更新了一些物品名称翻译,咸鱼修正为鳟鱼`, }, ]; + // iframe判断 const isIframe = self !== top; - + // jquery引入 const $ = window.jQuery; + // pda api key + const PDA_APIKey = '###PDA-APIKEY###'; + const titleDict = { 'Home': '主页', 'Estate Agents': '地产中介', @@ -311,6 +328,7 @@ "Token Shop": 'Token 商店', "Calendar": '日历', "My Maps": '我的地图', + "Mods": '模组', }; const sidebarDict = { // todo 从json加载 'Money': '现金', @@ -2935,6 +2953,7 @@ "November": "十一月", "December": "十二月", }; + const CC_set = /[\u4e00-\u9fa5]/; // const transDict = {}; // transDict.titleDict = titleDict; @@ -2976,10 +2995,28 @@ // transDict.calDict = calDict; // if (!localStorage.getItem('wh_trans_transDict')) localStorage.setItem('wh_trans_transDict', JSON.stringify(transDict)) - let device; - if (window.innerWidth > 1000) device = 'pc'; - else if (window.innerWidth <= 600) device = 'mobile'; - else device = 'tablet'; + // 伪enum 设备类型 PC MOBILE TABLET + const Device = Object.freeze({ + PC: 'pc', + MOBILE: 'mobile', + TABLET: 'tablet', + }); + // 伪enum 用户脚本平台 + const UserScriptEngine = Object.freeze({ + RAW: 'raw', + GM: 'gm', + PDA: 'pda', + }); + // 设备类型 + const device = window.innerWidth >= 1000 + ? Device.PC : window.innerWidth <= 600 ? Device.MOBILE : Device.TABLET; + // 加载中gif图base64 + const loading_gif_base64 = () => { + return 'data:image/gif;base64,R0lGODlhAAQABKIFAKqqqoiIiO7u7szMzGZmZgAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQFCAAFACwAAAAAAAQABAAD/1i63P4wykmrvTjrzbv/YCiOZGmeaKqubOu+cCzPdG3feK7vfO//wKBwSCwaj8ikcslsOp/QqHRKrVqv2Kx2y+16v+CweEwum8/otHrNbrvf8Lh8Tq/b7/i8fs/v+/+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+/wADChxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsf+jx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4sfT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+/////AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopqjiiiy26OKLMMYo44w01mjjjTjmqOOOPPbo449ABinkkER+R8CRSBbpG5JMNunkkUrO9uSUVEIZpWpVZqnllaVp6aWXXIL25ZhZhskZmWiWaaZlabap5pqQuSlnlXA+NuedVNa5GJ58PqknYn0G2uSfhQlqaJKEBnboogQk+hejjDrKF6SQSpoXpZRaahemmGo6F6ecehoXqJ2K6hapoZrKFqqlqpoWq6m6ahasoMo6K62t2hoWrrXquiuvufrKFbC9CjssscEaixWy/8kqWxWzsTprFbTNShsVtZlaOy22kWpLFbfZenstuN2KCxW55ZrrFLqLqnsuu4a6+xS88crLFL2H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TeowkapUpbavqU1VH1Sjer6pUjV8VnUqVrOaVPJxVavb+2pXvSdWo261rEElK1qFqta1+rStbtUpXONq07nStaZhvatcsafXvVavrznNK2BjatfBmrSwhhUpYhPr0bMytqSOfWxIIyvZjlK2shm9LGYlWtXNarSznrUoaEMb0aeStrRSPa1DTavahM6vta5lKmwP+trZLhSotn0oTnM70d3ydp4s/a08gyvcjyKwuOyMIHLRCdLl/660uc7lZgejK12MUteaEL1uPhmq3Z8itLvXJCh4jxrE8Q70iOYNQD21K0bqrrO45cztHFWbx8pC063AzK9+98vf/vr3vwAOsIAHTOACG/jACE6wghfM4AY7+MEQjrCEJ0zhClv4whjOsIY3zOEOe/jDIA6xiEdM4hKb+MQoTrGKV8ziFrv4xTCOsYxnTOMa2/jGOM6xjne8YwBgGABADrKQhyxkBhP5yEgucoGTzOQm+/i/To6yk/cr5So3Ob9WzjKTe6nlLm8Zl14O85dpKeYyI5nMZk7zkGWp5jYruZVujnOQ4SznOj8ZlXbOcyrzrGdT8pnPpfzzn0cpaEGHsv/QhQYlohPdyUUjutGOZnQmI73oSVO60pe8tKMtqelIV7LTnp4kqEMNyVFTOpKmPvUjU61qRrL60o18NawXKetZI7LWmk4krnN9yF3zupC+/vUggy3sQBK72H88NrL7qOxl77HZzsYjtDsNyGlH247WvjYds61tOXK723D8NrjdKO5xs7Hc5lYjutNdxnWzW4zutvW2493qOdJb3t6+N6nzre9N27vf+w43wP0dx4EHvI0GP/i5E45pgTNc0iMZgMQnTnGJE+PhDadIxTfOcYrrAuOPfkjHR07yAdAC5CEnSMlXXnJZoBzi9mC5zFvOipfDnB0zzznNT2FzQ8ND50D/37koej7ocwT96EIHBdEBLQ6kO33kPF+6ncPx9KpzPOpSlzM3rM71ipsi61OXRtfH7vVQgF3rziC72ic+9LO7uRlrj7vJze72NiND7nH/et3VTAy8573tezfzL/wud70Hvsy6IDzeDX94L+dC8X5nfOO1TAvIE17yk69y5S2/eMxnPsqy4PzlPf/5MbNC9JHHeulBf3rUp570qz9y611feFTEnvWmoP3oVX972Z9C96/nfe/XLArg7174wwdy7o3f+Zonn/ihYH7znf/8OYNC+sG3ffWVf33s194V27+zJrz/ffBvfxPkn34rzj/+9P99FtVHv/vXnovny3/+ZP/4//Dvj/+u+2L/7dd//vd/txeAAjiA+rd6BniAVjcMsbeADPh0F6eAlBCBCPgLFDgJFsh1yfB5ELiBQdcMmfeBIKhzzjB5JFiCMycNjZeCKshy03B4LviCSdeBezeDNAh113CDmZCDIYgNdYeDPrhx3XB2/DeEMFiEWXeESFiDMSh1TNiEOhgOS9d9Urhy50B0VniFJLcOPbeFXNhx7GBzYBiGRDiGIBd9ZjiFXohxariGVxcPD1d8cBiHcphwdFiHZVcPBrd8euhx+jBwfviHFrcP/fZ7hMh2/6BviJiIc7eI8YYKjliIAOFus5eICYFurTCJj0gQ4uYKnOgQ3BZ6k//4ENlGio44EdM2C6FIEcq2eamIEcH2eKWYEbuWeLVoi7LmC63YEa82eLnoEaPWd8EoEu/2hpjYEgRHjLGojD4Hd8XojGgndtFYE2lGddXYE11mdNnYFeJXD734SOHoSOPYSOXISOe4SOmoSOuYSO2ISO94SPFoSPNYSPVISPc4SPkoSPsYSP0ISP/4RwHpRwPZRwXJRwe5RwmpRwuZRw2JRw95RxFpRxNZRxVJRxc5RxkpRxsZRx0JRx/5RiHpRiPZRiXJRie5RimpRiuJRi1ZRi8pRjH5RTPJRTWZRTdpRTk5RTsJRT3ZRD+pREEplMkoSc0YSUcJSUkpjkWJlE1q6ZR6aEmEKJV/SJVRaZVriElXiZVmmElwqElfCZZhyEldSZZX+ElSCEppqZZDKEptOUo+WEo0eEoqmEoguEoW2EoM+EoCGEv4N0vuZ0vYl0vMx0u0B0yct1+Q91/vJ2AcqGBHZ2GAqEsJAAAh+QQFCAAFACz6APoAZgJmAgAD/1i63P4wykmrvTjrzbv/YCiOZGlagnCubOu+cCzPdG3fOJvufN/nwKBwSCwaj8jkycds8pTQqHRKrVqvMKd2m8J6v+CweEz+cM/csnrNbrvfWbRcC6/b7/i8eM7f6v+AgYKDS32GdISJiouMf4ePiI2Sk5SVUpCYTZabnJ2eLpmhPp+kpaanEKKqT6itrq+Mq7I7sLW2t22zul24vb6/UbvCwMTFxjXCw8fLzM0gycnO0tPUD9DQ1dnax9fX29/gtd3d4eXmnuPk5+vsi+nj7fHyee/p8/f4avX2+f3+Vvve/RtI8EhAgQUTKrRxsN7ChxB1NEQYsaLFDhP3XdzIkf9CRo0dQ4os8BHkyJMVS5pEyTKhyoAtYw58CVOmzXs0a97cuS7nQZ5Aw/n8GbRotaFEjSplhjTp0qfAmjqFStWW1KlVs6K6ilWrV3RcdX4dyylsV7Jo3Zk9m7YtoLVs3cq9Azfu3Lu56orFy9eNXrt9A3v5C1iw4SmECx9ejCSxYsaQhTh+HLkyw8l7LWsOgjnz5s+XOzsETTq0aIqlU784vVK160KsUb+eLSJ2a9q4Odgenbv3ht28fQuvADz48OPWivNDzryB8uXNoz+HHh35dHjVm1/Hnv34dnXdh38HH773eG/lfZ/Hlt78emXtcb+HH3/2/F315d/XlZ/2/ln//dn33yoBvjYggQWqdqAqCSq4YCgNpvYghBGWNiEmFVp44SMZarhhHx2S9qEhIYo44hwlgnYiiilutqIcLX724hkxyjhjJDVWdiOOOUa2oyY9avbjKEFaNuQPRRp5JC9J6rhkk0oeCWWUP05J5Y1WXvlillqeyGWXH34J5oVijvlgmWYeiKaTXq7J5oZupnlfnHK+R2ed592J53d67nldn34+B2igxQ1K6G6GCrlfoorOx2ij6z3qYqSSQrpdpZPyiWmm021qY6eeclpoqJ8CR6qKo55aKmuqenhaq652BquEos1KK2a2OuhYrq7tymuvf/0qIFzCDmtWsf4di2yy/1Itqx5Szgo3VLTi0UStdypdy1xG2lbnWbfWcQdud+iNGx9/5hZIYboVkshukSq8K++89NZr77345qvvvvz26++/AAcs8MAEF2zwwQgnrPDCDDfs8MMQRyzxxBRXbPHFGGes8cYcd+zxxyCHLPLIJJds8skop6zyyiy37PLLMMcs88w012zzzTjnrPPOPPfs889ABy300EQXbfTRSCet9NJMN+3001BHLfXUVFdt9dVYZ6311ly/TMDXYIct9thkl2322WinrfbYXZOx9ttwxy333Ge3XQXdeOet995s230E34AHLjjcfgsx+OGIJx524Tco7vjjgjMuA+SUV5635P8uWK755nFjfgLnoIeOtucjiG766YuT/gHqrJ+uOgetx2766xnIbnvotFtw++6c5z4B78Br7nsEwRdP+fAOGK/848gvsPzzijcP/fSHI0/99ZH7jv32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9tpke40G23DHLffcdKPtdhZ156333ny3fTcTfQcu+OBx/y0E4YgnrrjYhvew+OOQD954DpFXbrne/5O3cPnmnMudOQqdhy562p+XMPrpqDNeegipt4766h+4LvvpsG8w++2i124B7rx3rvsEvQe/+e8QCG985cQ7cPzykCe/APPQL+589NQnnnz12Euue/bc9/179+BjDnv45NNde/noF156+uyvvX778Nudefz0lz1//firbnj+/AMwef/5+x8A8be/ARLwbwY84N0SqMCuMbCBXHtg/RYowfhRsILtuyAG2ee2DcKvgx7koANDKMIIkjB9XjshCkeoQvKlsIUuZCEMuwfCGXKvhjbEHg5zSL0d8pB5GvwhEH0oROMFsYhGPCISe4fAJSZRiU6cXeOiGLwpUhF3AryiFP+zqMXW3a+LqfscGL0oxjGObnxmDB0a0zi887Hxctt7I/K+J8fmEa+O0rseHhHnPAXsUXt9LMAfvRfI5w1SfIX04yHNl0gGLNJzjWzAI9kWyQdMUn6VtOQl/ZbJ4m0ybJ2kwCdDubtFkhIDgzxlB+qoShCksZUkuCIsVSDEWVJug7bMpS53ycte+vKXwAymMIdJzGIa85jITKYyl8nMZjrzmdCMpjSnSc1qWvOa2MymNrfJzW5685vgDKc4x0nOcprznOhMpzrXyc52uvOd8IynPOdJz3ra8574zKc+98nPfvrznwANqEAHStCCGvSgCN1XAGglgEAF4KEQjahEI+r/JwFY9KIYzShGuzTRjnqUomnSqEhHutEiffSkKF3olUjK0pY2tEUpjWlKi+TSmro0RDLNKUprZNOetrRCOg3qSVvk06KytEBCTepQM2TUph41PkqN6lIL5NSqPjU8Us2qR6lq1a6KFKtaDatE++PVsmo0O2JNK0jbY9a2lvQ5ao0rRMvj1rpedDlyzetDu2PXvlq0OHoNbHX8SljgBFaw1CFsYW9z2MNCR7GKtU1jG7scyEI2NpOdrHEsa1nWZDazweEsZ0/zWdACR7Sj9UxpP8sb1Iq2M6tl7W5c+1rKxLa0t6EtaidzW9zKRreudUxvV/tb4O62MMONbWuMS1vC/yRXuaxhbnP38lzooka6061LdW97Xexmly3b5e5pvKtbuIRXvKMhb3nPct7eple96w1Le90rGvgCV77zRW9n7HtfrOR3uJ7hr3Gv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'; + }; + // 加载中html + const loading_gif_html = `lgif`; + // 默认设置 const default_settings = [ @@ -3053,8 +3090,10 @@ }); saveSettings(); + const GS = {}; + // 插件的设置dom配置列表 - const settingsArr = [] + const settingsArr = []; { // 开启翻译 settingsArr.push({ @@ -3095,7 +3134,7 @@ } if (connected) { // 传回的动态内容 - if (isDev()) console.log(e.data); + log(e.data); } }, false); } @@ -3286,9 +3325,9 @@

点击开打:

Duke Leslie -Jimmy -Fernando -Tiny

+Jimmy(面包刀) +Fernando(毒伞) +Tiny(大锤)

`; popupMsg(insert, 'NPC LOOT'); }, @@ -3303,6 +3342,64 @@ window.open('https://docs.qq.com/doc/DTVpmV2ZaRnB0RG56'); }, }) + // 飞贼模块 + settingsArr.push({ + domType: 'button', + domId: 'wh-gs-btn', + domText: '飞贼', + clickFunc: function (e) { + e.target.blur(); + if (getScriptEngine() === UserScriptEngine.PDA && !window.location.href.includes('crimes.php')) { + window.alert('因PDA 或 Torn 限制无法开启飞贼小助手,即将转跳至 Crime 页面。') + window.location.href = 'https://www.torn.com/crimes.php'; + return; + } + const popup_node = popupMsg(`加载中 ${loading_gif_html}
`, '飞贼助手加载'); + if (!GS.LOADED) { + COFetch('https://cdn.staticfile.org/vue/2.2.2/vue.min.js') + .catch(err => popup_node.innerHTML = err) + .then(VueJS => { + window.eval(VueJS); + GS.LOADED = true; + popup_node.innerHTML += '已载入依赖
'; + window.GM_getValue = (k, v = undefined) => { + const objV = JSON.parse(window.localStorage.getItem('wh-gs-storage') || '{}')[k]; + return objV || v; + }; + window.GM_setValue = (k, v) => { + const obj = JSON.parse(window.localStorage.getItem('wh-gs-storage') || '{}'); + obj[k] = v; + window.localStorage.setItem('wh-gs-storage', JSON.stringify(obj)); + }; + COFetch(`https://gitee.com/ameto_kasao/tornjs/raw/master/GoldenSnitch.js?${performance.now()}`) + .then(GSJS => { + if (getScriptEngine() === UserScriptEngine.GM) { + window.GM_xmlhttpRequest = GM_xmlhttpRequest; + } else if (getScriptEngine() === UserScriptEngine.PDA) { + GSJS = GSJS.replace('http://222.160.142.50:8154/mugger', `https://jjins.github.io/mugger.json?${performance.now()}`); + + window.GM_xmlhttpRequest = function (opt) { + // 暂不适配pda post + if (opt.method.toLowerCase() === 'post') return; + + COFetch(opt.url).then(res => { + const obj = {} + obj.responseText = res + opt.onload(obj) + }); + }; + } + window.eval(GSJS); + if (isDev()) window.GM_setValue("gsp_showContent", true); + popup_node.innerHTML += '飞贼助手已载入
'; + }) + .catch(err => popup_node.innerHTML = `PDA API错误。${err}`); + }); + } else { + popup_node.innerHTML += '飞贼助手已经加载了'; + } + }, + }) // 危险行为开关⚠️ settingsArr.push({ domType: 'button', @@ -3329,7 +3426,7 @@ settingsArr.push({ domType: 'checkbox', domId: 'wh-dev-mode', - domText: ' 开发者模式', + domText: ' 开发者模式 ', dictName: 'isDev', }) // 更新历史 @@ -3346,26 +3443,89 @@ popupMsg(insert, '更新历史'); }, }) + // 测试按钮 + if (isDev()) settingsArr.push({ + domType: 'button', + domId: 'wh-test-btn', + domText: '测试按钮', + clickFunc: function () { + log(window, document) + // let pop = popupMsg(''); + // let ifr = document.createElement('iframe'); + // ifr.src = 'https://www.torn.com/crimes.php'; + // document.body.append(ifr) + // log(ifr.contentDocument) + // ifr.onload = () => { + // const _window = ifr.contentWindow; + // const _docu = _window.document; + // _docu.head.innerHTML = ''; + // _docu.body.innerHTML = ''; + // COFetch('https://cdn.staticfile.org/vue/2.2.2/vue.min.js') + // // .catch(err => popup_node.innerHTML = err) + // .then(vuejs => { + // _window.eval(vuejs) + // log('Vue: ', typeof _window.Vue) + // // Eval(vuejs).catch(err => log(err)).then(() => { + // // muggerInter.hasVue = true; + // // popup_node.innerHTML += '依赖已载入
'; + // _window.GM_getValue = (k, v = undefined) => { + // const objV = JSON.parse(_window.localStorage.getItem('wh-gs-storage') || '{}')[k]; + // return objV || v; + // }; + // _window.GM_setValue = (k, v) => { + // const obj = JSON.parse(_window.localStorage.getItem('wh-gs-storage') || '{}'); + // obj[k] = v; + // _window.localStorage.setItem('wh-gs-storage', JSON.stringify(obj)); + // }; + // COFetch(`https://gitee.com/ameto_kasao/tornjs/raw/master/GoldenSnitch.js?${performance.now()}`) + // .then(res => { + // // if (getScriptEngine() === UserScriptEngine.GM) { + // // ifr.contentWindow.GM_xmlhttpRequest = GM_xmlhttpRequest; + // // } else + // if (getScriptEngine() === UserScriptEngine.PDA) { + // res = res.replace('http://222.160.142.50:8154/mugger', `https://jjins.github.io/mugger.json?${performance.now()}`); + // _window.GM_xmlhttpRequest = function (opt) { + // // 暂不适配pda post + // if (opt.method.toLowerCase() === 'post') return; + // COFetch(opt.url).then(res => { + // const obj = {}; + // obj.responseText = res; + // opt.onload(obj); + // }); + // }; + // } + // _window.eval(res); + // // Eval(res).catch(err => log(err)).then(() => { + // if (isDev()) _window.GM_setValue("gsp_showContent", true) + // // }); + // // popup_node.innerHTML += '飞贼助手已载入
'; + // }) + // // .catch(err => popup_node.innerHTML = `PDA API错误。${err}`); + // // }) + // }); + // }; + }, + }) } // 左侧“中”标签 const $zhongNode = initIcon(); - // 小窗犯罪按钮 - if ($zhongNode) $zhongNode.querySelector('#wh-quick-crime-btn').onclick = () => { - // 弹出小窗口 - const ifHTML = ``; - const loading_gif_base64 = 'data:image/gif;base64,R0lGODlhAAQABKIFAKqqqoiIiO7u7szMzGZmZgAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQFCAAFACwAAAAAAAQABAAD/1i63P4wykmrvTjrzbv/YCiOZGmeaKqubOu+cCzPdG3feK7vfO//wKBwSCwaj8ikcslsOp/QqHRKrVqv2Kx2y+16v+CweEwum8/otHrNbrvf8Lh8Tq/b7/i8fs/v+/+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+/wADChxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsf+jx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw4sfT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+/////AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopqjiiiy26OKLMMYo44w01mjjjTjmqOOOPPbo449ABinkkER+R8CRSBbpG5JMNunkkUrO9uSUVEIZpWpVZqnllaVp6aWXXIL25ZhZhskZmWiWaaZlabap5pqQuSlnlXA+NuedVNa5GJ58PqknYn0G2uSfhQlqaJKEBnboogQk+hejjDrKF6SQSpoXpZRaahemmGo6F6ecehoXqJ2K6hapoZrKFqqlqpoWq6m6ahasoMo6K62t2hoWrrXquiuvufrKFbC9CjssscEaixWy/8kqWxWzsTprFbTNShsVtZlaOy22kWpLFbfZenstuN2KCxW55ZrrFLqLqnsuu4a6+xS88crLFL2H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TeowkapUpbavqU1VH1Sjer6pUjV8VnUqVrOaVPJxVavb+2pXvSdWo261rEElK1qFqta1+rStbtUpXONq07nStaZhvatcsafXvVavrznNK2BjatfBmrSwhhUpYhPr0bMytqSOfWxIIyvZjlK2shm9LGYlWtXNarSznrUoaEMb0aeStrRSPa1DTavahM6vta5lKmwP+trZLhSotn0oTnM70d3ydp4s/a08gyvcjyKwuOyMIHLRCdLl/660uc7lZgejK12MUteaEL1uPhmq3Z8itLvXJCh4jxrE8Q70iOYNQD21K0bqrrO45cztHFWbx8pC063AzK9+98vf/vr3vwAOsIAHTOACG/jACE6wghfM4AY7+MEQjrCEJ0zhClv4whjOsIY3zOEOe/jDIA6xiEdM4hKb+MQoTrGKV8ziFrv4xTCOsYxnTOMa2/jGOM6xjne8YwBgGABADrKQhyxkBhP5yEgucoGTzOQm+/i/To6yk/cr5So3Ob9WzjKTe6nlLm8Zl14O85dpKeYyI5nMZk7zkGWp5jYruZVujnOQ4SznOj8ZlXbOcyrzrGdT8pnPpfzzn0cpaEGHsv/QhQYlohPdyUUjutGOZnQmI73oSVO60pe8tKMtqelIV7LTnp4kqEMNyVFTOpKmPvUjU61qRrL60o18NawXKetZI7LWmk4krnN9yF3zupC+/vUggy3sQBK72H88NrL7qOxl77HZzsYjtDsNyGlH247WvjYds61tOXK723D8NrjdKO5xs7Hc5lYjutNdxnWzW4zutvW2493qOdJb3t6+N6nzre9N27vf+w43wP0dx4EHvI0GP/i5E45pgTNc0iMZgMQnTnGJE+PhDadIxTfOcYrrAuOPfkjHR07yAdAC5CEnSMlXXnJZoBzi9mC5zFvOipfDnB0zzznNT2FzQ8ND50D/37koej7ocwT96EIHBdEBLQ6kO33kPF+6ncPx9KpzPOpSlzM3rM71ipsi61OXRtfH7vVQgF3rziC72ic+9LO7uRlrj7vJze72NiND7nH/et3VTAy8573tezfzL/wud70Hvsy6IDzeDX94L+dC8X5nfOO1TAvIE17yk69y5S2/eMxnPsqy4PzlPf/5MbNC9JHHeulBf3rUp570qz9y611feFTEnvWmoP3oVX972Z9C96/nfe/XLArg7174wwdy7o3f+Zonn/ihYH7znf/8OYNC+sG3ffWVf33s194V27+zJrz/ffBvfxPkn34rzj/+9P99FtVHv/vXnovny3/+ZP/4//Dvj/+u+2L/7dd//vd/txeAAjiA+rd6BniAVjcMsbeADPh0F6eAlBCBCPgLFDgJFsh1yfB5ELiBQdcMmfeBIKhzzjB5JFiCMycNjZeCKshy03B4LviCSdeBezeDNAh113CDmZCDIYgNdYeDPrhx3XB2/DeEMFiEWXeESFiDMSh1TNiEOhgOS9d9Urhy50B0VniFJLcOPbeFXNhx7GBzYBiGRDiGIBd9ZjiFXohxariGVxcPD1d8cBiHcphwdFiHZVcPBrd8euhx+jBwfviHFrcP/fZ7hMh2/6BviJiIc7eI8YYKjliIAOFus5eICYFurTCJj0gQ4uYKnOgQ3BZ6k//4ENlGio44EdM2C6FIEcq2eamIEcH2eKWYEbuWeLVoi7LmC63YEa82eLnoEaPWd8EoEu/2hpjYEgRHjLGojD4Hd8XojGgndtFYE2lGddXYE11mdNnYFeJXD734SOHoSOPYSOXISOe4SOmoSOuYSO2ISO94SPFoSPNYSPVISPc4SPkoSPsYSP0ISP/4RwHpRwPZRwXJRwe5RwmpRwuZRw2JRw95RxFpRxNZRxVJRxc5RxkpRxsZRx0JRx/5RiHpRiPZRiXJRie5RimpRiuJRi1ZRi8pRjH5RTPJRTWZRTdpRTk5RTsJRT3ZRD+pREEplMkoSc0YSUcJSUkpjkWJlE1q6ZR6aEmEKJV/SJVRaZVriElXiZVmmElwqElfCZZhyEldSZZX+ElSCEppqZZDKEptOUo+WEo0eEoqmEoguEoW2EoM+EoCGEv4N0vuZ0vYl0vMx0u0B0yct1+Q91/vJ2AcqGBHZ2GAqEsJAAAh+QQFCAAFACz6APoAZgJmAgAD/1i63P4wykmrvTjrzbv/YCiOZGlagnCubOu+cCzPdG3fOJvufN/nwKBwSCwaj8jkycds8pTQqHRKrVqvMKd2m8J6v+CweEz+cM/csnrNbrvfWbRcC6/b7/i8eM7f6v+AgYKDS32GdISJiouMf4ePiI2Sk5SVUpCYTZabnJ2eLpmhPp+kpaanEKKqT6itrq+Mq7I7sLW2t22zul24vb6/UbvCwMTFxjXCw8fLzM0gycnO0tPUD9DQ1dnax9fX29/gtd3d4eXmnuPk5+vsi+nj7fHyee/p8/f4avX2+f3+Vvve/RtI8EhAgQUTKrRxsN7ChxB1NEQYsaLFDhP3XdzIkf9CRo0dQ4os8BHkyJMVS5pEyTKhyoAtYw58CVOmzXs0a97cuS7nQZ5Aw/n8GbRotaFEjSplhjTp0qfAmjqFStWW1KlVs6K6ilWrV3RcdX4dyylsV7Jo3Zk9m7YtoLVs3cq9Azfu3Lu56orFy9eNXrt9A3v5C1iw4SmECx9ejCSxYsaQhTh+HLkyw8l7LWsOgjnz5s+XOzsETTq0aIqlU784vVK160KsUb+eLSJ2a9q4Odgenbv3ht28fQuvADz48OPWivNDzryB8uXNoz+HHh35dHjVm1/Hnv34dnXdh38HH773eG/lfZ/Hlt78emXtcb+HH3/2/F315d/XlZ/2/ln//dn33yoBvjYggQWqdqAqCSq4YCgNpvYghBGWNiEmFVp44SMZarhhHx2S9qEhIYo44hwlgnYiiilutqIcLX724hkxyjhjJDVWdiOOOUa2oyY9avbjKEFaNuQPRRp5JC9J6rhkk0oeCWWUP05J5Y1WXvlillqeyGWXH34J5oVijvlgmWYeiKaTXq7J5oZupnlfnHK+R2ed592J53d67nldn34+B2igxQ1K6G6GCrlfoorOx2ij6z3qYqSSQrpdpZPyiWmm021qY6eeclpoqJ8CR6qKo55aKmuqenhaq652BquEos1KK2a2OuhYrq7tymuvf/0qIFzCDmtWsf4di2yy/1Itqx5Szgo3VLTi0UStdypdy1xG2lbnWbfWcQdud+iNGx9/5hZIYboVkshukSq8K++89NZr77345qvvvvz26++/AAcs8MAEF2zwwQgnrPDCDDfs8MMQRyzxxBRXbPHFGGes8cYcd+zxxyCHLPLIJJds8skop6zyyiy37PLLMMcs88w012zzzTjnrPPOPPfs889ABy300EQXbfTRSCet9NJMN+3001BHLfXUVFdt9dVYZ6311ly/TMDXYIct9thkl2322WinrfbYXZOx9ttwxy333Ge3XQXdeOet995s230E34AHLjjcfgsx+OGIJx524Tco7vjjgjMuA+SUV5635P8uWK755nFjfgLnoIeOtucjiG766YuT/gHqrJ+uOgetx2766xnIbnvotFtw++6c5z4B78Br7nsEwRdP+fAOGK/848gvsPzzijcP/fSHI0/99ZH7jv32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9tpke40G23DHLffcdKPtdhZ156333ny3fTcTfQcu+OBx/y0E4YgnrrjYhvew+OOQD954DpFXbrne/5O3cPnmnMudOQqdhy562p+XMPrpqDNeegipt4766h+4LvvpsG8w++2i124B7rx3rvsEvQe/+e8QCG985cQ7cPzykCe/APPQL+589NQnnnz12Euue/bc9/179+BjDnv45NNde/noF156+uyvvX778Nudefz0lz1//firbnj+/AMwef/5+x8A8be/ARLwbwY84N0SqMCuMbCBXHtg/RYowfhRsILtuyAG2ee2DcKvgx7koANDKMIIkjB9XjshCkeoQvKlsIUuZCEMuwfCGXKvhjbEHg5zSL0d8pB5GvwhEH0oROMFsYhGPCISe4fAJSZRiU6cXeOiGLwpUhF3AryiFP+zqMXW3a+LqfscGL0oxjGObnxmDB0a0zi887Hxctt7I/K+J8fmEa+O0rseHhHnPAXsUXt9LMAfvRfI5w1SfIX04yHNl0gGLNJzjWzAI9kWyQdMUn6VtOQl/ZbJ4m0ybJ2kwCdDubtFkhIDgzxlB+qoShCksZUkuCIsVSDEWVJug7bMpS53ycte+vKXwAymMIdJzGIa85jITKYyl8nMZjrzmdCMpjSnSc1qWvOa2MymNrfJzW5685vgDKc4x0nOcprznOhMpzrXyc52uvOd8IynPOdJz3ra8574zKc+98nPfvrznwANqEAHStCCGvSgCN1XAGglgEAF4KEQjahEI+r/JwFY9KIYzShGuzTRjnqUomnSqEhHutEiffSkKF3olUjK0pY2tEUpjWlKi+TSmro0RDLNKUprZNOetrRCOg3qSVvk06KytEBCTepQM2TUph41PkqN6lIL5NSqPjU8Us2qR6lq1a6KFKtaDatE++PVsmo0O2JNK0jbY9a2lvQ5ao0rRMvj1rpedDlyzetDu2PXvlq0OHoNbHX8SljgBFaw1CFsYW9z2MNCR7GKtU1jG7scyEI2NpOdrHEsa1nWZDazweEsZ0/zWdACR7Sj9UxpP8sb1Iq2M6tl7W5c+1rKxLa0t6EtaidzW9zKRreudUxvV/tb4O62MMONbWuMS1vC/yRXuaxhbnP38lzooka6061LdW97Xexmly3b5e5pvKtbuIRXvKMhb3nPct7eple96w1Le90rGvgCV77zRW9n7HtfrOR3uJ7hr3Gv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'; - const popup_insert = `

加载中请稍后lgif

`; - const $popup = popupMsg(popup_insert, '小窗快速犯罪'); - // 运行状态node - let loading_node = $popup.querySelector('p:first-of-type'); - // if容器 - const if_cont = $popup.querySelector('#wh-quick-crime-if-container'); - if_cont.innerHTML = ifHTML; + if ($zhongNode) { + // 小窗犯罪按钮 + $zhongNode.querySelector('#wh-quick-crime-btn').onclick = () => { + // 弹出小窗口 + const ifHTML = ``; + const popup_insert = `

加载中请稍后${loading_gif_html}

`; + const $popup = popupMsg(popup_insert, '小窗快速犯罪'); + // 运行状态node + let loading_node = $popup.querySelector('p:first-of-type'); + // if容器 + const if_cont = $popup.querySelector('#wh-quick-crime-if-container'); + if_cont.innerHTML = ifHTML; - // if内未加载脚本时插入的快捷crime node - const mobile_prepend_node = document.createElement('div'); - mobile_prepend_node.classList.add('wh-translate'); - mobile_prepend_node.innerHTML = `
快捷操作:
+ // if内未加载脚本时插入的快捷crime node + const mobile_prepend_node = document.createElement('div'); + mobile_prepend_node.classList.add('wh-translate'); + mobile_prepend_node.innerHTML = `
快捷操作:
@@ -3382,92 +3542,106 @@

`; - // if对象加载后运行 - let cIframe = $popup.querySelector('iframe'); + // if对象加载后运行 + let cIframe = $popup.querySelector('iframe'); - // console.log(cIframe.contentWindow.document.readyState); - // cIframe.contentWindow.document.onreadystatechange = () => console.log(cIframe.contentWindow.document.readyState); - // 加载状态 - const if_onload_func = () => { - // if内部文档对象 - const ifDocu = cIframe.contentWindow.document; - // 内部插件运行flag - const ifWH = cIframe.contentWindow.WHTRANS; - // 文档加载完成后移除 - if (!!loading_node) loading_node.remove(); - // 文档加载完成后才显示if - cIframe.style.display = 'block'; - // 验证码flag - const isValidate = ifDocu.querySelector('h4#skip-to-content').innerText.toLowerCase().includes('validate'); - // 如果iframe内部未运行脚本 - if (ifWH === undefined) { - // 隐藏顶部 - elementReady('#header-root', ifDocu).then(e => e.style.display = 'none'); - // 隐藏4条 - elementReady('#sidebarroot', ifDocu).then(e => e.style.display = 'none'); - // 隐藏聊天 - elementReady('#chatRoot', ifDocu).then(e => e.style.display = 'none'); - // 非验证码页面隐藏滚动条 - if (!isValidate) ifDocu.body.style.overflow = 'hidden'; - // 调整容器位置 - elementReady('.content-wrapper', ifDocu).then(e => { - // 加入 - e.prepend(mobile_prepend_node); - e.style.margin = '0px'; - e.style.position = 'absolute'; - e.style.top = '-35px'; - new MutationObserver(() => { - if (!e.querySelector('.wh-translate')) e.prepend(mobile_prepend_node); - }) - .observe(e, {childList: true, subtree: true}); - }); - } + // log(cIframe.contentWindow.document.readyState); + // cIframe.contentWindow.document.onreadystatechange = () => log(cIframe.contentWindow.document.readyState); + // 加载状态 + const if_onload_func = () => { + // if内部文档对象 + const ifDocu = cIframe.contentWindow.document; + // 内部插件运行flag + const ifWH = cIframe.contentWindow.WHTRANS; + // 文档加载完成后移除 + if (!!loading_node) loading_node.remove(); + // 文档加载完成后才显示if + cIframe.style.display = 'block'; + // 验证码flag + const isValidate = ifDocu.querySelector('h4#skip-to-content').innerText.toLowerCase().includes('validate'); + // 如果iframe内部未运行脚本 + if (ifWH === undefined) { + // 隐藏顶部 + elementReady('#header-root', ifDocu).then(e => e.style.display = 'none'); + // 隐藏4条 + elementReady('#sidebarroot', ifDocu).then(e => e.style.display = 'none'); + // 隐藏聊天 + elementReady('#chatRoot', ifDocu).then(e => e.style.display = 'none'); + // 非验证码页面隐藏滚动条 + if (!isValidate) ifDocu.body.style.overflow = 'hidden'; + // 调整容器位置 + elementReady('.content-wrapper', ifDocu).then(e => { + // 加入 + e.prepend(mobile_prepend_node); + e.style.margin = '0px'; + e.style.position = 'absolute'; + e.style.top = '-35px'; + new MutationObserver(() => { + if (!e.querySelector('.wh-translate')) e.prepend(mobile_prepend_node); + }) + .observe(e, {childList: true, subtree: true}); + }); + } + }; + cIframe.onload = if_onload_func; + // window.whif=cIframe; + + // 超时判断 + let time_counter = 0; + let time_out_id = window.setInterval(() => { + loading_node = $popup.querySelector('p:first-of-type'); + if (!loading_node) { + clearInterval(time_out_id); + time_out_id = undefined; + return; + } + time_counter++; + if (time_counter > 0 && !loading_node.querySelector('button')) { + const reload_btn = document.createElement('button'); + reload_btn.innerHTML = '重新加载'; + reload_btn.onclick = () => { + reload_btn.remove(); + time_counter = 0; + if_cont.innerHTML = null; + if_cont.innerHTML = ifHTML; + cIframe = $popup.querySelector('iframe'); + cIframe.onload = if_onload_func; + }; + loading_node.append(reload_btn); + } + }, 1000); }; - cIframe.onload = if_onload_func; - // window.whif=cIframe; - - // 超时判断 - let time_counter = 0; - let time_out_id = window.setInterval(() => { - loading_node = $popup.querySelector('p:first-of-type'); - if (!loading_node) { - clearInterval(time_out_id); - time_out_id = undefined; - return; - } - time_counter++; - if (time_counter > 0 && !loading_node.querySelector('button')) { - const reload_btn = document.createElement('button'); - reload_btn.innerHTML = '重新加载'; - reload_btn.onclick = () => { - reload_btn.remove(); - time_counter = 0; - if_cont.innerHTML = null; - if_cont.innerHTML = ifHTML; - cIframe = $popup.querySelector('iframe'); - cIframe.onload = if_onload_func; - }; - loading_node.append(reload_btn); - } - }, 1000); - }; + // 开发详情按钮 + $zhongNode.querySelector('#wh-devInfo').onclick = () => { + const date = new Date(); + const insert = `当前页面: ${window.location.href}
+分辨率: ${window.innerWidth}x${window.innerHeight}
+设备类型: ${getDeviceType()}
+脚本类型: ${getScriptEngine()}
+时间: ${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()} ${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}
+插件版本: ${version}
+`; + popupMsg(insert, '开发者详情'); + }; + } addStyle(`#wh-trans-icon{ - display: inline-block; - position: fixed; - /*top: calc(50% - 157px);*/ - top:0; - left: 0; - z-index: 100010; - border: solid 1px #b5b5b5; - border-left: none; - border-top: none; - border-radius: 0 0 4px 0; - max-width: 200px; +display: inline-block; +position: fixed; +top:5px; +left:5px; +z-index:100010; +border-radius:4px; +max-width: 200px; +box-shadow: 0 0 3px 1px #8484848f; +} +#wh-trans-icon:not(.wh-icon-expanded):hover { +background: #f8f8f8; } #wh-trans-icon button{ margin:0; padding:0; border:0; +cursor:pointer; } #wh-gSettings div{ margin: 4px 0 0; @@ -3637,7 +3811,7 @@ padding: 0.5em 0; // 手机 区域菜单 $('div[class*="areas-mobile"] span:nth-child(2)').contents().each((i, e) => { - //console.log(e); + //log(e); if (sidebarDict[e.nodeValue]) e.nodeValue = sidebarDict[e.nodeValue]; }); @@ -3744,7 +3918,7 @@ padding: 0.5em 0; }); // 高级搜索框的已选中 $('ul.advancedSearchFormBody div.select-wrapper button.toggler.down').each((i, e) => { - // console.log($(e).text()) + // log($(e).text()) if (headerDict[$(e).text().trim()]) $(e).text(headerDict[$(e).text().trim()]); else if (propertyDict[$(e).text().trim()]) @@ -3916,7 +4090,7 @@ padding: 0.5em 0; travelOB.observe($('div.content-wrapper')[0], {childList: true, subtree: true}); } // 飞行闹钟 - if (device === 'pc' && wh_trans_settings.trvAlarm) elementReady('#countrTravel.hasCountdown').then(node => { + if (device === Device.PC && wh_trans_settings.trvAlarm) elementReady('#countrTravel.hasCountdown').then(node => { const logo_node = document.querySelector('#tcLogo[title]'); const DEST_STR = { 'Mexico': '墨西哥', 'Canada': '加拿大', 'Cayman Islands': '开曼', @@ -4259,11 +4433,11 @@ display:none; const hasKick = !!document.querySelector('#weapon_boots'); // modal层 const modal = document.querySelector('div[class^="modal___"]'); - if (isDev()) console.log(`[WH] 当前设备类型是${device}`); + log(`当前设备类型是${device}`); // 区分设备 switch (device) { - case 'pc': { - if (isDev()) console.log(`[WH] 开始调整按钮位置`); + case Device.PC: { + log(`开始调整按钮位置`); // 隐藏modal层 modal.style.display = 'none'; // 根据选择的武器调整css @@ -4308,8 +4482,8 @@ display:none; }; break; } - case 'mobile': { - if (isDev()) console.log(`[WH] 开始调整按钮位置`); + case Device.MOBILE: { + log(`开始调整按钮位置`); // 加入css let css_top = '0'; let slot_height = '76px'; @@ -4386,7 +4560,7 @@ display:none; }; break; } - case 'tablet': { + case Device.TABLET: { break; } } @@ -4416,8 +4590,8 @@ display:none; let res = response.clone(); res.json().then((data) => { if (isDev()) { - console.log('[url]', url) - console.log('[返回数据]', data) + log('[url]', url) + log('[返回数据]', data) } }); return response; @@ -4428,12 +4602,12 @@ display:none; if (wh_trans_settings.quickFinishAtt !== 3) { const user_btn_select = ['leave', 'mug', 'hosp'][wh_trans_settings.quickFinishAtt]; const wrap = document.querySelector('#react-root'); - if (isDev()) console.log('光速跑路选项选中:', user_btn_select); + log('光速跑路选项选中:', user_btn_select); new MutationObserver(() => { const btn_arr = document.querySelectorAll('div[class^="dialogButtons___"] button'); if (btn_arr.length > 1) btn_arr.forEach(btn => { const flag = btn.innerText.toLowerCase().includes(user_btn_select); - if (isDev()) console.log('按钮内容:', btn.innerText, ',是否包含选中:', flag); + log('按钮内容:', btn.innerText, ',是否包含选中:', flag); if (!flag) btn.style.display = 'none'; // 自动结束 else if (wh_trans_settings.autoStartFinish === true) { @@ -4461,7 +4635,7 @@ display:none; } else { let reload_flag; const timeout = wh_trans_settings.attReload * 1000 + getRandomInt(-500, 500); - if (isDev()) console.log(`[WH] ${timeout / 1000}s 后自动刷新`); + log(`[WH] ${timeout / 1000}s 后自动刷新`); window.setInterval(() => { if (reload_flag === undefined) { reload_flag = true; @@ -4545,7 +4719,7 @@ display:none; // 快速链接中的区域 $('li a[class^="font-num-"] span').each((i, e) => { - // console.log($(e).prev().attr('class')==='cql-gym') + // log($(e).prev().attr('class')==='cql-gym') if (cityDict[$(e).text()]) { $(e).text(cityDict[$(e).text()]); } else if ($(e).prev().attr('class') === 'cql-your-property') { @@ -4662,7 +4836,7 @@ display:none; // 健身房状态信息 // $('div[class^="gymStats"] b').each((i, e) => { - // console.log(e) + // log(e) // if (gymDict[$(e).text().trim()]) // $(e).text(gymDict[$(e).text().trim()]); // }); @@ -5156,15 +5330,13 @@ display:none; const spl = e.nodeValue.trim().split(' '); const itemName = spl.slice(1).join(' '); e.nodeValue = - ` ${ - spl[0].replace('x', '个') - } ${ - itemNameDict[itemName] ? itemNameDict[itemName] : itemName + ` ${spl[0].replace('x', '个') + } ${itemNameDict[itemName] ? itemNameDict[itemName] : itemName }`; } else { if (/[\u4e00-\u9fa5]/.test(e.nodeValue)) return; if (/\b\$?[0-9,]+$/.test(e.nodeValue)) return; - console.log(`未找到翻译:[${e.nodeValue.trim()}]`); + log(`未找到翻译:[${e.nodeValue.trim()}]`); } }); }; @@ -5345,11 +5517,9 @@ display:none; case 'friend': if (profileDict['{$} is on your friend list']) { action_desc.html( - `${ - profileDict['{$} is on your friend list'] - .replace('{$}', playerName) - }${ - mark ? ' : ' + mark : '' + `${profileDict['{$} is on your friend list'] + .replace('{$}', playerName) + }${mark ? ' : ' + mark : '' }` ); } @@ -5357,11 +5527,9 @@ display:none; case 'enemy': if (profileDict['{$} is on your enemy list']) { action_desc.html( - `${ - profileDict['{$} is on your enemy list'] - .replace('{$}', playerName) - }${ - mark ? ' : ' + mark : '' + `${profileDict['{$} is on your enemy list'] + .replace('{$}', playerName) + }${mark ? ' : ' + mark : '' }` ); } @@ -5369,7 +5537,7 @@ display:none; } } else { if ($('.wh-translated').length <= 0) { - console.log(`未找到翻译: “${action_desc.text().trim()}”`); + log(`未找到翻译: “${action_desc.text().trim()}”`); } } // 添加敌人或朋友的界面 @@ -5813,7 +5981,7 @@ display:none; // 所有li内容 // $('div.content-wrapper div.customize-opt li').find('*') // .contents().each((i,e)=>{ - // if(e.nodeType!==3)return;console.log(e) + // if(e.nodeType!==3)return;log(e) // }); return; } @@ -6288,7 +6456,7 @@ display:none; //帮派主要消息日志 $('button[class^="tab"] ').each((i, e) => { if ($(e).attr('class').indexOf("active") >= 0) { - console.log($(e).text()); + log($(e).text()); switch ($(e).text().trim()) { case "主要消息": $('ul[class^="news-list"] span[class^="info"]').contents().each((i, u) => { @@ -6299,7 +6467,7 @@ display:none; break; case "攻击": $('ul[class^="news-list"] span[class^="info"]').find('*').contents().each((i, u) => { - console.log($(u).text().trim()) + log($(u).text().trim()) if (factionDict[$(u).text().trim()]) { u.nodeValue = factionDict[$(u).text().trim()]; } @@ -7000,9 +7168,9 @@ margin: 0 0 3px; // 通知翻译的开关 if (!$('div#event-trans-msg').get(0) && !window.location.href.contains(/index\.php/)) { -// msgBox(`
插件暂时不能翻译全部通知。
-// 如发现问题请发送通知并联系 Woohoo[2687093]
-// 可能会出现卡顿,默认开启
`); + // msgBox(`
插件暂时不能翻译全部通知。
+ // 如发现问题请发送通知并联系 Woohoo[2687093]
+ // 可能会出现卡顿,默认开启
`); $('input#eventTransCheck').attr('checked', localStorage.getItem('wh_trans_event') === 'true'); $('input#eventTransCheck').change(function () { if ($(this).attr('checked') === undefined) { @@ -7690,8 +7858,8 @@ margin: 0 0 3px; /** * 季度邮件奖励 - */ - if ($(e).text().contains(/used the reward bonus code/)) { + + if ($(e).text().contains(/used the reward bonus code/)) { const code = $(e).text().trim().split(' ')[7]; if (eventsDict[$(e).text().trim().replace(code, '{$}')]) $(e).text(eventsDict[$(e).text().trim().replace(code, '{$}')] @@ -7699,7 +7867,7 @@ margin: 0 0 3px; return; } - /** + /** * 求婚 */ if ($(e).text().contains(/accepted your proposal, you are now engaged/)) { @@ -7729,7 +7897,7 @@ margin: 0 0 3px; prePos = node3Spl[0].slice(14, node3Spl[0].length); curPos = node3Spl[1].slice(0, node3Spl[1].length - 2); } else { - console.log('职位出现" to "');// todo + log('职位出现" to "');// todo return; } e.firstChild.nodeValue = '你在 '; @@ -7917,7 +8085,7 @@ margin: 0 0 3px; if (dev) { const mo = new MutationObserver((mutation) => { //count++; - console.log(mutation) + log(mutation) mo.disconnect(); func(); if (!once) { @@ -7942,16 +8110,16 @@ margin: 0 0 3px; 添加全局style */ function addStyle(v) { - const wh_gStyle = document.querySelector('style#wh-trans-gStyle'); + let wh_gStyle = document.querySelector('style#wh-trans-gStyle'); if (wh_gStyle) { wh_gStyle.innerHTML += v; } else { - const wh_gStyle = document.createElement("style"); + wh_gStyle = document.createElement("style"); wh_gStyle.id = 'wh-trans-gStyle'; wh_gStyle.innerHTML = v; document.head.append(wh_gStyle); } - if (isDev()) console.log('css规则已注入', v); + log('新的CSS规则已注入', wh_gStyle); } /* @@ -8015,23 +8183,24 @@ margin: 0 0 3px; zhongNode.querySelector('#wh-trans-icon-btn').onclick = () => { zhongNode.classList.toggle('wh-icon-expanded'); const click_func = e => { - if (isDev()) console.log('[wh]', e.target); + // e.stopImmediatePropagation(); + log(e.target); if (e.target === zhongNode.querySelector('#wh-trans-icon-btn')) return; if (!zhongNode.contains(e.target)) { - if (isDev()) console.log('[wh]', '移除事件监听器'); + log('移除事件监听器'); document.body.removeEventListener('click', click_func); zhongNode.classList.remove('wh-icon-expanded'); } }; if (zhongNode.classList.contains('wh-icon-expanded')) { - if (isDev()) console.log('[wh]', '添加事件监听器'); + log('添加事件监听器'); document.body.addEventListener('click', click_func); } else { - if (isDev()) console.log('[wh]', '移除事件监听器'); + log('移除事件监听器'); document.body.removeEventListener('click', click_func); } }; - zhongNode.querySelector('#wh-update-btn').onclick = (e) => { + zhongNode.querySelector('#wh-update-btn').onclick = e => { e.target.blur(); const innerHtml = `

电脑

通常电脑浏览器装有油猴等用户脚本扩展时可以使用链接安装(自动更新):点此安装

@@ -8042,7 +8211,7 @@ margin: 0 0 3px;

Torn PDA app 或 Alook 用户可打开这个网页快捷复制粘贴。

`; popupMsg(innerHtml, '如何更新'); }; - document.body.prepend(zhongNode); + document.body.append(zhongNode); return zhongNode; } @@ -8050,16 +8219,24 @@ margin: 0 0 3px; 保存脚本的配置 */ function saveSettings() { - localStorage.setItem('wh_trans_settings', JSON.stringify(wh_trans_settings)) + // 通知 + + localStorage.setItem('wh_trans_settings', JSON.stringify(wh_trans_settings)); } // bool 返回当前是否dev状态 function isDev() { - return wh_trans_settings.isDev; + try { + return wh_trans_settings.isDev || false; + } catch (e) { + console.error(`[wh] dev状态错误 ${e}`); + return false; + } } // 弹出窗口 function popupMsg(innerHTML, title = '芜湖的翻译助手') { + if (hasPopup()) return null; const popup = document.createElement('div'); popup.id = 'wh-popup'; popup.innerHTML = @@ -8072,6 +8249,7 @@ margin: 0 0 3px; close_btn.onclick = () => popup.remove(); const clickFunc = e => { + e.stopImmediatePropagation(); if (e.target === popup) { popup.removeEventListener('click', clickFunc); popup.remove(); @@ -8082,6 +8260,11 @@ margin: 0 0 3px; return popup.querySelector('#wh-popup-cont'); } + // 弹出窗口是否存在 + function hasPopup() { + return !!document.querySelector('#wh-popup'); + } + /** * Waits for an element satisfying selector to exist, then resolves promise with the element. * Useful for resolving race conditions. @@ -8118,4 +8301,72 @@ margin: 0 0 3px; max = Math.floor(max); return Math.floor(Math.random() * (max - min)) + min; //不含最大值,含最小值 } + + // 用户脚本平台类型 + function getScriptEngine() { + return UWCopy ? UserScriptEngine.GM : PDA_APIKey.slice(-1) !== '#' + ? UserScriptEngine.PDA : UserScriptEngine.RAW; + } + + // 用户设备类型 对应PC MOBILE TABLET + function getDeviceType() { + return window.innerWidth >= 1000 + ? Device.PC : window.innerWidth <= 600 ? Device.MOBILE : Device.TABLET; + } + + // 跨域get请求 + function COFetch(url) { + const engine = getScriptEngine(); + switch (engine) { + case UserScriptEngine.RAW: { + return new Promise((_, reject) => { + console.error(`[wh] 跨域请求错误:${UserScriptEngine.RAW}环境下无法进行跨域请求`); + reject(`错误:${UserScriptEngine.RAW}环境下无法进行跨域请求`); + }); + } + case UserScriptEngine.PDA: { + return new Promise((resolve, reject) => { + if (typeof PDA_httpGet !== 'function') { + console.error('[wh] 跨域请求错误:PDA版本不支持'); + reject('错误:PDA版本不支持'); + } + PDA_httpGet(url) + .catch(e => { + console.error('[wh] 网络错误', e); + reject(`[wh] 网络错误 ${e}`); + }) + .then(res => resolve(res.responseText)); + }); + } + case UserScriptEngine.GM: { + return new Promise((resolve, reject) => { + if (typeof GM_xmlhttpRequest !== 'function') { + console.error('[wh] 跨域请求错误:用户脚本扩展API错误'); + reject('错误:用户脚本扩展API错误'); + } + GM_xmlhttpRequest({ + method: 'get', + url: url, + onload: res => resolve(res.response), + onerror: res => reject(`连接错误 ${res}`), + ontimeout: res => reject(`连接超时 ${res}`), + }); + }); + } + } + } + + // 简单 object 转字符串 + function Obj2Str(obj) { + let rs = '{\n'; + Object.keys(obj).forEach(el => { + rs += ' ' + el + ': ' + obj[el] + ',\n' + }); + return rs += '}'; + } + + // log改写 + function log(...o) { + if (isDev()) console.log('[WH]', ...o) + } }());