UNPKG

jsplanet

Version:

A controller for Trackmania 2020 dedicated server.

30 lines (29 loc) 933 B
import { Message } from "../structures/index.js"; class ChatManager { jsPlanet; playersManager; remote; constructor(jsPlanet, remote, playersManager) { this.jsPlanet = jsPlanet; this.playersManager = playersManager; this.remote = remote; this.setupListeners(); } async send(message) { const [isSuccess] = await this.remote.callMethod("ChatSendServerMessage", message); return isSuccess; } setupListeners() { this.remote.on("ManiaPlanet.PlayerChat", (_, playerLogin, rawMessage) => { const message = new Message(this.playersManager["create"]({ isConnected: null, login: playerLogin, nickname: null, status: null, team: null, }), rawMessage); this.jsPlanet.emit("message", message); }); } } export default ChatManager;