Emote Selection Script with Toggle

A script where you can randomly spam emotes or you can choose one emote to spam constantly .

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

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

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
// ==UserScript==
// @name         Emote Selection Script with Toggle
// @namespace    Emote
// @version      1.1.0
// @description  A script where you can randomly spam emotes or you can choose one emote to spam constantly .
// @author       Vernice
// @match        https://evoworld.io/*
// @match        https://flyordie.io/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=evoworld.io
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';
    // ⚠️ USE AT YOUR OWN RISK - Risk of ban
    let selectedEmoteId = 1; // Default emote
    function waitForServer() {
        if (typeof game !== 'undefined' && game.canvas) {
            initEmoteSpamToggleKey();
        } else {
            setTimeout(waitForServer, 500);
        }
    }

    function initEmoteSpamToggleKey() {
        let emoteSpamEnabled = false;
        let emoteSpamInterval;

        function startEmoteSpam() {
            emoteSpamInterval = setInterval(() => {
                if (typeof gameServer !== 'undefined' && !imDead && joinedGame) {
                    sendEmote(selectedEmoteId);
                }
            }, 1000);
        }

        function stopEmoteSpam() {
            clearInterval(emoteSpamInterval);
        }

        function setSelectedEmote(emoteId) {
            selectedEmoteId = emoteId;
            console.log(`Selected Emote ID: ${selectedEmoteId}`);
        }

        document.addEventListener('keydown', (e) => {
            if (e.key.toLowerCase() === 'p') {
                emoteSpamEnabled = !emoteSpamEnabled;
                if (emoteSpamEnabled) {
                    startEmoteSpam();
                    console.log("Emote spam: ON");
                } else {
                    stopEmoteSpam();
                    console.log("Emote spam: OFF");
                }
            }
            // Set selected emote by number keys 1-9
            if (e.key >= '1' && e.key <= '9') {
                setSelectedEmote(parseInt(e.key));
            }
        });
    }

    waitForServer();
})();