public void SendChatMessage(IClient client, string message) { var level = client.Session.Level; var cmsMessage = new ChatMessageServerMessage { // To prevent the client from viewing profile and stuff. UserId = level.Avatar.Id, HomeId = level.Avatar.Id, League = 22, Name = "Command System", ExpLevels = 100, Message = message, }; client.SendMessage(cmsMessage); }
private Task HandleChatMessageClient(IClient client, Message message, CancellationToken cancellationToken) { var senderLevel = client.Session.Level; var cmcMessage = (ChatMessageClientMessage)message; if (cmcMessage.TextMessage.StartsWith("/")) { ChatManager.Handle(client, cmcMessage.TextMessage); } else { if (cmcMessage.TextMessage.ToLower().Contains("savegame")) { ChatManager.SendChatMessage(client, "Did you know? 'savegame' isn't a command and does nothing? ^^"); } var cmsMessage = new ChatMessageServerMessage { UserId = senderLevel.Avatar.Id, HomeId = senderLevel.Avatar.Id, League = senderLevel.Avatar.League, Name = senderLevel.Avatar.Name, ExpLevels = senderLevel.Avatar.ExpLevels, Alliance = senderLevel.Avatar.Alliance, Message = cmcMessage.TextMessage, }; // TODO: Might want to create Chat Rooms to reduce network usage. // Sends the message to all the clients. foreach (var c in Server.Clients) { c.SendMessage(cmsMessage); } } return(Task.FromResult <object>(null)); }