/// <summary> /// 初始化监听器。 /// 该方法为静态方法。初始化 Listener 时需要传入 gameInfo 和 config 两个参数。 /// 初始化结果在 callback 中异步返回,错误码为 0 表示初始化成功。 /// </summary> /// <param name="gameInfo"> 游戏信息 </param> /// <param name="config"> 游戏配置 </param> /// <param name="callback"> 初始化回调函数 </param> public static void Init(GameInfoPara gameInfo, ConfigPara config, Action <ResponseEvent> callback) { Sdk.Instance = new Sdk(gameInfo, config); Sdk.Instance.Init(callback); // 绑定全局广播 Sdk.Instance.BindResponse(GlobalRoomBroadcast.Instance); }
// public SDKType.RoomInfo roomInfo; public Sdk(GameInfoPara gameInfo, ConfigPara config) { var task = Task.Run(() => SdkUtil.UploadMgobeUserInfo(gameInfo.GameId)); if (Instance != null) { return; } Instance = this; // 合并游戏信息 GameInfo.Assign(gameInfo); Config.Assign(config); RequestHeader.GameId = gameInfo.GameId; }
// Start is called before the first frame update public static void Login(string name) { var gameInfo = new GameInfoPara { // 替换 为控制台上的“游戏ID” GameId = "obg-gb9uj4hq", // 玩家 openId OpenId = name, //替换 为控制台上的“游戏Key” SecretKey = "50635494ab9c1a40074f1ccf66c260f5d072b831" }; var config = new ConfigPara { // 替换 为控制台上的“域名” Url = "gb9uj4hq.wxlagame.com", ReconnectMaxTimes = 5, ReconnectInterval = 1000, ResendInterval = 1000, ResendTimeout = 10000, IsAutoRequestFrame = true, }; // 初始化监听器 Listener Listener.Init(gameInfo, config, (ResponseEvent eve) => { if (eve.Code == 0) { EventManager.Invoke(EventType.OnLogin, new BaseEventArgs() { Code = 0, Message = "初始化成功" }); openId = name; } else { Debug.LogFormat("初始化失败: {0}", eve.Code); EventManager.Invoke(EventType.OnLogin, new BaseEventArgs() { Code = -1, Message = "初始化失败" }); } // 初始化广播回调事件 }); }
public void InitNetWork(string userId) { InitGlobal(userId); GameInfoPara gameInfo = new GameInfoPara { GameId = Global.GameId, OpenId = Global.OpenId, SecretKey = Global.SecretKey, }; ConfigPara config = new ConfigPara { Url = Global.Server, ReconnectMaxTimes = 5, ReconnectInterval = 1000, ResendInterval = 1000, ResendTimeout = 10000 }; Listener.Init(gameInfo, config, OnListenerInit); }
public static void Assign(GameInfoPara gameInfo) { OpenId = gameInfo.OpenId; GameId = gameInfo.GameId; SecretKey = gameInfo.SecretKey; }