/// <summary> /// Called when a player disconnects from the server /// </summary> /// <param name="console">The server GUI - provides access to the underlying server process</param> /// <param name="message">The disconnection message</param> public void OnPlayerDisconnect(IServerConsole console, ServerConnectionMessage message) { foreach (IPlugin plugin in Enabled) { try { plugin.OnPlayerDisconnect(console, message); } catch (Exception ex) { console.DisplayLine($"Error in method OnPlayerDisconnect for plugin {plugin.Name}: {ex}", red); } } }
public void OnPlayerConnect(IServerConsole console, ServerConnectionMessage message) { var recentChat = new List <string>(); foreach (var m in chatMessages) { if (m.Timestamp > DateTime.Now - TimeSpan.FromMinutes(30)) { recentChat.Add($"{m.Timestamp:[HH:mm:ss]} {m}"); } } if (recentChat.Count > 0) { console.SendCommand( CommandHelper.Tellraw( message.Username, new MinecraftTextComponent { Text = $"Welcome {message.Username}! Here are some recent chat messages:", Color = MinecraftColor.gold } ), displayInConsole: false, addToHistory: false ); foreach (string s in recentChat) { console.SendCommand( CommandHelper.Tellraw( message.Username, new MinecraftTextComponent { Text = s, Color = MinecraftColor.gold } ), displayInConsole: false, addToHistory: false ); } } chatMessages.AddLast(message); }
public void OnPlayerDisconnect(IServerConsole console, ServerConnectionMessage message) { chatMessages.AddLast(message); }
public void OnPlayerDisconnect(IServerConsole console, ServerConnectionMessage message) { PostWebhookMessage(DiscordWebhookMessage.FromServerMessage(message), console); }
public void OnPlayerDisconnect(IServerConsole console, ServerConnectionMessage message) { }