using Assets.MyGame.Scripts.Net.WebResponses; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using UnityEngine; using UnityEngine.SceneManagement; namespace Assets.MyGame.Scripts.Net { public class WebSocketReponseList { /// /// 获取房间列表 room /// /// public static void GetRoomListChineseChessResult(string msg) { var var1 = UIManager.Instance.Show(UIPanel.MainGamePanelZGXQ, msg); } public static void GetGoldConfigSuccessChineseChessResult(string msg) { UIManager.Instance.Get(UIPanel.MainGamePanelZGXQ).subUIManager.ShowAsync(UIPanel.ZGXQGameExplain); } /// /// 获取房间列表 room /// /// public static void GetRoomListResult(string msg) { var var1 = UIManager.Instance.Get(UIPanel.HomeMainPanel); var selectRoomPanel = var1.subUIManager.Get(UIPanel.SelectRoomPenel); if (selectRoomPanel != null && selectRoomPanel.isMySelectRoom) selectRoomPanel.panel_UIHome_BY_MySelectRoomPenel.Show(msg); else { var v = JsonConvert.DeserializeObject>>(msg).arguments[0]; foreach (var item in v) { if (item.currentOnlinePlayerCount < item.maxPlayerCount) { WebSocketSendList.GetRoomInfo(item.roomId); break; //if (item) //{ //UIHome_BY_SelectRoomLevelPanel.StartGame(item); //} } } } } /// /// 加入房间 room /// /// public static void RoomJoinNotice(string msg) { string sceneName = ""; UIPanel uIPanel = UIPanel.None; switch (GameManager.Instance.gameData.currGameType) { case GameType.JQQD: break; case GameType.defaultPanel: break; case GameType.FXZY: break; case GameType.TGXX: break; case GameType.ZGXQ: break; case GameType.XJMH: sceneName = "XJMH"; uIPanel = UIPanel.MainGamePanelXJMH; break; case GameType.HHWK: break; default: break; } UIManager.Instance.ShowAsync(uIPanel, UIPanel.HomeMainPanel, msg); //这里 var v = SceneManager.GetSceneByName("XJMH"); if (v.IsValid() && v.isLoaded) { } else { SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Additive); } UIManager.Instance.Close(UIPanel.HomeMainPanel); } /// /// 房间列表 room /// /// public static void RoomInfo(string msg) { var roomData = JsonConvert.DeserializeObject>(msg).arguments[0]; if (roomData != null) { GameManager.Instance.gameData.currRoomData = roomData; } else { Debug.LogError("roomdata是空:" + msg); } } public static void RoomKillNotice(string msg) { CreateFishManager.Instance.DesFish(msg); } public static void SyncPlayerGold(string msg) { UIManager.Instance.Get(UIPanel.MainGamePanelXJMH).currSitData.goldNum = int.Parse(msg); } public static void GetRoomInfoResult(string msg) { //GameManager.Instance.StartGame();RoomChangeResponse var roomData = JsonConvert.DeserializeObject>(msg).arguments[0]; UIHome_BY_SelectRoomLevelPanel.StartGame(roomData); } public static void SyncGameDataResult(string msg) { var syncGameData = JsonConvert.DeserializeObject>(msg).arguments[0]; switch (syncGameData.frameType) { case FrameDataType.none: break; case FrameDataType.rotateTurrect: EventCenter.Instance.EventTrigger(ConstEventString.SyncGameData_Rotate, syncGameData); break; case FrameDataType.fireBullet: EventCenter.Instance.EventTrigger(ConstEventString.SyncGameData_FireBullet, syncGameData); break; case FrameDataType.createFish: EventCenter.Instance.EventTrigger(ConstEventString.SyncGameData_CreateFish, syncGameData); break; case FrameDataType.changeAutoTarget: EventCenter.Instance.EventTrigger(ConstEventString.SyncGameData_ChangeTargetMonster, syncGameData); break; default: break; } } public static void LeaveRoomResult(string msg) { //GameManager.Instance.StartGame();RoomChangeResponse var roomData = JsonConvert.DeserializeObject>(msg).arguments[0]; if (roomData.userId == GameManager.Instance.user.id) { WebSocketManager.Instance.Close(SocketType.game); } } } }