| | |
| | | oneVsOnePlayerData = new CrossServerOneVsOne() |
| | | { |
| | | roomId = matchOK.RoomID, |
| | | alreadyLogin = false, |
| | | waitForLoginCrossServer = true, |
| | | validTimeLimited = Time.time + 30f, |
| | | autoEnsureTime = Time.time + 5f, |
| | | myName = matchOK.PlayerName, |
| | |
| | | |
| | | Clock.Create(DateTime.Now + new TimeSpan(5 * TimeSpan.TicksPerSecond), () => |
| | | { |
| | | if (!oneVsOnePlayerData.alreadyLogin) |
| | | if (oneVsOnePlayerData.waitForLoginCrossServer) |
| | | { |
| | | CrossServerOneVsOneLogin(); |
| | | } |
| | |
| | | var port = GameNetSystem.Instance.crossServerData.port; |
| | | |
| | | WindowCenter.Instance.Open<LoadingWin>(); |
| | | oneVsOnePlayerData = oneVsOnePlayerData.SetLoginState(true); |
| | | oneVsOnePlayerData = oneVsOnePlayerData.SetWaitForLoginCrossServer(false); |
| | | AccountLogin(account, ip, port); |
| | | } |
| | | |
| | |
| | | public struct CrossServerOneVsOne |
| | | { |
| | | public int roomId; |
| | | public bool alreadyLogin; |
| | | public bool waitForLoginCrossServer; |
| | | public float autoEnsureTime; |
| | | public float validTimeLimited; |
| | | public string myName; |
| | |
| | | public int opponentLevel; |
| | | public int opponentMaxHp; |
| | | |
| | | public CrossServerOneVsOne SetLoginState(bool alreadyLogin) |
| | | public CrossServerOneVsOne SetWaitForLoginCrossServer(bool waitForLoginCrossServer) |
| | | { |
| | | this.alreadyLogin = alreadyLogin; |
| | | this.waitForLoginCrossServer = waitForLoginCrossServer; |
| | | return this; |
| | | } |
| | | |