您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Get all the seasonal gears in 1 second.
// ==UserScript== // @name Seasonal Gears Collection // @namespace http://tampermonkey.net/ // @version v2 // @description Get all the seasonal gears in 1 second. // @author CNN (Idea from Talent7 mod) // @match https://narrow.one/* // @grant none // @run-at document-start // ==/UserScript== (function() { const realFetch = window.fetch; async function modifyShopConfig(data) { const { purchasableItems, skinPresets } = data; purchasableItems.forEach((item) => { if (item.shopVisibility && !item.price) { delete item.shopVisibility; } }); return { purchasableItems, skinPresets, }; } window.fetch = async function(...args) { const url = args[0]; if (typeof url === 'string' && url.includes("/config/shopConfig.json")) { console.log("Intercepted: " + url); const response = await realFetch.apply(this, args); //console.log("Original response:", response); if (!response.ok) { return response; } try { const originalData = await response.json(); const modifiedData = await modifyShopConfig(originalData); //console.log("Modified data:", modifiedData); return new Response(JSON.stringify(modifiedData), { status: 200, headers: { 'Content-Type': 'application/json' }, }); } catch (error) { console.error("Error parsing or modifying JSON:", error); const cloneResponse = response.clone(); const text = await cloneResponse.text(); return new Response(text, { status: response.status, headers: response.headers, }); } } return realFetch.apply(this, args); }; })();