Safe visual tools for Kour.io
// ==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);
})();