MatchMakeManager 

    Namespace: SynicSugar.MatchMake

    This is used like MatchMakeManager.Instance.XXX().

    Description 

    This script is Mono's Singleton attached to NetworkManager. To generate NetworkManager, right-click on the Hierarchy and click SynicSugar/NetworkManager.
    NetworkManager has DontDestroy, so NetworkManager will not be destroyed by scene transitions. This is used for re-connection, and also needed for p2p scene.

    If this is no longer needed, we call CancelCurrentMatchMake, ExitSession and CloseSession.

    Properity 

    APIdescription
    IsMatchmakingWhether the user is in matchmaking
    maxSearchResultThe amount of search results
    timeoutSecTimeout seconds for user to exit no-filled lobby
    p2pSetupTimeoutSecTimeout sec for prep init connection
    enableHostmigrationInMatchmakingIf true, pass host authority to others when local user leave the lobby
    BasicInfoPacketCompressionLevelThe quality level of BrotliCompressor for compressing the BasicInfo
    sessionTimestampFileNameThe file name to save the session start time
    lobbyIdSaveTypeThe way to return to the disconnected lobby
    playerprefsSaveKeyThe key to save LobbyID
    customSaveLobbyIDUnityEvent to save LobbyID
    customDeleteLobbyIDUnityEvent to delete LobbyID
    lobbyIDMethodActions to recconect Lobby
    asyncLobbyIDMethodFunc<UniTask> to recconect Lobby
    MatchMakingGUIEventsTo manage GUI in matchmaking
    MemberUpdatedNotifierNotify when a user attributes is updated
    isLookingThis local user is waiting for opponents?
    isConcludingThis local user is preparing for p2p connection?
    timeUntilTimeoutSec until stopping the process to wait for opponents
    isHostWhether this local user is the owner of current Lobby

    Function 

    APIdescription
    SetTimeoutSecSet timeout of matchmake and prep conenction
    SearchAndCreateLobbySearch lobby and, if can't join, create lobby
    SearchLobbySearch lobby and join it as Guest
    CreateLobbyCreate lobby as Host and wait for Guest
    ConcludeMatchMakeHost finishes a matchmaking by hand
    ReconnectLobbyJoin the Lobby with saved LobbyID
    ExitCurrentMatchMakeStop the current matchmaking
    CloseCurrentMatchMake(Host) destroys lobby to stop the matchmaking
    KickTargetFromLobby(Host) kicks target from Lobby
    CreateOfflineLobbyCreate fake-lobby as Host for tutorial
    GetCurrentLobbyIDGet LobbyID that a user participating
    GetReconnectLobbyIDGet LobbyID by Playerprefs
    GetCurrentLobbyMemberCountGet the current member count in Lobby
    GetMaxLobbyMemberCountGet the current lobby's member limit
    GenerateLobbyObjectGenerate a lobby object for conditions
    GetTargetAttributeDataGet attribute(s) of a member
    isLocalUserIdWhether the argument is the id of local user or not
    using SynicSugar.MatchMake;
    
    public class MatchMake {
        void SetMatchMakeCondition(){
            string LobbyID = MatchMakeManager.Instance.GetReconnectLobbyID();
        }
    }