您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Upgrade Scratch and Turbowarp to the next level.
当前为
- // ==UserScript==
- // @name Scratch Upgrade
- // @namespace -
- // @version 1
- // @description Upgrade Scratch and Turbowarp to the next level.
- // @author Plantt
- // @match https://scratch.mit.edu
- // @match https://scratch.mit.edu/*
- // @match https://turbowarp.org/*
- // @icon https://scratch.mit.edu/favicon.ico
- // @grant none
- // @license MIT
- // ==/UserScript==
- var ccInterval;
- window.onload = function(event) {
- setTimeout(function(){
- if (document.URL.substring(0, "https://scratch.mit.edu/projects/".length) == "https://scratch.mit.edu/projects/"
- || document.URL.substring(0, "https://turbowarp.org/".length) == "https://turbowarp.org/") {
- setInterval(function() {if (document.getElementById("hcBtn") == null) {
- var hcBtn = document.createElement("button");
- hcBtn.innerText = "Hide Cursor";
- hcBtn.id = "hcBtn";
- hcBtn.style.height = "20px";
- hcBtn.onclick = function() {hideCursor()};
- document.querySelector(".controls_controls-container_2xinB").appendChild(hcBtn);
- var randomVal = document.createElement("input");
- randomVal.type = "number";
- randomVal.value = -1;
- randomVal.step = "any";
- randomVal.id = "rndVal";
- randomVal.size = 3;
- randomVal.style.marginLeft = "10px";
- randomVal.style.height = "20px";
- var randomFunc = Math.random;
- randomVal.onchange = e => {
- if (e.target.value == "-1") {
- Math.random = randomFunc;
- }
- else {
- eval("Math.random = () => " + e.target.value);
- }
- }
- document.querySelector(".controls_controls-container_2xinB").appendChild(randomVal);
- var sinCosSwap = document.createElement("button");
- sinCosSwap.innerText = "Swap sin() and cos()";
- sinCosSwap.id = "sin-cos-swap";
- sinCosSwap.style.marginLeft = "10px";
- sinCosSwap.style.height = "20px";
- sinCosSwap.onclick = e => {
- var tmp = Math.sin;
- Math.sin = Math.cos;
- Math.cos = tmp;
- }
- document.querySelector(".controls_controls-container_2xinB").appendChild(sinCosSwap);
- }}, 42);
- }
- if (document.URL == location.origin + "/") {
- for (var i = 0; i < document.querySelectorAll("div.box-header").length; i++) {
- makeCollapsible(document.querySelectorAll("div.box-header")[i]);
- }
- }
- if (document.URL.substring(0, (location.origin + "/search").length) == location.origin + "/search"
- || document.URL.substring(0, (location.origin + "/explore").length) == location.origin + "/explore") {
- var btn = document.createElement("button");
- btn.innerText = "Get a random project";
- btn.onclick = goToRandomProject;
- document.querySelector("div.sort-controls").appendChild(btn);
- }
- if (document.URL == "https://scratch.mit.edu/messages/") {
- var delBtn = document.createElement("button");
- delBtn.innerText = "Delete all studio messages";
- delBtn.style = `
- transition: border .5s ease;
- margin-bottom: .75rem;
- border: 1px solid rgba(0, 0, 0, 0.1);
- border-radius: 5px;
- background-color: #fefefe;
- padding-right: 4rem;
- padding-left: 1rem;
- width: 100%;
- height: 3rem;
- color: #575e75;
- font-size: .875rem;
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
- `;
- delBtn.onclick = function() {
- var a = document.querySelectorAll("li.mod-studio-activity");
- for (var i = 0; i < a.length; i++) a[i].remove();
- }
- document.querySelector("div.mod-messages-title").appendChild(delBtn);
- }
- }, 1000);
- }
- function hideCursor() {
- clearInterval(ccInterval);
- ccInterval = setInterval(function() {
- document.querySelector("div.stage_stage_1fD7k.box_box_2jjDp div canvas").style.cursor = "none";
- }, 42);
- document.getElementById("hcBtn").innerText = "Show cursor";
- document.getElementById("hcBtn").onclick = function(){showCursor();};
- }
- function showCursor() {
- clearInterval(ccInterval);
- ccInterval = setInterval(function() {
- document.querySelector("div.stage_stage_1fD7k.box_box_2jjDp div canvas").style.cursor = null;
- }, 42);
- document.getElementById("hcBtn").innerText = "Hide cursor";
- document.getElementById("hcBtn").onclick = function(){hideCursor();};
- }
- function makeCollapsible(header) {
- var btn = document.createElement("button");
- btn.style.marginLeft = "20px";
- expand();
- header.appendChild(btn);
- function collapse() {
- header.parentElement.querySelector("div.box-content").style.display = "none";
- header.parentElement.style.height = "36px";
- btn.innerText = "Expand";
- btn.onclick = expand;
- }
- function expand() {
- header.parentElement.querySelector("div.box-content").style.display = "block";
- header.parentElement.style.height = "";
- btn.innerText = "Collapse";
- btn.onclick = collapse;
- }
- }
- function goToRandomProject() {
- document.querySelectorAll("div.thumbnail-title")[Math.floor(Math.random() * document.querySelectorAll("div.thumbnail-title").length)].querySelector("a").click();
- }