Example #1
0
File: Room.cs Project: BjkGkh/R106
        internal unsafe void SendChatMessageToWithoutIgnore(ServerMessage Message, RoomUser originatingUser)
        {
            try
            {
                int messageSize = Message.GetLength();
                byte[] PacketData = Message.Bytes();

                foreach (RoomUser user in roomUserManager.UserList.Values)
                {
                    if (user.IsBot)
                        continue;

                    GameClient UsersClient = user.GetClient();
                    if (UsersClient == null)
                        continue;

                    if (user.HasIgnored(originatingUser.userID))
                        continue;

                    try
                    {
                        fixed (byte* dataptr = PacketData)
                        {
                            UsersClient.GetConnection().SendData(dataptr, messageSize);
                        }
                    }
                    catch (Exception e) { Logging.HandleException(e, "Room.SendMessageToUsersWithRights"); }

                    //User.GetClient().SendMessage(Message);

                }
            }
            catch (Exception e) { Logging.HandleException(e, "Room.SendMessageToUsersWithRights"); }
            finally { Message.ReturnToOwner(); }
        }
Example #2
0
        internal unsafe void SendMessageWithoutReturning(ServerMessage Message)
        {
            if (Message == null)
                return;

            if (GetConnection() == null)
                return;

			fixed (byte* dataptr = Message.Bytes())
			{
				GetConnection().SendData(dataptr, Message.GetLength());
			}
        }
Example #3
0
		internal void BroadcastMessage(ServerMessage message)
		{
			if (onGlobalMessageBroadcast != null)
				onGlobalMessageBroadcast(message.Bytes(), message.GetLength());

			message.ReturnToOwner();
		}