koc chat

chat test

Version vom 24.05.2025. Aktuellste Version

Dieses Skript sollte nicht direkt installiert werden. Es handelt sich hier um eine Bibliothek für andere Skripte, welche über folgenden Befehl in den Metadaten eines Skriptes eingebunden wird // @require https://update.greasyfork.ip-ddns.com/scripts/534139/1594673/koc%20chat.js

// allianceChat.js

Tabs.AllianceChat = {
    tabOrder: 2150, // Adjust as needed
    tabLabel: "Alliance Chat",
    tabColor: "green",
    myDiv: null,
    chatHistory: [],
    maxHistory: 300,

    init: function (div) {
        var t = Tabs.AllianceChat; // Use var
        t.myDiv = div;
        t.paint();
    },

    paint: function () {
        var t = Tabs.AllianceChat; // Use var
        var m = `
            <div class="divHeader" align="center">Enhanced Alliance Chat</div>
            <br>
            <div align="center">
                <textarea id="allianceChatInput" rows="3" cols="50" class="btInput" placeholder="Enter message..."></textarea>
                <br>
                <button id="allianceSendButton" class="buttonv2 std blue">Send</button>
                <br><br>
                <div id="allianceChatDisplay" style="height: 400px; overflow-y: scroll;"></div>
            </div>
        `;

        t.myDiv.innerHTML = m; // Use t

        // Event listeners (using jQuery)
        $("#allianceSendButton").click(function () { t.sendMessage(); }); // Use t
    },

    sendMessage: function () {
        var t = Tabs.AllianceChat; // Use var
        var message = $("#allianceChatInput").val().trim(); // Use var
        if (message === "") {
            return;
        }

        // ... (send message using BotChat or your chat functions) ...

        t.addMessage(Seed.player.name, message); // Use t
        t.displayChat(); // Use t

        $("#allianceChatInput").val("");
    },

    addMessage: function (sender, message) {
        var t = Tabs.AllianceChat; // Use var
        t.chatHistory.push({ sender: sender, message: message, timestamp: Date.now() }); // Use t
        if (t.chatHistory.length > t.maxHistory) { // Use t
            t.chatHistory.shift(); // Use t
        }
        t.saveChatHistory(); // Use t
    },

    displayChat: function () {
        var t = Tabs.AllianceChat; // Use var
        var chatDisplay = $("#allianceChatDisplay"); // Use var
        chatDisplay.empty();

        for (var i = 0; i < t.chatHistory.length; i++) { // Use var and for loop
            var msg = t.chatHistory[i]; // Use var
            var messageElement = $("<div></div>"); // Use var
            messageElement.html(`[${new Date(msg.timestamp).toLocaleTimeString()}] ${msg.sender}: ${msg.message}`);
            chatDisplay.append(messageElement);
        }

        chatDisplay.scrollTop(chatDisplay[0].scrollHeight);
    },

    // ... (Implement saveChatHistory and loadChatHistory) ...

    show: function () {
        var t = Tabs.AllianceChat; // Use var
        t.loadChatHistory(); // Use t
        t.displayChat(); // Use t
    },

    hide: function () {
        // ...
    }
};