// ==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 // @downloadURL none // ==/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 = '
' + '
' + '' + '

Settings

' + "
" + '' + "
" + "
" + '
Keybindings
' + '
' + '" + '" + '" + '" + "" + '" + "
" + '
' + "
" + "
" + '

Discord

' + '
Join Sigmally Modz Server
' + "
" + '

Stylish Names

' + '
Stylish Name MakerNickfinder
' + "
" + '

Youtube

' + '
CursedSigmally Modz
'; const rzMods = [ { modName: "Branding", modType: "automatic", modDescription: "Branding", modCode: () => { const gameTitle = document.getElementById("title"); gameTitle.innerHTML = 'SigmallyMod by Cursed / Ringzer0'; }, }, { modName: "Game Settings", modType: "automatic", modDescription: "Extanded Game Settings", modCode: () => { const gameSettings = document.querySelector(".checkbox-grid"); gameSettings.innerHTML += `
  • `; }, }, { 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) { console.log("test") 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); })();