Beispiel #1
0
        /// <summary>
        /// Handles a received PipeMessage
        /// </summary>
        /// <param name="thePipeMessage">The received PipeMessage</param>
        public override void HandleMessage(PipeMessage thePipeMessage)
        {
            switch (thePipeMessage)
            {
            case PipeMessageUserList aPipeMessageUserList:
                SetList(aPipeMessageUserList.UserList);
                break;

            case PipeMessageUserEntersWorld aPipeMessageUserEnters:
                ChatWindow.PrintMessage(string.Format("[{0} Connected]", aPipeMessageUserEnters.User.Name));
                AddUser(aPipeMessageUserEnters.User);
                break;

            case PipeMessageUserDisconnection aPipeMessageDisconnection:
                ChatWindow.PrintMessage(string.Format("[{0} Disconnected]", aPipeMessageDisconnection.Name));
                RemoveUser(new User(aPipeMessageDisconnection.ID, aPipeMessageDisconnection.Name));
                break;

            case PipeMessageUserRenamed aPipeMessageUserRenamed:
                RenameUser(new User(aPipeMessageUserRenamed.ID, aPipeMessageUserRenamed.NewName));
                break;
            }
        }