public void OnChat(CM_CHAT p) { uint chanID = p.ChannelID; string msg = p.Message; ConcurrentDictionary <ulong, ChatSession> clients = null; if (chanID == ChannelID) { ChatClientManager.Instance.ClientsByChannel.TryGetValue(Channel, out clients); } else if (chanID == PartyChannelID) { ChatClientManager.Instance.ClientsByChannel.TryGetValue(PartyChannel, out clients); } if (clients != null) { foreach (KeyValuePair <ulong, ChatSession> i in clients) { SM_CHAT p1 = new SM_CHAT() { ChannelID = chanID, ActorID = ActorID }; p1.PutMessage(Name, msg); i.Value.Network.SendPacket(p1); } } }
public void SendChat(ChatArgument arg) { SM_CHAT p = new SM_CHAT(); p.Recipient(arg.Recipient, arg.Sender.ActorID); p.PutMessage(arg.Sender.Name, (byte)arg.Type, arg.Message); Network.SendPacket(p); }