LeaveScene() private method

private LeaveScene ( User user ) : void
user User
return void
Ejemplo n.º 1
0
        public void RemoveUser(User user, bool free)
        {
            if (user == null)
            {
                return;
            }
            Msg_RL_UserQuit quitBuilder = new Msg_RL_UserQuit();

            quitBuilder.UserGuid = user.Guid;
            quitBuilder.RoomId   = RoomId;
            m_Connector.SendMsgToLobby(quitBuilder);

            foreach (User otheruser in m_RoomUsers)
            {
                if (null != otheruser && otheruser != user)
                {
                    otheruser.RemoveSameRoomUser(user);
                }
            }
            user.ClearSameRoomUser();
            if (null != m_ActiveScene)
            {
                Scene scene = m_ActiveScene;
                scene.LeaveScene(user);
            }

            LogSys.Log(LOG_TYPE.INFO, "FreeUser {0} for {1} {2}, [Room.RemoveUser]", user.LocalID, user.Guid, user.GetKey());
            m_RoomUsers.Remove(user);
            if (free)
            {
                m_UserPool.FreeUser(user.LocalID);
            }
        }
Ejemplo n.º 2
0
 public void RemoveUser(User user, bool free)
 {
     if (user == null)
     {
         return;
     }
     foreach (User otheruser in m_RoomUsers)
     {
         if (null != otheruser && otheruser != user)
         {
             otheruser.RemoveSameRoomUser(user);
         }
     }
     user.ClearSameRoomUser();
     if (null != m_ActiveScene)
     {
         Scene scene = m_ActiveScene;
         scene.LeaveScene(user);
     }
     LogSys.Log(LOG_TYPE.INFO, "FreeUser {0} for {1} {2}, [Room.RemoveUser]", user.LocalID, user.Guid, user.GetKey());
     m_RoomUsers.Remove(user);
     if (free)
     {
         m_UserPool.FreeUser(user.LocalID);
     }
 }