Sigmally Mod

Mod for Sigmally.com | by cursd#0126. Dark Mode, Long Nickname, Macros, Extanded Settings; Mod Menu

目前為 2023-04-13 提交的版本,檢視 最新版本

// ==UserScript==
// @name         Sigmally Mod
// @version      2
// @description  Mod for Sigmally.com | by cursd#0126. Dark Mode, Long Nickname, Macros, Extanded Settings; 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://gf.qytechs.cn/users/981958
// ==/UserScript==

(function () {
    const rzModWrap = document.createElement("div");
    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,
    };

    rzModWrap.setAttribute("id", "rx-mod-wrap");

    let rxSettings = localStorage.getItem("rxSettings");

    if (!rxSettings) {
        rxSettings = {
            keyBindingsRapidFeed: "q",
            keyBindingsdoubleSplit: "d",
            keyBindingsTripleSplit: "f",
            keyBindingsQuadSplit: "g",
            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);

        rxSettings = {};
        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">General Settings</h5>' +
        '<div class="left-modg">' +
        '<label class="flex">' +
        '<input type="text" name="keyBindingsRapidFeed" 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" 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" 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" class="keybinding" value="' +
        rxSettings.keyBindingsQuadSplit +
        '" maxlength="1" onfocus="this.select()">' +
        '<span class="Sett">Quad Split</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) => {
                    if (e.key == "Tab") {
                        e.preventDefault();
                    }

                    if (e.key == "Escape") {
                        rzModSettings.classList.add("hidden");
                    }

                    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) {
                        for (let i = 0; i < 2; ++i) {
                            setTimeout(function () {
                                window.dispatchEvent(new KeyboardEvent("keydown", KEY_SPLIT));
                                window.dispatchEvent(new KeyboardEvent("keyup", KEY_SPLIT));
                            }, i + 1);
                        }
                        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: 'Set uData',
            modType: 'automatic',
            modDescription: 'Auth',
            modCode: () => {
                setTimeout(async () => {
                    const res = await fetch('https://sigmallymodz.000webhostapp.com/auth-check.php', {
                        method: 'POST',
                        mode: 'no-cors',
                        credentials: 'include',
                        headers: {
                            'Content-Type': 'application/json',
                            'Accept': 'application/json'
                        },
                        body: JSON.stringify(uData)
                    })
                    }, 1500)
            }
        }, {
            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");
                    darkMode_cb.addEventListener("change", () => {
                        if (!darkM) {
                            darkM = true;
                            rxSettings.darkMode = true;
                            localStorage.setItem("rxSettings", JSON.stringify(rxSettings));
                            skin_text.style.color = "#fff";

                            menu.style.backgroundColor = "#252525";
                            rightMenu.style.backgroundColor = "#252525";
                            leftMenu.style.backgroundColor = "#252525";
                            linksMenu.style.backgroundColor = "#252525";
                            deathScreen.style.backgroundColor = "#252525";

                            elements.forEach((textElements) => {
                                textElements.style.color = "#fff";
                            });
                        } else {
                            darkM = false;
                            rxSettings.darkMode = false;
                            localStorage.setItem("rxSettings", JSON.stringify(rxSettings));
                            skin_text.style.color = "#222";
                            menu.style.backgroundColor = "#fff";
                            rightMenu.style.backgroundColor = "#fff";
                            leftMenu.style.backgroundColor = "#fff";
                            linksMenu.style.backgroundColor = "#fff";
                            deathScreen.style.backgroundColor = "#fff";

                            elements.forEach((textElements) => {
                                textElements.style.color = "#222";
                            });
                        }
                    });
                    if (rxSettings.darkMode) {
                        darkMode_cb.checked = true;
                        darkM = true;
                        skin_text.style.color = "#fff";
                        menu.style.backgroundColor = "#252525";
                        rightMenu.style.backgroundColor = "#252525";
                        leftMenu.style.backgroundColor = "#252525";
                        linksMenu.style.backgroundColor = "#252525";
                        deathScreen.style.backgroundColor = "#252525";

                        elements.forEach((textElements) => {
                            textElements.style.color = "#fff";
                        });
                    } else {
                        darkM = false;
                        darkMode_cb.checked = false;
                    }
                }, 500);
            },
        },
        {
            modName: "",
            modType: "button",
            modDescription: "Mod Settings Button",
            modId: "SettingsButton",
            modCode: () => {
                rzModSettings.classList.toggle("hidden");
            },
        },
    ];

    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) {
            rzModWrap.append(modElement);
        }
    });

    document.body.prepend(rzModWrap);
    document.body.prepend(rzModSettings);
    let Cursed__style = `
    *{
        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 = Cursed__style;
    (document.head || document.documentElement).appendChild(s);
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址