您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Mod for Sigmally.com | by cursd#0126. Dark Mode, Long Nickname, Macros, Extanded Settings, Freeze Player; Mod Menu
当前为
- // ==UserScript==
- // @name Sigmally Mod
- // @version 2.1
- // @description Mod for Sigmally.com | by cursd#0126. Dark Mode, Long Nickname, Macros, Extanded Settings, Freeze Player; Mod Menu
- // @author Cursed
- // @match *://sigmally.com/*
- // @icon https://raw.githubusercontent.com/Sigmally/SigMod/main/images/SigmodV2-Circle.png
- // @run-at document-end
- // @license MIT
- // @namespace https://greasyfork.org/users/981958
- // ==/UserScript==
- (function () {
- const rzModSettings = document.createElement("form");
- const KEY_FEED = {
- key: "w",
- keyCode: 32,
- which: 32,
- };
- const KEY_SPLIT = {
- keyCode: 32,
- code: "Space",
- cancelable: true,
- composed: true,
- isTrusted: true,
- which: 32,
- };
- let rxSettings = localStorage.getItem("rxSettings");
- if (!rxSettings) {
- rxSettings = {
- keyBindingsRapidFeed: "q",
- keyBindingsdoubleSplit: "d",
- keyBindingsTripleSplit: "f",
- keyBindingsQuadSplit: "g",
- keyBindingsFreezePlayer: "s",
- darkMode: true,
- };
- } else {
- rxSettings = JSON.parse(rxSettings);
- }
- rzModSettings.setAttribute("id", "rx-mod-settings");
- rzModSettings.classList.add("hidden");
- rzModSettings.onsubmit = (e) => {
- rzModSettings.classList.toggle("hidden");
- e.preventDefault();
- let options = new FormData(rzModSettings);
- for (var key of options.keys()) {
- rxSettings[key] = options.get(key);
- }
- localStorage.setItem("rxSettings", JSON.stringify(rxSettings));
- return false;
- };
- rzModSettings.innerHTML =
- '<div class="cztop">' +
- '<div class="cztopleft">' +
- '<img src="https://i.ibb.co/stQVx38/SigmodV2.png" draggable="false" class="titleImg">' +
- '<h4 class="SettingsTitle">Settings</h4>' +
- "</div>" +
- '<input type="submit" class="CloseBtn"; value="X"/>' +
- "</div>" +
- "<hr/>" +
- '<h5 class="Sett">Keybindings</h5>' +
- '<div class="left-modg">' +
- '<label class="flex">' +
- '<input type="text" name="keyBindingsRapidFeed" id="modinput1" class="keybinding" value="' +
- rxSettings.keyBindingsRapidFeed +
- '" maxlength="1" onfocus="this.select()">' +
- '<span class="Sett">Rapid Feed</span>' +
- "</label>" +
- '<label class="flex">' +
- '<input type="text" name="keyBindingsdoubleSplit" id="modinput2" class="keybinding" value="' +
- rxSettings.keyBindingsdoubleSplit +
- '" maxlength="1" onfocus="this.select()">' +
- '<span class="Sett">Double Split</span>' +
- "</label>" +
- '<label class="flex">' +
- '<input type="text" name="keyBindingsTripleSplit" id="modinput3" class="keybinding" value="' +
- rxSettings.keyBindingsTripleSplit +
- '" maxlength="1" onfocus="this.select()">' +
- '<span class="Sett">Triple Split</span>' +
- "</label>" +
- '<label class="flex">' +
- '<input type="text" name="keyBindingsQuadSplit" id="modinput4" class="keybinding" value="' +
- rxSettings.keyBindingsQuadSplit +
- '" maxlength="1" onfocus="this.select()">' +
- '<span class="Sett">Quad Split</span>' +
- "</label>" +
- "</label>" +
- '<label class="flex">' +
- '<input type="text" name="keyBindingsFreezePlayer" id="modinput5" class="keybinding" value="' +
- rxSettings.keyBindingsFreezePlayer +
- '" maxlength="1" onfocus="this.select()">' +
- '<span class="Sett">Freeze Player</span>' +
- "</label>" +
- "</div>" +
- '<div class="right-modg">' +
- "</div>" +
- "<hr/>" +
- '<h4 class="Sett">Discord</h4>' +
- '<div class="modContainer"><a href="https://discord.gg/gHmhpCaPfP" target="_blank" class="modButton" style="width: 100%;">Join Sigmally Modz Server</a></div>' +
- "<hr/>" +
- '<h4 class="Sett">Stylish Names</h4>' +
- '<div class="modContainer"><a href="https://www.stylishnamemaker.com" target="_blank" class="modButton">Stylish Name Maker</a><a href="https://nickfinder.com" target="_blank" class="modButton">Nickfinder</a></div>' +
- "<hr/>" +
- '<h4 class="Sett">Youtube</h4>' +
- '<div class="modContainer"><a href="https://www.youtube.com/@cursed9645/" target="_blank" class="modButton">Cursed</a><a href="https://www.youtube.com/channel/UCEn7a9rEtJNsw1WKgsAoyXQ" class="modButton" target="_blank">Sigmally Modz</a></div>';
- const rzMods = [
- {
- modName: "Branding",
- modType: "automatic",
- modDescription: "Branding",
- modCode: () => {
- const gameTitle = document.getElementById("title");
- gameTitle.innerHTML = 'Sigmally<span style="display:block; font-size: 14px;">Mod by Cursed / Ringzer0</span>';
- },
- },
- {
- modName: "Game Settings",
- modType: "automatic",
- modDescription: "Extanded Game Settings",
- modCode: () => {
- const gameSettings = document.querySelector(".checkbox-grid");
- gameSettings.innerHTML += `
- <li>
- <div class="pretty p-svg p-round p-smooth">
- <input type="checkbox" id="showNames">
- <div class="state p-success">
- <svg class="svg svg-icon" viewBox="0 0 20 20">
- <path d="M7.629,14.566c0.125,0.125,0.291,0.188,0.456,0.188c0.164,0,0.329-0.062,0.456-0.188l8.219-8.221c0.252-0.252,0.252-0.659,0-0.911c-0.252-0.252-0.659-0.252-0.911,0l-7.764,7.763L4.152,9.267c-0.252-0.251-0.66-0.251-0.911,0c-0.252,0.252-0.252,0.66,0,0.911L7.629,14.566z" style="stroke: white;fill:white;"></path>
- </svg>
- <label>Names</label>
- </div>
- </div>
- </li>
- <li>
- <div class="pretty p-svg p-round p-smooth">
- <input type="checkbox" id="showSkins">
- <div class="state p-success">
- <svg class="svg svg-icon" viewBox="0 0 20 20">
- <path d="M7.629,14.566c0.125,0.125,0.291,0.188,0.456,0.188c0.164,0,0.329-0.062,0.456-0.188l8.219-8.221c0.252-0.252,0.252-0.659,0-0.911c-0.252-0.252-0.659-0.252-0.911,0l-7.764,7.763L4.152,9.267c-0.252-0.251-0.66-0.251-0.911,0c-0.252,0.252-0.252,0.66,0,0.911L7.629,14.566z" style="stroke: white;fill:white;"></path>
- </svg>
- <label>Skins</label>
- </div>
- </div>
- </li>
- <li>
- <div class="pretty p-svg p-round p-smooth">
- <input type="checkbox" id="longNick" checked>
- <div class="state p-success">
- <svg class="svg svg-icon" viewBox="0 0 20 20">
- <path d="M7.629,14.566c0.125,0.125,0.291,0.188,0.456,0.188c0.164,0,0.329-0.062,0.456-0.188l8.219-8.221c0.252-0.252,0.252-0.659,0-0.911c-0.252-0.252-0.659-0.252-0.911,0l-7.764,7.763L4.152,9.267c-0.252-0.251-0.66-0.251-0.911,0c-0.252,0.252-0.252,0.66,0,0.911L7.629,14.566z" style="stroke: white;fill:white;"></path>
- </svg>
- <label>Long Nick</label>
- </div>
- </div>
- </li>
- <li>
- <div class="pretty p-svg p-round p-smooth">
- <input type="checkbox" id="darkMenu">
- <div class="state p-success">
- <svg class="svg svg-icon" viewBox="0 0 20 20">
- <path d="M7.629,14.566c0.125,0.125,0.291,0.188,0.456,0.188c0.164,0,0.329-0.062,0.456-0.188l8.219-8.221c0.252-0.252,0.252-0.659,0-0.911c-0.252-0.252-0.659-0.252-0.911,0l-7.764,7.763L4.152,9.267c-0.252-0.251-0.66-0.251-0.911,0c-0.252,0.252-0.252,0.66,0,0.911L7.629,14.566z" style="stroke: white;fill:white;"></path>
- </svg>
- <label>Dark Menu</label>
- </div>
- </div>
- </li>`;
- },
- },
- {
- modName: "Rapid Feed (q)",
- modType: "automatic",
- modDescription: "You feed faster",
- modCode: () => {
- window.rxTimeouts = [];
- const amount = 10;
- window.addEventListener("keyup", (e) => {
- if (e.key == rxSettings.keyBindingsRapidFeed) {
- for (var i = 0; i < rxTimeouts.length; i++) {
- clearTimeout(rxTimeouts[i]);
- }
- }
- });
- window.addEventListener("keydown", (e) => {
- let x = true;
- if (!x || document.activeElement.nodeName === "INPUT") {
- return;
- }
- if (e.key == "Tab") {
- e.preventDefault();
- }
- if (e.key == rxSettings.keyBindingsFreezePlayer) {
- function center(sx, sy) {
- const mouseMoveEvent = new MouseEvent("mousemove", {clientX: sx, clientY: sy})
- const canvas = document.getElementById("canvas")
- canvas.dispatchEvent(mouseMoveEvent)
- }
- const CX = window.innerWidth / 2;
- const CY = window.innerHeight / 2;
- center(CX, CY)
- }
- if (e.key == rxSettings.keyBindingsRapidFeed) {
- window.dispatchEvent(new KeyboardEvent('keydown', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keyup', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keydown', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keyup', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keydown', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keyup', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keydown', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keyup', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keydown', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keyup', KEY_FEED));
- for (var i = 0; i < amount; ++i) {
- rxTimeouts.push(setTimeout(function() {
- window.dispatchEvent(new KeyboardEvent('keydown', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keyup', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keydown', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keyup', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keydown', KEY_FEED));
- window.dispatchEvent(new KeyboardEvent('keyup', KEY_FEED));
- }, i ));
- }
- return;
- }
- if (e.key == rxSettings.keyBindingsdoubleSplit) {
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- return;
- }
- if (e.key == rxSettings.keyBindingsTripleSplit) {
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- return;
- }
- if (e.key == rxSettings.keyBindingsQuadSplit) {
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
- window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
- return;
- }
- });
- },
- },
- {
- modName: "Long Nicknames",
- modType: "automatic",
- modDescription: "Allows for longer nicknames.",
- modCode: () => {
- const nickName = document.getElementById("nick");
- let longNick = document.getElementById("longNick");
- nickName.maxLength = 50;
- longNick.addEventListener("change", () => {
- if (nickName.maxLength == 50) {
- nickName.maxLength = 15;
- } else if (nickName.maxLength == 15) {
- nickName.maxLength = 50;
- }
- });
- },
- }, {
- modName: "Dark Menu",
- modType: "automatic",
- modDescription: "Changes the menu color to darker color.",
- modCode: () => {
- setTimeout(() => {
- const menu = document.getElementById("menu");
- const rightMenu = document.querySelector(".top-users__inner");
- const leftMenu = document.getElementById("left-menu");
- const linksMenu = document.querySelector(".menu-links");
- const deathScreen = document.querySelector(".menu--stats-mode");
- const skin_text = document.getElementById("js-skin-select-icon-text");
- let darkM = true;
- let darkMode_cb = document.getElementById("darkMenu");
- let b_inner = document.querySelector(".body__inner");
- let elements = b_inner.querySelectorAll(".body__inner > :not(.body__inner), #s-skin-select-icon-text");
- const darkColor = "#252525";
- const darkColor2 = "#222222";
- const lightColor = "#FFFFFF";
- darkMode_cb.addEventListener("change", () => {
- if (!darkM) {
- darkM = true;
- rxSettings.darkMode = true;
- localStorage.setItem("rxSettings", JSON.stringify(rxSettings));
- skin_text.style.color = lightColor;
- menu.style.backgroundColor = darkColor;
- rightMenu.style.backgroundColor = darkColor;
- leftMenu.style.backgroundColor = darkColor;
- linksMenu.style.backgroundColor = darkColor;
- deathScreen.style.backgroundColor = darkColor;
- elements.forEach((textElements) => {
- textElements.style.color = lightColor;
- });
- } else {
- darkM = false;
- rxSettings.darkMode = false;
- localStorage.setItem("rxSettings", JSON.stringify(rxSettings));
- skin_text.style.color = darkColor2;
- menu.style.backgroundColor = lightColor;
- rightMenu.style.backgroundColor = lightColor;
- leftMenu.style.backgroundColor = lightColor;
- linksMenu.style.backgroundColor = lightColor;
- deathScreen.style.backgroundColor = lightColor;
- elements.forEach((textElements) => {
- textElements.style.color = darkColor2;
- });
- }
- });
- if (rxSettings.darkMode) {
- darkMode_cb.checked = true;
- darkM = true;
- skin_text.style.color = lightColor;
- menu.style.backgroundColor = darkColor;
- rightMenu.style.backgroundColor = darkColor;
- leftMenu.style.backgroundColor = darkColor;
- linksMenu.style.backgroundColor = darkColor;
- deathScreen.style.backgroundColor = darkColor;
- elements.forEach((textElements) => {
- textElements.style.color = lightColor;
- });
- } else {
- darkM = false;
- darkMode_cb.checked = false;
- }
- }, 500);
- },
- },
- {
- modName: "",
- modType: "button",
- modDescription: "Mod Settings Button",
- modId: "SettingsButton",
- modCode: () => {
- rzModSettings.classList.toggle("hidden");
- },
- }, {
- modName: "input filter",
- modType: "automatic",
- modDescription: "filters invalid input",
- modCode: () => {
- setTimeout(() => {
- const kinputs = ["modinput1", "modinput2", "modinput3", "modinput4", "modinput5"];
- kinputs.forEach((modkey) => {
- const kinput = document.getElementById(modkey);
- kinput.addEventListener("input", () => {
- const lowercaseValue = kinput.value.toLowerCase();
- if (kinput !== lowercaseValue) {
- kinput.value = lowercaseValue;
- }
- if (kinput.value !== "") {
- if (kinputs.filter((item) => item === kinput.value).length > 1) {
- alert("This value already exists!");
- kinput.value = "";
- return;
- } else {
- kinputs.forEach((otherKey) => {
- const otherInput = document.getElementById(otherKey);
- if (otherInput !== kinput && otherInput.value === kinput.value) {
- alert("You can't have 2 keybindings at the same time.");
- kinput.value = "";
- return;
- }
- });
- }
- }
- });
- });
- let fastfeedkey = document.getElementById(kinputs[0]);
- fastfeedkey.addEventListener("input", () => {
- if (fastfeedkey.value === "w") {
- alert("Currently, you can't change the fastfeed key to W. Please wait for updates.");
- fastfeedkey.value = "";
- return;
- }
- });
- }, 500)
- }
- }
- ];
- rzMods.forEach((mod) => {
- let modElement = null;
- switch (mod.modType) {
- case "automatic":
- mod.modCode.call();
- break;
- case "button":
- modElement = document.createElement("button");
- modElement.innerText = mod.modName;
- modElement.onclick = mod.modCode;
- modElement.title = mod.modDescription;
- modElement.id = mod.modId;
- break;
- }
- if (modElement) {
- document.body.append(modElement);
- }
- });
- document.body.prepend(rzModSettings);
- let V2S = `
- *{
- outline: none;
- }
- .flex {
- display: flex;
- justify-content: center;
- }
- #rx-mod-settings {
- background: #333;
- padding: 30px;
- border-radius: 15px;
- width: 350px;
- min-height: 200px;
- top: 1em;
- left: 50%;
- margin-left: -175px;
- z-index: 99999;
- box-shadow: 0 0 40px #8D00FF;
- position: fixed;
- text-align: center;
- }
- #rx-mod-settings input.keybinding {
- max-width: 20px;
- border: 1px solid #ccc;
- padding: 0;
- text-align: center;
- margin-right: 5px;
- outline: none;
- color: #fff;
- background-color: transparent;
- border: 1px solid #fff;
- border-radius: 5px;
- font-weight: 500;
- }
- #rx-mod-settings.hidden {
- display: none;
- }
- #text-block,#left_ad_block,#ad_bottom,.ad-block,.ad-block-left,.ad-block-right {
- display: none;
- }
- .cztop{
- display: flex;
- justify-content: space-between;
- align-items: center;
- }
- .SettingsTitle{
- font-size: 32px;
- color: #EEE;
- margin-left: 10px;
- }
- .CloseBtn{
- outline: none;
- background-color: transparent;
- padding: 10px;
- font-size: 16px;
- transition: all .3s;
- color: #fff;
- border-radius: 15px;
- border: 2px solid #4C2B8D;
- width: 48px;
- }
- .CloseBtn:hover{
- border: 2px solid #5600FF;
- }
- .Sett{
- color: #fff;
- user-select: none;
- font-weight: 500;
- }
- .cztopleft{
- display: flex;
- align-items: center;
- }
- .titleImg{
- width: 50px;
- height: 50px;
- border-radius: 20px;
- object-fit: cover;
- }
- .modContainer {
- display: flex;
- justify-content: space-between;
- }
- .modButton{
- background-color: transparent;
- border: 1px solid #fff;
- border-radius: 5px;
- color: #fff;
- transition: all .3s;
- outline: none;
- padding: 5px;
- width: 60%;
- margin: 0 5px;
- font-size: 13px;
- }
- .modButton:hover {
- background-color: #5865F2;
- }
- #SettingsButton{
- background-color: transparent;
- height: 30px;
- background-image: url('https://i.ibb.co/pJhSvHJ/icons8-zahnrad-30.png');
- width: 30px;
- background-size: cover;
- border: none;
- outline: none;
- position: fixed;
- top: 15%;
- z-index:99997;
- }
- @media screen and (max-height: 800px) {
- #rx-mod-settings{
- top: 0
- }
- }
- `;
- let s = document.createElement("style");
- s.type = "text/css";
- s.innerHTML = V2S;
- (document.head || document.documentElement).appendChild(s);
- })();