public static void ChatMessage(RemoteClient client, MinecraftServer server, IPacket _packet) { var packet = (ChatMessagePacket)_packet; //LogProvider.Log("<" + client.Username + "> " + packet.Message, LogImportance.Medium); var args = new ChatMessageEventArgs(client, packet.Message); server.OnChatMessage(args); if (!args.Handled) { //var team = server.ScoreboardManager.GetPlayerTeam(client.Username); ChatMessage chat; //if (team != null) // chat = string.Format("<{0}{1}{2}> {3}", team.PlayerPrefix, client.Username, team.PlayerSuffix, packet.Message); //else chat = new ChatMessage(string.Format("<{0}> {1}", client.Username, packet.Message)); server.SendChat(chat); } }
public NetworkMode ReadPacket(MinecraftStream stream, NetworkMode mode, PacketDirection direction) { Message = new ChatMessage(stream.ReadString()); Message.Position = (ChatPosition) stream.ReadUInt8(); return mode; }
public ChatMessagePacket(string message) { Message = new ChatMessage(message); }
public ChatMessageEventArgs(ChatMessage Message) { this.Message = Message; }
public ChatMessageEventArgs(RemoteClient origin, ChatMessage rawMessage) { this.Message = rawMessage; this.Origin = origin; Handled = false; }
/* public void SendChat(string text) { foreach (var client in Clients.Where(c => c.IsLoggedIn)) client.SendChat(text); } */ public void SendChat(ChatMessage message) { foreach (var client in Clients.Where(c => c.IsLoggedIn)) client.SendChat(message); }
/// <summary> /// Sends a <see cref="ChatMessagePacket"/> to the client. /// </summary> public virtual void SendChat(ChatMessage message) { //SendPacket(new ChatMessagePacket(string.Format("{{\"text\":\"{0}\"}}", text))); SendPacket(new ChatMessagePacket(message.ToJson())); }