From ad3f66509d2e61d8dc6630558153b71b774df20c Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 21 二月 2025 01:40:56 +0800
Subject: [PATCH] 0312 10349 【越南】【英文】【BT】【砍树】跨服竞技场优化 - 第一版

---
 System/CrossServerOneVsOneClient/ClientCrossServerOneVsOne.cs |   41 +++++++++++++++++++----------------------
 1 files changed, 19 insertions(+), 22 deletions(-)

diff --git a/System/CrossServerOneVsOneClient/ClientCrossServerOneVsOne.cs b/System/CrossServerOneVsOneClient/ClientCrossServerOneVsOne.cs
index 3b8b074..61782f0 100644
--- a/System/CrossServerOneVsOneClient/ClientCrossServerOneVsOne.cs
+++ b/System/CrossServerOneVsOneClient/ClientCrossServerOneVsOne.cs
@@ -24,19 +24,18 @@
         {
             if (m_Obstacles == null)
             {
-                var configString = FuncConfigConfig.Get("CrossRealmPKFB").Numerical2;
-                var matches = Regex.Matches(configString, "\\[[0-9]{1,3},[0-9]{1,3},[0-9]{1,3},[0-9]{1,3},[0-9]{1,3}\\]");
-                m_Obstacles = new FightObstacle[matches.Count];
-                for (var i = 0; i < matches.Count; i++)
+                var configString = FuncConfigConfig.Get("CrossRealmPKFB").Numerical1;
+                var matches = JsonMapper.ToObject<int[][]>(configString);
+                m_Obstacles = new FightObstacle[matches.Length];
+                for (var i = 0; i < matches.Length; i++)
                 {
-                    var subMatches = Regex.Matches(matches[i].Value, "[0-9]{1,3}");
                     m_Obstacles[i] = new FightObstacle()
                     {
-                        aPosX = subMatches.Count > 0 ? int.Parse(subMatches[0].Value) : 0,
-                        aPosY = subMatches.Count > 1 ? int.Parse(subMatches[1].Value) : 0,
-                        bPosX = subMatches.Count > 2 ? int.Parse(subMatches[2].Value) : 0,
-                        bPosY = subMatches.Count > 3 ? int.Parse(subMatches[3].Value) : 0,
-                        angle = subMatches.Count > 4 ? int.Parse(subMatches[4].Value) : 0,
+                        aPosX = matches[i][0],
+                        aPosY = matches[i][1],
+                        bPosX = matches[i][2],
+                        bPosY = matches[i][3],
+                        angle = matches[i][4],
                     };
                 }
             }
@@ -131,6 +130,7 @@
         return playerInfo;
     }
 
+    //鏀逛负鐩存帴鎸戞垬鏈哄櫒浜�
     public static void JiaMatchOk()
     {
         var teamModel = ModelCenter.Instance.GetModel<TeamModel>();
@@ -140,11 +140,11 @@
         }
 
         var package = new HC001_tagGCCrossRealmPKMatchOK();
-        package.RoomID = 1000;
+        //package.RoomID = 1000;
         var serverName = ServerListCenter.Instance.currentServer.name;
         var playerName = PlayerDatas.Instance.baseData.PlayerName;
-        package.PlayerName = StringUtility.Contact("[", serverName.Replace("@gm", ""), "]", playerName);
-        package.Number = (byte)UnityEngine.Random.Range(1, 3);
+        //package.PlayerName = StringUtility.Contact("[", serverName.Replace("@gm", ""), "]", playerName);
+        //package.Number = (byte)UnityEngine.Random.Range(1, 3);
 
         var opponent = new HC001_tagGCCrossRealmPKMatchOK.tagGCCrossRealmPKMatchPlayer();
         opponent.Job = (byte)UnityEngine.Random.Range(1, 3);
@@ -153,17 +153,15 @@
 
         var exceptedLevel = PlayerDatas.Instance.baseData.LV - UnityEngine.Random.Range(1, 5);
         opponent.LV = (ushort)(Mathf.Clamp(exceptedLevel, FuncOpenLVConfig.Get(157).LimitLV, 999));
-        opponent.MaxProDef = 100;
-        var maxHP = (ulong)(PlayerDatas.Instance.extersion.MaxHP * UnityEngine.Random.Range(0.7f, 0.95f));
-        opponent.MaxHP = (uint)(maxHP % Constants.ExpPointValue);
-        opponent.MaxHPEx = (uint)(maxHP / Constants.ExpPointValue);
+        //opponent.MaxProDef = 100;
+        //var maxHP = (ulong)(PlayerDatas.Instance.extersion.MaxHP * UnityEngine.Random.Range(0.7f, 0.95f));
+        //opponent.MaxHP = (uint)(maxHP % Constants.ExpPointValue);
+        //opponent.MaxHPEx = (uint)(maxHP / Constants.ExpPointValue);
         package.MatchPlayer = new HC001_tagGCCrossRealmPKMatchOK.tagGCCrossRealmPKMatchPlayer[] { opponent };
 
-        myPlace = package.Number;
+        //myPlace = package.Number;
         opponentName = opponent.PlayerName;
-        CrossServerLogin.Instance.UpdateCrossServerOneVsOneData(package, true);
-        WindowCenter.Instance.Open<CrossServerOneVsOneEnterConfirmWin>();
-        ModelCenter.Instance.GetModel<CrossServerOneVsOneModel>().IsMatching = false;
+        StartClientCrossServerOneVsOne();
     }
 
     public static void StartClientCrossServerOneVsOne()
@@ -175,7 +173,6 @@
         ClientDungeonStageUtility.SetClientDungeon(true, mapId);
         var sendInfo = new CA231_tagCMClientStartCustomScene();
         GameNetSystem.Instance.SendInfo(sendInfo);
-        CrossServerLogin.Instance.SetWaitForLoginCrossServerState(false);
         StageLoad.Instance.PushSceneLoadCommand(new StageLoad.StageLoadCommand()
         {
             toMapId = mapId,

--
Gitblit v1.8.0