void commClient_ChatMessageReceived(ChatMessage cm) { String alias; if (players.TryGetValue(cm.Owner, out alias)) cm.OwnerAlias = alias; CallChatMessageReceived(cm); }
void commServer_ChatMessageReceived(ChatMessage cm) { String alias; if (players.TryGetValue(cm.Owner, out alias)) cm.OwnerAlias = alias; ProcessChatMessage(cm); }
// CLIENT private void CallChatMessageReceived(ChatMessage cm) { if (ChatMessageReceived == null) return; ChatMessageReceived(cm); }
public void SendChatPacket(ChatMessage msg) { if (isClient) { if (commClient != null) commClient.SendChatPacket(msg.Message, MyClientID); } else { if (commServer != null) commServer.BroadcastChatMessage(msg.Message, msg.Owner); } }
// COMMON public virtual void ProcessChatMessage(ChatMessage cm) { }
public void ReceiveMessage(ChatMessage cm) { //ChatMessage message = new ChatMessage(); cm.MessageColor = Color.Black; //message.Message = msg; //message.Owner = owner; cm.Time = DateTime.Now; ChatLog.Add(cm.Time.Ticks, cm); }
public bool KeysPressed(List<Keys> pressed, out ChatMessage message) { message = null; bool exitMode = false; bool shift = pressed.Contains(Keys.LeftShift) || pressed.Contains(Keys.RightShift); foreach (Keys k in pressed) { if (k == Keys.Left) { if (currentPosition > 0) currentPosition--; } else if (k == Keys.Home) currentPosition = 0; else if (k == Keys.Right) { if (currentPosition < currentMessage.Length) currentPosition++; } else if (k == Keys.End) currentPosition = currentMessage.Length; else if (k == Keys.Enter) { exitMode = true; message = new ChatMessage(currentMessage, -1); // TODO: Owner is set elsewhere message.Time = DateTime.Now; message.Message = currentMessage; message.MessageColor = Color.DarkBlue; currentMessage = ""; currentPosition = 0; // Add Message to list and send a packet about it // let server add it for us //ChatLog.Add(message.Time.Ticks, message); } else if (k == Keys.Escape) { exitMode = true; currentPosition = 0; currentMessage = ""; } // TODO, Backspace, Delete else if (k == Keys.Back) { if (currentPosition > 0) { currentMessage = currentMessage.Remove(currentPosition - 1, 1); currentPosition--; } } else if (k == Keys.Delete) { if (currentPosition < currentMessage.Length) { currentMessage = currentMessage.Remove(currentPosition, 1); } } else if (k == Keys.LeftShift || k == Keys.RightShift || k == Keys.LeftControl || k == Keys.RightControl || k == Keys.LeftAlt || k == Keys.RightAlt) { // Special characters handled elsewhere or not at all } else { ProcessText(k, shift); //currentMessage = currentMessage.Insert(currentPosition, KeyToText(k)); //currentPosition += k.ToString().Length; } } return exitMode; }