wolf_ best

Safe visual tools for Kour.io

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да инсталирате разширение, като например Tampermonkey .

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

// ==UserScript==
// @name         wolf_ best
// @namespace    kourkour
// @version      2.0
// @description  Safe visual tools for Kour.io
// @author       kourkour
// @match        https://kour.io/*
// @match        https://*.kour.io/*
// @grant        none
// @license      MIT
// ==/UserScript==
 
(function () {
    'use strict';
 
    let menuOpen = false;
    let rainbow = false;
    let crosshairSize = 32;
    let crosshairColor = "#00eaff";
    let crosshairShape = "+";
 
    const style = document.createElement("style");
    style.textContent = `
        #wolfMenu {
            position: fixed;
            top: 80px;
            right: 30px;
            width: 330px;
            z-index: 999999;
            background: linear-gradient(135deg, rgba(10,10,30,.96), rgba(0,40,70,.96));
            border: 2px solid #00eaff;
            border-radius: 18px;
            color: white;
            font-family: Arial, sans-serif;
            padding: 15px;
            display: none;
            box-shadow: 0 0 25px #00eaff;
        }
 
        #wolfMenu h1 {
            margin: 0;
            text-align: center;
            color: #00eaff;
            font-size: 28px;
            text-shadow: 0 0 15px #00eaff;
        }
 
        #wolfMenu .author {
            text-align: center;
            color: #bbb;
            margin-bottom: 12px;
            font-size: 13px;
        }
 
        #wolfMenu button {
            width: 100%;
            margin: 4px 0;
            padding: 9px;
            border: 1px solid #00eaff;
            border-radius: 10px;
            background: rgba(0,0,0,.45);
            color: white;
            cursor: pointer;
            font-size: 14px;
        }
 
        #wolfMenu button:hover {
            background: #00eaff;
            color: black;
            font-weight: bold;
        }
 
        #wolfCrosshair {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 999998;
            pointer-events: none;
            font-weight: bold;
            text-shadow: 0 0 12px currentColor;
        }
 
        #wolfInfo {
            position: fixed;
            top: 15px;
            left: 15px;
            z-index: 999998;
            color: white;
            background: rgba(0,0,0,.65);
            padding: 8px 12px;
            border-radius: 10px;
            font-family: Arial;
            border: 1px solid #00eaff;
            display: none;
        }
 
        #wolfNotes {
            width: 100%;
            height: 70px;
            border-radius: 8px;
            background: #111827;
            color: white;
            border: 1px solid #00eaff;
            padding: 6px;
            resize: none;
        }
    `;
    document.body.appendChild(style);
 
    const crosshair = document.createElement("div");
    crosshair.id = "wolfCrosshair";
    crosshair.textContent = crosshairShape;
    crosshair.style.display = "none";
    document.body.appendChild(crosshair);
 
    const info = document.createElement("div");
    info.id = "wolfInfo";
    document.body.appendChild(info);
 
    const menu = document.createElement("div");
    menu.id = "wolfMenu";
    menu.innerHTML = `
        <h1>🐺 wolf_ best</h1>
        <div class="author">Auteur : kourkour</div>
 
        <button id="toggleCross">🎯 Activer / désactiver crosshair</button>
        <button id="rainbowCross">🌈 Rainbow crosshair</button>
        <button id="shapePlus">➕ Crosshair +</button>
        <button id="shapeDot">🔵 Crosshair point</button>
        <button id="shapeCircle">⭕ Crosshair cercle</button>
        <button id="shapeStar">⭐ Crosshair étoile</button>
 
        <button id="blueCross">🔵 Couleur bleue</button>
        <button id="redCross">🔴 Couleur rouge</button>
        <button id="greenCross">🟢 Couleur verte</button>
        <button id="whiteCross">⚪ Couleur blanche</button>
 
        <button id="bigCross">🔎 Agrandir crosshair</button>
        <button id="smallCross">🔍 Réduire crosshair</button>
 
        <button id="toggleInfo">🕒 Afficher heure + FPS visuel</button>
        <button id="neonMenu">💎 Menu néon</button>
        <button id="darkMenu">🌑 Menu sombre</button>
        <button id="transparentMenu">👻 Menu transparent</button>
 
        <button id="resetAll">♻️ Reset tout</button>
 
        <textarea id="wolfNotes" placeholder="Notes rapides..."></textarea>
 
        <button id="closeMenu">❌ Fermer</button>
    `;
    document.body.appendChild(menu);
 
    function updateCrosshair() {
        crosshair.textContent = crosshairShape;
        crosshair.style.fontSize = crosshairSize + "px";
        crosshair.style.color = crosshairColor;
    }
 
    updateCrosshair();
 
    document.addEventListener("keydown", e => {
        if (e.key.toLowerCase() === "p") {
            menuOpen = !menuOpen;
            menu.style.display = menuOpen ? "block" : "none";
        }
    });
 
    document.getElementById("toggleCross").onclick = () => {
        crosshair.style.display = crosshair.style.display === "none" ? "block" : "none";
    };
 
    document.getElementById("rainbowCross").onclick = () => {
        rainbow = !rainbow;
    };
 
    document.getElementById("shapePlus").onclick = () => {
        crosshairShape = "+";
        updateCrosshair();
    };
 
    document.getElementById("shapeDot").onclick = () => {
        crosshairShape = "•";
        updateCrosshair();
    };
 
    document.getElementById("shapeCircle").onclick = () => {
        crosshairShape = "◎";
        updateCrosshair();
    };
 
    document.getElementById("shapeStar").onclick = () => {
        crosshairShape = "✦";
        updateCrosshair();
    };
 
    document.getElementById("blueCross").onclick = () => {
        rainbow = false;
        crosshairColor = "#00eaff";
        updateCrosshair();
    };
 
    document.getElementById("redCross").onclick = () => {
        rainbow = false;
        crosshairColor = "#ff3333";
        updateCrosshair();
    };
 
    document.getElementById("greenCross").onclick = () => {
        rainbow = false;
        crosshairColor = "#00ff88";
        updateCrosshair();
    };
 
    document.getElementById("whiteCross").onclick = () => {
        rainbow = false;
        crosshairColor = "#ffffff";
        updateCrosshair();
    };
 
    document.getElementById("bigCross").onclick = () => {
        crosshairSize += 4;
        updateCrosshair();
    };
 
    document.getElementById("smallCross").onclick = () => {
        crosshairSize = Math.max(12, crosshairSize - 4);
        updateCrosshair();
    };
 
    document.getElementById("toggleInfo").onclick = () => {
        info.style.display = info.style.display === "none" ? "block" : "none";
    };
 
    document.getElementById("neonMenu").onclick = () => {
        menu.style.boxShadow = "0 0 35px #00eaff, 0 0 60px #7c3aed";
        menu.style.borderColor = "#00eaff";
    };
 
    document.getElementById("darkMenu").onclick = () => {
        menu.style.background = "rgba(5,5,10,.97)";
        menu.style.borderColor = "#ffffff";
    };
 
    document.getElementById("transparentMenu").onclick = () => {
        menu.style.background = "rgba(0,0,0,.55)";
    };
 
    document.getElementById("resetAll").onclick = () => {
        rainbow = false;
        crosshairSize = 32;
        crosshairColor = "#00eaff";
        crosshairShape = "+";
        crosshair.style.display = "none";
        info.style.display = "none";
        menu.style.background = "linear-gradient(135deg, rgba(10,10,30,.96), rgba(0,40,70,.96))";
        menu.style.borderColor = "#00eaff";
        updateCrosshair();
    };
 
    document.getElementById("closeMenu").onclick = () => {
        menuOpen = false;
        menu.style.display = "none";
    };
 
    setInterval(() => {
        info.innerHTML = "🕒 " + new Date().toLocaleTimeString() + "<br>🎮 FPS : visuel";
 
        if (rainbow) {
            const hue = Date.now() / 10 % 360;
            crosshair.style.color = `hsl(${hue}, 100%, 60%)`;
        }
    }, 50);
 
})();