41 lines
1020 B
C#
41 lines
1020 B
C#
/*
|
|
* @Author: 白哉
|
|
* @Description:
|
|
* @Date: 2025年09月18日 星期四 11:09:46
|
|
* @Modify:
|
|
*/
|
|
|
|
|
|
using System;
|
|
|
|
namespace TH1_Logic.Net
|
|
{
|
|
public class LobbyManager
|
|
{
|
|
public static LobbyManager Instance { get; } = new LobbyManager();
|
|
public ILobby Lobby;
|
|
|
|
|
|
public void Init()
|
|
{
|
|
#if STEAM_CHANNEL || STEAMWORKS_NET
|
|
Lobby = CreateSteamLobby() ?? new LobbyBase();
|
|
#else
|
|
Lobby = new LobbyBase();
|
|
#endif
|
|
Lobby.Init();
|
|
}
|
|
|
|
#if STEAM_CHANNEL || STEAMWORKS_NET
|
|
private static ILobby CreateSteamLobby()
|
|
{
|
|
var lobbyType = Type.GetType("TH1_Logic.Steam.SteamLobbyManager")
|
|
?? Type.GetType("TH1_Logic.Steam.SteamLobbyManager, TH1.Hotfix")
|
|
?? Type.GetType("TH1_Logic.Steam.SteamLobbyManager, TH1.Steam.Runtime");
|
|
if (lobbyType == null) return null;
|
|
return Activator.CreateInstance(lobbyType) as ILobby;
|
|
}
|
|
#endif
|
|
}
|
|
}
|