Provides a tag function that sends a message that is only visible to other scripts.
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.greatest.deepsurf.us/scripts/502813/1423193/Geoguessr%20Tag.js
// ==UserScript==
// @name Geoguessr Tag
// @description Provides a tag function that sends a message that is only visible to other scripts.
// @version 1.0.0
// @author victheturtle#5159
// @license MIT
// @namespace https://greatest.deepsurf.us/users/967692-victheturtle
// ==/UserScript==
const prefix = "chat:InGame:TextMessages:";
let messageSocket = null;
let accessToken = null;
let lobbyId = null;
const originalSend = WebSocket.prototype.send;
WebSocket.prototype.send = function(...args) {
try {
const json = JSON.parse(...args);
if (json.topic?.startsWith(prefix)) {
accessToken = json.accessToken || accessToken;
messageSocket = this;
lobbyId = json.topic.split(":")[3];
}
} catch(e) { }
return originalSend.call(this, ...args);
};
function tag(string) {
if (!messageSocket || !accessToken || !lobbyId) return false;
messageSocket.send(JSON.stringify({code: 'ChatMessage', topic: `${prefix}${lobbyId}:green`, payload: string, accessToken}));
return true;
}