// ==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);
})();