Customizer

customize the Agarpowers Layout!

Tendrás que instalar una extensión para tu navegador como Tampermonkey, Greasemonkey o Violentmonkey si quieres utilizar este script.

Necesitarás instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Userscripts para instalar este script.

Necesitará instalar una extensión como Tampermonkey para instalar este script.

Necesitarás instalar una extensión para administrar scripts de usuario si quieres instalar este script.

(Ya tengo un administrador de scripts de usuario, déjame instalarlo)

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión como Stylus para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

Necesitará instalar una extensión del gestor de estilos de usuario para instalar este estilo.

(Ya tengo un administrador de estilos de usuario, déjame instalarlo)

// ==UserScript==
// @name         Customizer
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  customize the Agarpowers Layout!
// @author       qwd
// @match        https://agarpowers.xyz/
// @icon         https://www.google.com/s2/favicons?sz=64&domain=agarpowers.xyz
// @grant        none
// @license      qwd
// ==/UserScript==

function customizer() {
    var choosepanel = document.getElementById("choose-panel");choosepanel.style.display = "flex";
    var mainpanel = document.querySelector('#main-panel');
    
    var btf = document.createElement("div");
    btf.style.display = "block"; btf.style.marginBottom="20px"; btf.style.color="white";
    btf.innerHTML = `
  <h4 style="color: aqua">Customizer</h4>
<table>
  <tr>
    <td>Boxes:</td>
    <td><input id="boxInput" type="color"></td>
    <td>Thickness:</td>
    <td><input id="thicknessBoxInput" type="range" value="" min="1" max="10"></td>
  </tr>
  <tr>
    <td>Ingame Boxes:</td>
    <td><input id="inboxInput" type="color"></td>
  </tr>
  <tr>
    <td>Level:</td>
    <td><input id="lvlInput" type="color"></td>
    <td>LevelBorder:</td>
    <td><input id="lvlborderInput" type="color"></td>
  </tr>
  <tr>
    <td>Levelbar: From:</td>
    <td><input id="levelbarFromInput" type="color"></td>
    <td>To:</td>
    <td><input id="levelbarToInput" type="color"></td>
  </tr>
  <tr>
    <td>Leveltext:</td>
    <td><input id="leveltext" type="color">
  </tr>
  <tr>
    <td>Manabar:</td>
    <td><input id="manaInput" type="color"></td>
  </tr>
  <tr>
      <td>Rainbowbar:</td>
    <td><input id="rainbowBar" type="checkbox"></td>
  </tr>
  <tr>
    <td>RainbowScroll: </td>
    <td><input id="rainbowScroll" type="checkbox"></td>
  </tr>
  <tr>
    <td>Buttons</td>
    <td><input id="buttonsInput" type="color"></td>
  </tr>
  <tr>
    <td>Chat Scroll: </td>
    <td><input id="chatScroll" type="color"></td>
  </tr>
</table>

`;

    mainpanel.appendChild(btf);
    var customizer = document.createElement("div");
    customizer.setAttribute("id", "cBeautifier");
    customizer.setAttribute("class", "chooseBtn");
    customizer.setAttribute("role", "button");
    customizer.innerHTML = 'Customizer';
    customizer.style.borderTopRightRadius = "10px";
    customizer.style.borderBottomRightRadius = "10px";

    var settingCol = document.getElementById("setting-col");
    var settings = document.getElementById("settings");
    var controls = document.getElementById("controls");
    var servers = document.getElementById("servers");
    var csettings = document.getElementById("cSettings"); csettings.addEventListener('click', function () {btf.style.display="none";});
    var ccontrols = document.getElementById("cControls"); ccontrols.addEventListener('click', function () {btf.style.display="none";});
    var cservers = document.getElementById("cServers"); cservers.addEventListener('click', function () {btf.style.display="none";});
    cservers.style.borderRadius = "0px";
    var levelcircle = document.querySelector('.level-circle');
    var level = document.getElementById("level");
    var inXPBarText = document.querySelector('#ingame-xp-bar');
    var outXPBarText = document.getElementById("xp-bar");
    var innerManaBar = document.querySelector('#innerManaBar');
    var accpanel = document.getElementById("acc-panel");
    var pwpanel = document.getElementById("powerup-display");
    var ingameXPBar = document.getElementById("ingame-xp-bar");
    // Boxes Change
    var boxesInput = document.getElementById("boxInput");
    var storedBoxColor = localStorage.getItem("boxColor");
    var borderColor = storedBoxColor || "black";
    boxesInput.value = borderColor;
    mainpanel.style.border = "2px solid " + borderColor;
    accpanel.style.border = "2px solid " + borderColor;
    pwpanel.style.borderTop = "2px solid " + borderColor;
    pwpanel.style.borderRight = "2px solid " + borderColor;
    pwpanel.style.borderLeft = "2px solid "+ borderColor;
    boxesInput.addEventListener("input", function() {
        var boxesInputValue = boxesInput.value;
        borderColor = boxesInputValue || "black";
        mainpanel.style.border = "2px solid " + borderColor;
        accpanel.style.border = "2px solid " + borderColor;
        pwpanel.style.borderTop = "2px solid " + borderColor;
        pwpanel.style.borderRight = "2px solid " + borderColor;
        pwpanel.style.borderLeft = "2px solid "+ borderColor;
        localStorage.setItem("boxColor", borderColor);
    });
    var thicknessBoxInput = document.getElementById("thicknessBoxInput");
    var storedBoxThickness = localStorage.getItem("boxThickness");
    var boxesThickness = storedBoxThickness || "black";
    mainpanel.style.border = boxesThickness + "px solid " + borderColor;
    accpanel.style.border = boxesThickness + "px solid " + borderColor;
    pwpanel.style.borderTop = boxesThickness + "px solid " + borderColor;
    pwpanel.style.borderRight = boxesThickness + "px solid " + borderColor;
    pwpanel.style.borderLeft = boxesThickness + "px solid " + borderColor;
    thicknessBoxInput.addEventListener("input", function() {
        var tboxesInputValue = thicknessBoxInput.value;
        boxesThickness = tboxesInputValue || "1";
        mainpanel.style.border = boxesThickness + "px solid " + borderColor;
        accpanel.style.border = boxesThickness + "px solid " + borderColor;
        pwpanel.style.borderTop = boxesThickness + "px solid " + borderColor;
        pwpanel.style.borderRight = boxesThickness + "px solid " + borderColor;
        pwpanel.style.borderLeft = boxesThickness + "px solid " + borderColor;
        localStorage.setItem("boxThickness", boxesThickness);
    });
    var inboxInput = document.getElementById("inboxInput");
    var ingStats = document.getElementById("ingame-stats-container");
    var storedboxborderColor = localStorage.getItem("boxborderColor");
    var boxborderColor = storedboxborderColor || "black";
    inboxInput.value = boxborderColor;
    ingStats.style.border="2px solid " + boxborderColor
    inboxInput.addEventListener("input", function() {
        var boxborderInputValue = inboxInput.value;
        boxborderColor = boxborderInputValue || "black";
        ingStats.style.border="2px solid " + boxborderColor
        localStorage.setItem("boxborderColor", boxborderColor);
    });
    // Level Change
    var lvlInput = document.getElementById("lvlInput");
    var storedlvlColor = localStorage.getItem("lvlColor");
    var lvlColor = storedlvlColor || "black";
    lvlInput.value = lvlColor;
    levelcircle.style.backgroundColor = lvlColor;
    level.style.backgroundColor = lvlColor;
    lvlInput.addEventListener("input", function() {
        var lvlInputValue = lvlInput.value;
        lvlColor = lvlInputValue || "black";
        levelcircle.style.backgroundColor = lvlColor;
        level.style.backgroundColor = lvlColor;
        localStorage.setItem("lvlColor", lvlColor);
    });

    var lvlborderInput = document.getElementById("lvlborderInput");
    var storedlvlborderColor = localStorage.getItem("lvlborderColor");
    var lvlborderColor = storedlvlborderColor || "black";
    lvlborderInput.value = lvlborderColor;
    levelcircle.style.border = "10px ridge" + lvlborderColor;
    lvlborderInput.addEventListener("input", function() {
        var lvlborderInputValue = lvlborderInput.value;
        lvlborderColor = lvlborderInputValue || "black";
        levelcircle.style.border = "10px ridge" + lvlborderColor;
        localStorage.setItem("lvlborderColor", lvlborderColor);
    });
    var leveltextIn = document.getElementById("level-number");
    var leveltextOut = document.getElementById("level");
    var leveltextInput = document.getElementById("leveltext");
    var storedlvltextColor = localStorage.getItem("lvltextColor");
    var lvltextColor = storedlvltextColor || "black";
    leveltextInput.value = lvltextColor;
    leveltextIn.style.color= lvltextColor;
    leveltextOut.style.color= lvltextColor;
    leveltextInput.addEventListener("input", function() {
        var lvltextInputValue = leveltextInput.value;
        lvltextColor = lvltextInputValue || "black";
        leveltextIn.style.color= lvltextColor;
        leveltextOut.style.color= lvltextColor;
        localStorage.setItem("lvltextColor", lvltextColor);
    });

    var manaInput = document.getElementById("manaInput");
    var storedmanaColor = localStorage.getItem("manaColor");
    var manaColor = storedmanaColor || "black";
    manaInput.value = manaColor;
    manaColorChange()
    manaInput.addEventListener("input", function() {
        var manaInputValue = manaInput.value;
        manaColor = manaInputValue || "black";
        manaColorChange()
        localStorage.setItem("manaColor", manaColor);
    });
    function manaColorChange() {
        innerManaBar.style.backgroundColor = manaColor;
    } setInterval(manaColorChange, 1);
    // RainbowBar
    var rainbowInput = document.getElementById("rainbowBar");
    let hue = 0;
    let direction = 1;
    let animationId;
    function animateRainbow() {
        hue += direction;
        if (hue >= 360) {
            hue = 0;
        }
        innerManaBar.style.background = `linear-gradient(to right, hsl(${hue}, 100%, 50%), hsl(${hue + 60}, 100%, 50%))`;
        animationId = requestAnimationFrame(animateRainbow);
    }


    rainbowInput.addEventListener('change', () => {
        if (rainbowInput.checked) {
            animateRainbow();
        } else {
            innerManaBar.style.background="none";
            setInterval(manaColorChange, 1);
            cancelAnimationFrame(animationId);
        }
    });

    var chatScrollInput = document.getElementById("chatScroll");
    var storedchatColor = localStorage.getItem("chatColor");
    var chatColor = storedchatColor || "black";
    chatScrollInput.value = chatColor;
    var styleCode = `#chat-msgs {
  scrollbar-color: ${chatColor} ${chatColor};
  scrollbar-width: thin;
}`;
    var styleElement2 = document.getElementById('chat-msgs-style');
    styleElement2 = document.createElement('style');
    styleElement2.id = 'chat-msgs-style';
    document.body.appendChild(styleElement2);
    styleElement2.innerHTML = styleCode;

    chatScrollInput.addEventListener("input", function() {
        var chatInputValue = chatScrollInput.value;
        chatColor = chatInputValue || "black";

        var styleCode = `#chat-msgs {
    scrollbar-color: ${chatColor} ${chatColor};
    scrollbar-width: thin;
  }`;
        var styleElement2 = document.getElementById('chat-msgs-style');
        styleElement2 = document.createElement('style');
        styleElement2.id = 'chat-msgs-style';
        document.body.appendChild(styleElement2);
        styleElement2.innerHTML = styleCode;

        localStorage.setItem("chatColor", chatColor);
    });


    let hue2 = 0;
    let direction2 = 1;
    let animationId2;

    function animateRainbowScroll() {
        hue2 += direction2;
        if (hue2 >= 360) {
            hue2 = 0;
        }
        var styleCode = `#chat-msgs {
    scrollbar-color: hsl(${hue2}, 100%, 50%) hsla(${hue2 + 60}, 100%, 50%, 0.7);
  }`;

        var styleElement = document.getElementById('chat-msgs-style');
        if (!styleElement) {
            styleElement = document.createElement('style');
            styleElement.id = 'chat-msgs-style';
            document.body.appendChild(styleElement);
        }
        styleElement.innerHTML = styleCode;
        animationId2 = requestAnimationFrame(animateRainbowScroll);
    }
    var rainbowScrollInput = document.getElementById("rainbowScroll");
    rainbowScrollInput.addEventListener('change', () => {
        if (rainbowScrollInput.checked) {
            animateRainbowScroll();
            console.log("an");
        } else {
            cancelAnimationFrame(animationId2);
            console.log("aus");
        }
    });
    var xpBoxIn = document.querySelector(".xp-container");
    var xpBoxOut = document.getElementById("xp");
    // Levelbar
    var levelbarFromInput = document.getElementById("levelbarFromInput");
    var storedlevelbarFromColor = localStorage.getItem("levelbarFromColor");
    var levelbarFromColor = storedlevelbarFromColor || "black";
    levelbarFromInput.value = levelbarFromColor;
    levelbarFromInput.addEventListener("input", function() {
        var levelbarFromInputValue = levelbarFromInput.value;
        levelbarFromColor = levelbarFromInputValue || "black";
        outXPBarText.style.backgroundImage = "linear-gradient(to right, " + levelbarFromColor + ", " + levelbarToColor + ")";
        inXPBarText.style.backgroundImage = "linear-gradient(to right, " + levelbarFromColor + ", " + levelbarToColor + ")";
        xpBoxOut.style.borderTop= "2px solid " + levelbarFromColor;
        xpBoxOut.style.borderBottom= "2px solid " + levelbarFromColor;
        xpBoxOut.style.borderRight= "2px solid " + levelbarFromColor;
        xpBoxIn.style.borderTop= "5px solid " + levelbarFromColor;
        xpBoxIn.style.borderBottom= "5px solid " + levelbarFromColor;
        xpBoxIn.style.borderRight= "5px solid " + levelbarFromColor;
        localStorage.setItem("levelbarFromColor", levelbarFromColor);
    });
    var levelbarToInput = document.getElementById("levelbarToInput");
    var storedlevelbarToColor = localStorage.getItem("levelbarToColor");
    var levelbarToColor = storedlevelbarToColor || "black";
    levelbarToInput.value = levelbarToColor;
    levelbarToInput.addEventListener("input", function() {
        var levelbarToInputValue = levelbarToInput.value;
        levelbarToColor = levelbarToInputValue || "black";
        outXPBarText.style.backgroundImage = "linear-gradient(to right, " + levelbarFromColor + ", " + levelbarToColor + ")";
        inXPBarText.style.backgroundImage = "linear-gradient(to right, " + levelbarFromColor + ", " + levelbarToColor + ")";
        localStorage.setItem("levelbarToColor", levelbarToColor);
    });
    outXPBarText.style.backgroundImage = "linear-gradient(to right, " + levelbarFromColor + ", " + levelbarToColor + ")";
    inXPBarText.style.backgroundImage = "linear-gradient(to right, " + levelbarFromColor + ", " + levelbarToColor + ")";
        xpBoxOut.style.borderTop= "2px solid " + levelbarFromColor;
        xpBoxOut.style.borderBottom= "2px solid " + levelbarFromColor;
        xpBoxOut.style.borderRight= "2px solid " + levelbarFromColor;
        xpBoxIn.style.borderTop= "5px solid " + levelbarFromColor;
        xpBoxIn.style.borderBottom= "5px solid " + levelbarFromColor;
        xpBoxIn.style.borderRight= "5px solid " + levelbarFromColor;
    // Buttons
    var playBtn = document.getElementById("play-btn");
    var specBtn = document.getElementById("spectate-btn");
    var highlightedBtns = document.querySelector(".chooseBtn highlighted");
    var buttonsInput = document.getElementById("buttonsInput");
    var storedBtnsColor = localStorage.getItem("BtnsColor");
    var BtnsColor = storedBtnsColor || "black";
    buttonsInput.value = BtnsColor;
    playBtn.style.backgroundColor = BtnsColor;
    specBtn.style.backgroundColor = BtnsColor;
    buttonsInput.addEventListener("input", function() {
        var BtnsInputValue = buttonsInput.value;
        BtnsColor = BtnsInputValue || "black";
        playBtn.style.backgroundColor = BtnsColor;
        specBtn.style.backgroundColor = BtnsColor;
        localStorage.setItem("BtnsColor", BtnsColor);
    });

    // Customizer Listener
    customizer.addEventListener('click', function () {

        settings.style.display = "none";
        csettings.setAttribute("class", "chooseBtn");
        servers.style.display = "none";
        cservers.setAttribute("class", "chooseBtn");
        controls.style.display = "none";
        ccontrols.setAttribute("class", "chooseBtn");
        customizer.setAttribute("class", "chooseBtn highlighted");
        btf.style.display = "block"; btf.style.marginBottom="20px";

    });


choosepanel.appendChild(customizer);
    var fl = document.querySelectorAll(".fl"); fl.forEach(function(element) {element.remove();});
    var fr = document.querySelectorAll(".fr"); fr.forEach(function(element) {element.remove();});
    var clickEvent = new Event('click');
    customizer.dispatchEvent(clickEvent);
     var chatmsgs = document.getElementById("chat-msgs");
    var welcome = document.createElement("div");
    welcome.style.color="lime"; welcome.style.fontWeight="900"; welcome.style.marginLeft="1%";
    welcome.innerHTML = '⸻ Customizer active ⸻';
    chatmsgs.appendChild(welcome);
}
customizer();