using System; using System.Collections; using System.Collections.Generic; using AX.Network.Protocols; using UnityEngine; using AX.Serialization; using AX.NetworkSystem; using UnityEngine.SceneManagement; public class LOBBY_LEAVE_SYNC : NetworkMessageBehaviour { protected override void Execute(BinaryMessage message) { var info = message.Body.Deserialize(); if (info.UserData.UserInfo.Id == CurrentUserInfo.mySelf.Id) { if (info.TargetScene == GoTo.DongYouLiQing) {//离开大厅,进入房间 Lobby.userList.Remove(Lobby.GetUserDataById(info.UserData.UserInfo.Id)); SceneManager.LoadScene(info.TargetScene.ToString()); } else if (info.TargetScene == GoTo.Login) {//从大厅返回登陆 NetworkManager.Default.SendAsync("LOGOUT_SYNC", info.UserData); } else {//从大厅返回角色选择或主菜单 CurrentUserInfo.role = Role.None; SceneManager.LoadScene(info.TargetScene.ToString()); } } else { Lobby.userList.Remove(Lobby.GetUserDataById(info.UserData.UserInfo.Id)); } } }