2026-02-03 11:35:19 +08:00
|
|
|
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
|
|
|
|
|
{
|
2026-02-13 19:23:01 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// 获取房间列表 room
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="msg"></param>
|
|
|
|
|
public static void GetRoomListChineseChessResult(string msg)
|
|
|
|
|
{
|
2026-03-09 09:25:01 +08:00
|
|
|
var var1 = UIManager.Instance.Show<UIChineseChessDistrict>(UIPanel.MainGamePanelZGXQ, msg);
|
2026-02-13 19:23:01 +08:00
|
|
|
}
|
2026-02-26 11:05:56 +08:00
|
|
|
public static void GetGoldConfigSuccessChineseChessResult(string msg)
|
|
|
|
|
{
|
|
|
|
|
UIManager.Instance.Get<ChineseChessMainPanel>(UIPanel.MainGamePanelZGXQ).subUIManager.ShowAsync(UIPanel.ZGXQGameExplain);
|
|
|
|
|
}
|
2026-03-09 09:25:01 +08:00
|
|
|
|
2026-02-03 11:35:19 +08:00
|
|
|
/// <summary>
|
|
|
|
|
/// 获取房间列表 room
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="msg"></param>
|
|
|
|
|
public static void GetRoomListResult(string msg)
|
|
|
|
|
{
|
|
|
|
|
var var1 = UIManager.Instance.Get<UIHomeMain>(UIPanel.HomeMainPanel);
|
2026-03-09 09:25:01 +08:00
|
|
|
|
|
|
|
|
var selectRoomPanel = var1.subUIManager.Get<UIHome_BY_SelectRoomLevelPanel>(UIPanel.SelectRoomPenel);
|
|
|
|
|
if (selectRoomPanel != null && selectRoomPanel.isMySelectRoom)
|
|
|
|
|
selectRoomPanel.panel_UIHome_BY_MySelectRoomPenel.Show(msg);
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
var v = JsonConvert.DeserializeObject<WebSocketResponseBase<List<GetRoomList>>>(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);
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2026-02-03 11:35:19 +08:00
|
|
|
}
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 加入房间 room
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="msg"></param>
|
|
|
|
|
public static void RoomJoinNotice(string msg)
|
|
|
|
|
{
|
2026-03-09 09:25:01 +08:00
|
|
|
string sceneName = "";
|
2026-02-03 11:35:19 +08:00
|
|
|
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";
|
2026-03-09 09:25:01 +08:00
|
|
|
uIPanel = UIPanel.MainGamePanelXJMH;
|
2026-02-03 11:35:19 +08:00
|
|
|
break;
|
|
|
|
|
case GameType.HHWK:
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
2026-03-09 09:25:01 +08:00
|
|
|
|
|
|
|
|
UIManager.Instance.ShowAsync(uIPanel, UIPanel.HomeMainPanel, msg);
|
2026-02-03 11:35:19 +08:00
|
|
|
//这里
|
2026-03-09 09:25:01 +08:00
|
|
|
var v = SceneManager.GetSceneByName("XJMH");
|
|
|
|
|
if (v.IsValid() && v.isLoaded)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Additive);
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-03 11:35:19 +08:00
|
|
|
UIManager.Instance.Close(UIPanel.HomeMainPanel);
|
2026-03-09 09:25:01 +08:00
|
|
|
|
|
|
|
|
|
2026-02-03 11:35:19 +08:00
|
|
|
}
|
|
|
|
|
/// <summary>
|
2026-03-09 09:25:01 +08:00
|
|
|
/// 房间列表 room
|
2026-02-03 11:35:19 +08:00
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="msg"></param>
|
|
|
|
|
public static void RoomInfo(string msg)
|
|
|
|
|
{
|
|
|
|
|
var roomData = JsonConvert.DeserializeObject<WebSocketResponseBase<RoomChangeResponse>>(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);
|
|
|
|
|
}
|
2026-02-09 10:44:38 +08:00
|
|
|
public static void SyncPlayerGold(string msg)
|
|
|
|
|
{
|
|
|
|
|
UIManager.Instance.Get<GameMainPanel_XJMH>(UIPanel.MainGamePanelXJMH).currSitData.goldNum = int.Parse(msg);
|
|
|
|
|
}
|
2026-03-09 09:25:01 +08:00
|
|
|
public static void GetRoomInfoResult(string msg)
|
|
|
|
|
{
|
|
|
|
|
//GameManager.Instance.StartGame();RoomChangeResponse
|
|
|
|
|
var roomData = JsonConvert.DeserializeObject<WebSocketResponseBase<RoomChangeResponse>>(msg).arguments[0];
|
|
|
|
|
UIHome_BY_SelectRoomLevelPanel.StartGame(roomData);
|
|
|
|
|
}
|
|
|
|
|
public static void SyncGameDataResult(string msg)
|
|
|
|
|
{
|
|
|
|
|
var syncGameData = JsonConvert.DeserializeObject<WebSocketResponseBase<SyncGameData>>(msg).arguments[0];
|
|
|
|
|
switch (syncGameData.frameType)
|
|
|
|
|
{
|
|
|
|
|
case FrameDataType.none:
|
|
|
|
|
break;
|
|
|
|
|
case FrameDataType.rotateTurrect:
|
|
|
|
|
EventCenter.Instance.EventTrigger<SyncGameData>(ConstEventString.SyncGameData_Rotate, syncGameData);
|
|
|
|
|
break;
|
|
|
|
|
case FrameDataType.fireBullet:
|
|
|
|
|
EventCenter.Instance.EventTrigger<SyncGameData>(ConstEventString.SyncGameData_FireBullet, syncGameData);
|
|
|
|
|
break;
|
|
|
|
|
case FrameDataType.createFish:
|
|
|
|
|
EventCenter.Instance.EventTrigger<SyncGameData>(ConstEventString.SyncGameData_CreateFish, syncGameData);
|
|
|
|
|
break;
|
|
|
|
|
case FrameDataType.changeAutoTarget:
|
|
|
|
|
EventCenter.Instance.EventTrigger<SyncGameData>(ConstEventString.SyncGameData_ChangeTargetMonster, syncGameData);
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
2026-02-03 11:35:19 +08:00
|
|
|
|
2026-03-09 09:25:01 +08:00
|
|
|
|
|
|
|
|
}
|
|
|
|
|
public static void LeaveRoomResult(string msg)
|
|
|
|
|
{
|
|
|
|
|
//GameManager.Instance.StartGame();RoomChangeResponse
|
|
|
|
|
var roomData = JsonConvert.DeserializeObject<WebSocketResponseBase<RoomLeaveNotice>>(msg).arguments[0];
|
|
|
|
|
if (roomData.userId == GameManager.Instance.user.id)
|
|
|
|
|
{
|
|
|
|
|
WebSocketManager.Instance.Close(SocketType.game);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2026-02-03 11:35:19 +08:00
|
|
|
}
|
|
|
|
|
}
|