您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
CREDITS TO A3+++
// ==UserScript== // @name Shellshock/Shellshockers FPS Unlocker // @version 0.1 // @author Pluh // @description CREDITS TO A3+++ // @match *://shellshock.io/* // @run-at document-start // @grant unsafeWindow // @namespace https://gf.zukizuki.org/en/users/1236917-pluh // ==/UserScript== (function () { unsafeWindow.hookScene = function () { BABYLON.Scene = new Proxy(BABYLON.Scene, { construct: function (func, args) { const product = new func(...args); ["probesEnabled", "particlesEnabled", "texturesEnabled", "fogDisabled", "lightsEnabled", "postProcessesEnabled", "lensFlaresEnabled", "renderTargetsEnabled", "shadowsDisabled", "proceduralTexturesEnabled"].forEach(a => Object.defineProperty(product, a, { get: () => false })); return product; }, }) } unsafeWindow.XMLHttpRequest = class extends XMLHttpRequest { constructor() { super(...arguments) } open() { if (arguments[1] && arguments[1].includes("js/shellshock.js")) { this.scriptMatch = true; } super.open(...arguments); } get response() { if (this.scriptMatch) { let responseText = super.response; let match = responseText.match(/else console.log\(window\),"undefined"==typeof window\?(\w).BABYLON=(\w\(\w,\w,\w\)).(\w)=\w\(\w,\w,\w\)/); if (match) { responseText = responseText.replace(match[0], `else{${match[1]}.BABYLON=${match[2]};${match[3]}=${match[1]}.BABYLON,window.hookScene()}`); } return responseText; } return super.response; } }; }())