wolf_ best

Safe visual tools for Kour.io

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 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);
 
})();