Gats.io - Chat scroller

chat scroller for gats.io

目前為 2022-04-20 提交的版本,檢視 最新版本

// ==UserScript==
// @name         Gats.io - Chat scroller
// @namespace    http://tampermonkey.net/
// @version      3.0
// @description  chat scroller for gats.io
// @author       nitrogem35
// @match        https://gats.io
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

//lmao how fcking stupid is this dev?? he didn't bother fixing chat scrollers properly twice now ahahahah add a rate limit you dumbass
var chatLoop;
//var symbols = ['@', '#', '!', '$', '%', '&'];
//var extraSymbols = [' '];
var maxLength;
var scrollText = ''
var scrollSpeed = 200
function startChatLoop() {
    chatLoop = true
    let s = scrollText
    let i = 0
    let e = 0
    let k = 0
    function loopfunc() {
        i % 12 == 0 ? e = 1 : e = 0
        if(!k) {
            s.length < 28 ? maxLength = s.length : maxLength = 28
            s = s.substr(1) + s.substr(0, 1);
            let z = s.substring(e,maxLength).split('')
            let numRandom = Math.round(Math.random()*2)
            /*for(var j = 0; j < numRandom; j++) {
                let w = Math.ceil(Math.random()*z.length)-1
                for(var x in z) {
                    let y = z.shift()
                    if(x == w) {
                        z.push(extraSymbols[Math.ceil(Math.random()*extraSymbols.length)-1])
                    }
                    z.push(y)
                }
            }*/
            //z[maxLength] = symbols[Math.ceil(Math.random()*symbols.length)-1]
            for(var j = 0; j < numRandom; j++) {
                z.push(" ")
            }
            z = z.join("")
            RF.list[0].socket.send(`c,${z}`)
            i++
        }
        setTimeout(() => {
            if(chatLoop) loopfunc()
        }, scrollSpeed)
    }
    loopfunc()
}

document.getElementById("chatbox").setAttribute("maxlength", 1000)

var div = document.createElement("div"); document.body.appendChild(div);
function createHTML() {
    let html = `
    <style>
        .main {
            pointer-events: none; position: fixed; z-index:999; top: 150px; left: 10px;
            font-family: 'arial';
            color: black;
            font-size: 20px;
        }

    </style>

    <div class="main" id="scrollerGUI">

        <br>nitrogem35's chat scroller</br>
        <br>Text to Scroll: ${scrollText}</br>
        <br>Save text (from chatbox) [\\]</br>
        <br>Start/Stop Scroll: [']</br>
        <br>Scroll Speed (Higher=slower): ${scrollSpeed}ms [.] (+) / [,] (-) </br>
        <br>Hide overlay: [;]</br>

    </div>`
    div.innerHTML = html;
}

createHTML()

document.addEventListener('keydown', function(key) {
    if(key.keyCode == 222) {
        if(chatLoop) {
            chatLoop = false;
        }
        else {
            startChatLoop();
        }
    };
    if(key.keyCode == 220) {
        scrollText = document.getElementById("chatbox").value
        scrollText += '   '
        createHTML()
    }
    if(key.keyCode == 190) {
        scrollSpeed += 5
        createHTML()
        if(chatLoop) restartChatLoop()
    }
    if(key.keyCode == 188) {
        (scrollSpeed > 0) ? (scrollSpeed -= 5) : (null)
        createHTML()
        if(chatLoop) restartChatLoop()
    }
    if(key.keyCode == 186) {
        if(div.innerHTML != '') div.innerHTML = ''
        else createHTML()
    }
})

function restartChatLoop() {
    if(chatLoop) {
        chatLoop = false
    }
    setTimeout(startChatLoop, scrollSpeed * 2)
}
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址