コード例 #1
0
        private void OnListChannel(WorldSession session, PCChannel packet)
        {
            session.SendMessage("Users in channel " + packet.ChannelName + ":");
            var channel = ChatChannels.SingleOrDefault(ch => ch.Name == packet.ChannelName);

            channel.Sessions.ForEach(s => session.SendMessage(s.Player.Name));
        }
コード例 #2
0
        private void OnLeaveChannel(WorldSession session, PCChannel packet)
        {
            var channel = ChatChannels.SingleOrDefault(c => c.Name == packet.ChannelName);

            channel.Sessions.Remove(session);

            if (channel.Sessions.Count == 0)
            {
                ChatChannels.Remove(channel);
            }

            session.SendPacket(new PSChannelNotify(ChatChannelNotify.CHAT_YOU_LEFT_NOTICE, session.Player.ObjectGUID.RawGUID, packet.ChannelName));
        }