// ==UserScript== // @name Smash Karts Wapen Kiezer (Werkend in Inventory) // @namespace http://tampermonkey.net/ // @version 2.0 // @description Kies en gebruik wapens in Smash Karts via een menu! // @author JouwNaam // @match *://smashkarts.io/* // @grant none // @license MIT // @downloadURL none // ==/UserScript== (function() { 'use strict'; const wapens = [ { naam: "Machine Gun", id: "MachineGun" }, { naam: "Rocket Launcher", id: "RocketLauncher" }, { naam: "Mines", id: "Mines" }, { naam: "Shield", id: "Shield" }, { naam: "Boost", id: "Boost" }, { naam: "Shotgun", id: "Shotgun" } ]; let menuOpen = false; // Maak het menu const menu = document.createElement("div"); menu.id = "wapenMenu"; menu.style.position = "fixed"; menu.style.top = "50px"; menu.style.right = "50px"; menu.style.background = "rgba(0,0,0,0.8)"; menu.style.color = "white"; menu.style.padding = "10px"; menu.style.borderRadius = "10px"; menu.style.display = "none"; menu.style.zIndex = "1000"; // Voeg wapens toe aan het menu wapens.forEach(wapen => { let knop = document.createElement("button"); knop.innerText = wapen.naam; knop.style.display = "block"; knop.style.margin = "5px"; knop.style.padding = "10px"; knop.style.border = "none"; knop.style.background = "#ff9800"; knop.style.color = "white"; knop.style.cursor = "pointer"; knop.style.borderRadius = "5px"; knop.style.width = "150px"; knop.onclick = function() { geefWapen(wapen.id); }; menu.appendChild(knop); }); document.body.appendChild(menu); // Toetsenbord event listener document.addEventListener("keydown", function(event) { if (event.key.toLowerCase() === "g") { event.preventDefault(); event.stopPropagation(); menuOpen = !menuOpen; menu.style.display = menuOpen ? "block" : "none"; } }); // Injecteer een script in de pagina zelf om toegang te krijgen tot game-variabelen const script = document.createElement("script"); script.textContent = ` window.geefWapen = function(wapenId) { let speler = Object.values(window.game?.players || {}).find(p => p.isLocal); if (speler && window.game?.weapons?.[wapenId]) { if (speler.inventory && speler.inventory.addItem) { let nieuwWapen = new window.game.weapons[wapenId](speler); speler.inventory.addItem(nieuwWapen); speler.weapon = nieuwWapen; // Direct gebruiken console.log("Wapen toegevoegd aan inventory en uitgerust:", wapenId); } else { console.log("Kon geen inventory vinden voor speler."); } } else { console.log("Kon geen wapen selecteren:", wapenId); } }; `; document.documentElement.appendChild(script); // Roep de injectie-functie aan vanuit het menu function geefWapen(wapenId) { window.geefWapen(wapenId); } })();