Chat Comands - Dado E Moeda

use /roll [número de lados] para rolar um dado, e /coin para girar uma moeda

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name        Chat Comands - Dado E Moeda
// @namespace   Violentmonkey Scripts
// @match       https://bonk.io/*
// @grant       none
// @version     1.0
// @author      -
// @description use /roll [número de lados] para rolar um dado, e /coin para girar uma moeda
// ==/UserScript==


(function() {
    'use strict';

    // Função que processa os comandos no texto
    function processChatCommands(inputElement) {
        let text = inputElement.value;

        // Comando /roll [x]
        if (text.startsWith('/roll')) {
            const match = text.match(/\/roll\s*\[?(\d+)\]?/);
            if (match) {
                const limite = parseInt(match[1]);
                const resultado = Math.floor(Math.random() * limite) + 1;
                inputElement.value = `[DADO 1-${limite}]: ${resultado}`;
            }
        }
        // Comando /coin
        else if (text.startsWith('/coin')) {
            const sorteio = Math.random() < 0.5 ? "CARA" : "COROA";
            inputElement.value = `[MOEDA]: ${sorteio}`;
        }
    }

    // Escuta as teclas no chat para interceptar o Enter
    window.addEventListener('keydown', function(e) {
        if (e.key === 'Enter') {
            // O chat do Bonk.io usa o ID 'newbonkgame_chat_input' ou 'ingamechatinput'
            const chatInput = document.activeElement;

            if (chatInput && (chatInput.id.includes('chat') || chatInput.type === 'text')) {
                processChatCommands(chatInput);
            }
        }
    }, true); // 'true' garante que pegamos o evento antes do jogo processar

    console.log("Comandos de Chat (Fix): Digite /roll [x] ou /coin e aperte Enter.");
})();