ShellShock.io FULL Custom Mod (Background + Scopes + Fake Clan Items + Killfeed)

Custom background, custom scope colors, fake clan hats, and killfeed text modifications for ShellShock.io only.

// ==UserScript==
// @name         ShellShock.io FULL Custom Mod (Background + Scopes + Fake Clan Items + Killfeed)
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Custom background, custom scope colors, fake clan hats, and killfeed text modifications for ShellShock.io only.
// @author       YourNameHere
// @match        *://shellshock.io/*
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';

    // ✅ Confirm on shellshock.io
    if (!window.location.hostname.includes("shellshock.io")) {
        console.error("❌ Not on shellshock.io! Exiting script.");
        return;
    }

    console.log("✅ ShellShock.io Custom Script Loaded");

    // === Inject CSS ===
    const css = `
        body {
            background: url("https://chat.openai.com/mnt/data/b066146c-10ab-49e4-adfb-28edddc6c0fa.png") no-repeat center center fixed !important;
            background-size: cover !important;
            color: #ffffff !important;
        }
        .navbar, .footer, .inventory, .menu {
            background-color: rgba(0, 0, 0, 0.6) !important;
            border-radius: 12px;
            color: white !important;
        }
        .button, .btn-primary {
            background-color: #8b0000 !important;
            color: #fff !important;
            border-radius: 8px;
        }
        .scope-freeranger, .scope-crackshot {
            border: 4px solid #8b0000 !important;
            background-color: rgba(0, 0, 0, 0.85) !important;
            box-shadow: 0 0 12px #8b0000;
        }
        .scope-freeranger::before, .scope-crackshot::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 2px;
            height: 100%;
            background: #8b0000;
            transform: translate(-50%, -50%);
        }
        .scope-freeranger::after, .scope-crackshot::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 100%;
            height: 2px;
            background: #8b0000;
            transform: translate(-50%, -50%);
        }
    `;
    const style = document.createElement('style');
    style.textContent = css;
    document.head.appendChild(style);

    console.log("🎨 Custom CSS applied");

    // === Killfeed Text Replacement ===
    const changeKillText = () => {
        const observer = new MutationObserver(mutations => {
            for (const mutation of mutations) {
                for (const node of mutation.addedNodes) {
                    if (node.nodeType === 1 && node.innerText && node.innerText.includes("You killed")) {
                        node.innerText = node.innerText.replace("You killed", "You just shit on");
                    }
                }
            }
        });
        observer.observe(document.body, { childList: true, subtree: true });
    };

    // === Fake Clan Hat + Stamp ===
    const fakeClanStuff = () => {
        try {
            let data = JSON.parse(localStorage.getItem('shellshock'));
            if (data) {
                data.hat = "gang"; // fake GanG hat
                data.stamp = "gang"; // fake GanG stamp
                localStorage.setItem('shellshock', JSON.stringify(data));
                console.log("✅ Successfully injected fake GanG hat and stamp!");
                setTimeout(() => {
                    console.log("🔄 Auto-reloading page to apply fake items...");
                    location.reload();
                }, 1000); // 1 second delay then reload
            } else {
                console.warn("⚠️ No ShellShock localStorage data found (guest player?)");
            }
        } catch (err) {
            console.error("❌ Failed to inject fake items:", err);
        }
    };

    // === Start After Page Fully Loads ===
    window.addEventListener('load', () => {
        console.log("⏳ Waiting for ShellShock.io to fully load...");
        setTimeout(() => {
            fakeClanStuff();
            changeKillText();
        }, 2500);
    });

})();