Explorar el Código

竞技场改判胜标准

zhaoyang hace 2 años
padre
commit
8dc7b394a9

+ 4 - 4
GameClient/Assets/Game/HotUpdate/Data/ArenaDataManager.cs

@@ -35,8 +35,8 @@ namespace GFGGame
         public int CurFightIndex = 0;//当前挑战场次下标
         public List<long> myScore = new List<long>();//对战数据,三轮分数
         public List<long> targetScore = new List<long>();//对战数据,三轮分数
-        public List<long> myFightScore = new List<long>();//对战数据,竞技场战力,搭配战力,卓越点击战力,卡牌战力
-        public List<long> targetFightScore = new List<long>();//对战数据,对手竞技场战力,搭配战力,卓越点击战力,卡牌战力
+        public List<long> myFightPower = new List<long>();//对战数据,竞技场战力,搭配战力,卓越点击战力,卡牌战力
+        public List<long> targetFightPower = new List<long>();//对战数据,对手竞技场战力,搭配战力,卓越点击战力,卡牌战力
 
         /*************************************************************************************************************************************/
 
@@ -74,8 +74,8 @@ namespace GFGGame
             // TextureDic.Clear();
             myScore.Clear();
             targetScore.Clear();
-            myFightScore.Clear();
-            targetFightScore.Clear();
+            myFightPower.Clear();
+            targetFightPower.Clear();
             roundTime.Clear();
             targetRoundTime.Clear();
             // LastTargetInfo = null;

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Data/ArenaViewManager.cs

@@ -116,7 +116,7 @@ namespace GFGGame
             com.m_txtTargetFightScore.text = targetAllScore.ToString();
             UI_ComAllScore.ProxyEnd();
 
-            bool isWin = winCount >= 2;
+            bool isWin = myAllScore > targetAllScore;
             return isWin;
         }
         /// <summary>

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Data/VO/ArenaData.cs

@@ -9,7 +9,7 @@ namespace GFGGame
         public int Type; //类型,由FightTargetType定义
         public OtherRoleInfoData RoleInfo = new OtherRoleInfoData(); //玩家数据
         public List<FightData> FightDatas = new List<FightData>();//搭配列表,与RobotDressupList只能存在一个,取决于Type
-        public List<long> FightScores = new List<long>();//搭配战力,卓越点击战力,卡牌战力
+        public List<long> FightPower = new List<long>();//搭配战力,卓越点击战力,卡牌战力
 
     }
 
@@ -24,7 +24,7 @@ namespace GFGGame
         public ArenaTargetData targetData;
         public List<long> MyScores = new List<long>();//自己3轮战斗分数
         public List<long> TargetScores = new List<long>();//对手3轮战斗分数
-        public List<long> FightScores = new List<long>();//自己 搭配战力,卓越点击战力,卡牌战力,对方的在targetData里
+        public List<long> FightPower = new List<long>();//自己 搭配战力,卓越点击战力,卡牌战力,对方的在targetData里
 
     }
 }

+ 2 - 2
GameClient/Assets/Game/HotUpdate/ServerProxy/ArenaSproxy.cs

@@ -351,7 +351,7 @@ namespace GFGGame
             arenaHistory.Grade = arenaHistoryProto.Grade;
             arenaHistory.Rank = arenaHistoryProto.Rank;
             arenaHistory.targetData = GetArenaTargetData(arenaHistoryProto.target);
-            arenaHistory.FightScores = arenaHistoryProto.SelfFightPower;
+            arenaHistory.FightPower = arenaHistoryProto.SelfFightPower;
             arenaHistory.GradeChangeType = arenaHistoryProto.GradeChangeType;
             arenaHistory.MyScores = arenaHistoryProto.SelfRandScore;
             arenaHistory.TargetScores = arenaHistoryProto.TargetRandScore;
@@ -365,7 +365,7 @@ namespace GFGGame
             arenaTarget.Grade = arenaTargetProto.Grade;
             arenaTarget.RankInGrade = arenaTargetProto.RankInGrade;
             arenaTarget.Type = arenaTargetProto.Type;
-            arenaTarget.FightScores = arenaTargetProto.FightPower;
+            arenaTarget.FightPower = arenaTargetProto.FightPower;
             if (arenaTarget.Type == FightTargetType.PLAYER)
             {
                 arenaTarget.RoleInfo = RoleDataManager.GetOtherRoleInfoData(arenaTargetProto.RoleInfo);

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaFightRecordView.cs

@@ -63,7 +63,7 @@ namespace GFGGame
             item.m_txtTargetName.text = historyData.targetData.RoleInfo.roleName;
             item.m_txtRank.text = historyData.targetData.RankInGrade.ToString();
 
-            item.m_txtTargetFightScore.text = string.Format("飞花令战力:{0}", ArenaDataManager.Instance.GetAllFightScore(historyData.targetData.FightScores));
+            item.m_txtTargetFightScore.text = string.Format("飞花令战力:{0}", ArenaDataManager.Instance.GetAllFightScore(historyData.targetData.FightPower));
             ArenaViewManager.Instance.UpdateDanIcon(item.m_loaDanIcon, historyData.targetData.Grade);
             TimeUtil.FormattingTime(historyData.FightTime, TimeHelper.ServerNow(), out int num, out string str);
             str = str == "秒" ? "刚刚" : num + str + "前";

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaRankView.cs

@@ -242,7 +242,7 @@ namespace GFGGame
                 if (arenaData.Type == FightTargetType.PLAYER)
                 {
                     //上榜的玩家一定战斗过,可以直接计算
-                    item.m_txtFightScore.text = string.Format("飞花令战力:{0}", ArenaDataManager.Instance.GetAllFightScore(arenaData.FightScores));
+                    item.m_txtFightScore.text = string.Format("飞花令战力:{0}", ArenaDataManager.Instance.GetAllFightScore(arenaData.FightPower));
                     RoleInfoManager.Instance.UpdateHead(item.m_comHead, arenaData.RoleInfo.headId, arenaData.RoleInfo.headBorderId);
                 }
                 else
@@ -300,7 +300,7 @@ namespace GFGGame
                 RoleInfoManager.Instance.UpdateLv(item.m_comLv, arenaData.RoleInfo.roleLv);
                 if (arenaData.Type == FightTargetType.PLAYER)
                 {
-                    long fightScore = _rankType != ArenaRankType.LAST_SEASON && rank > 100 && isSelf ? ArenaDataManager.Instance.GetAllFightScore(ArenaDataManager.Instance.DressupList) : ArenaDataManager.Instance.GetAllFightScore(arenaData.FightScores);
+                    long fightScore = _rankType != ArenaRankType.LAST_SEASON && rank > 100 && isSelf ? ArenaDataManager.Instance.GetAllFightScore(ArenaDataManager.Instance.DressupList) : ArenaDataManager.Instance.GetAllFightScore(arenaData.FightPower);
                     //上榜的玩家一定战斗过,可以直接计算
                     item.m_txtFightScore.text = string.Format("飞花令战力:{0}", fightScore);
                     RoleInfoManager.Instance.UpdateHead(item.m_comHead, arenaData.RoleInfo.headId, arenaData.RoleInfo.headBorderId);

+ 12 - 15
GameClient/Assets/Game/HotUpdate/Views/Arena/ArenaView.cs

@@ -99,8 +99,8 @@ namespace GFGGame
                 _dataManager.CurFightIndex = 0;
                 _dataManager.myScore.Clear();
                 _dataManager.targetScore.Clear();
-                _dataManager.myFightScore.Clear();
-                _dataManager.targetFightScore.Clear();
+                _dataManager.myFightPower.Clear();
+                _dataManager.targetFightPower.Clear();
 
                 UpdateTargetList();
             }
@@ -269,34 +269,31 @@ namespace GFGGame
         {
             _dataManager.myScore.Clear();
             _dataManager.targetScore.Clear();
-            _dataManager.myFightScore.Clear();
-            _dataManager.targetFightScore.Clear();
+            _dataManager.myFightPower.Clear();
+            _dataManager.targetFightPower.Clear();
 
-            int winCount = 0;
             if (_targetData.Type == FightTargetType.PLAYER)
             {
                 await ArenaSproxy.ReqArenaFightAttr(_targetData.RoleInfo.roleId, _targetData.FightDatas);
             }
+            long allScore = 0;
+            long targetAllScore = 0;
             for (int i = 0; i < _dataManager.ThemeList.Count; i++)
             {
-                long score = 0;
-                long targetScore = 0;
-
-
-                FightDataManager.Instance.GetQuickFightResult(i, _dataManager.DressupList[i], _targetData.FightDatas[i], out score, out targetScore);
+                FightDataManager.Instance.GetQuickFightResult(i, _dataManager.DressupList[i], _targetData.FightDatas[i], out long score, out long targetScore);
 
+                allScore += score;
+                targetAllScore += targetScore;
                 _dataManager.myScore.Add(score);
                 _dataManager.targetScore.Add(targetScore);
-                if (score > targetScore) winCount++;
             }
 
-            _dataManager.myFightScore = _dataManager.GetFightScoreList(_dataManager.DressupList);
-            _dataManager.targetFightScore = _dataManager.GetFightScoreList(_targetData.FightDatas);
-            bool result = await ArenaSproxy.ReqArenaFight(winCount >= 2, _targetData, _dataManager.myFightScore, _dataManager.targetFightScore, _dataManager.myScore, _dataManager.targetScore);
+            _dataManager.myFightPower = _dataManager.GetFightScoreList(_dataManager.DressupList);
+            _dataManager.targetFightPower = _dataManager.GetFightScoreList(_targetData.FightDatas);
+            bool result = await ArenaSproxy.ReqArenaFight(allScore > targetAllScore, _targetData, _dataManager.myFightPower, _dataManager.targetFightPower, _dataManager.myScore, _dataManager.targetScore);
 
             if (GuideDataManager.IsGuideFinish(ConstGuideId.ARENA_OPEN) <= 0 && _showOtherTargetGuide < 0)
             {
-
                 _showOtherTargetGuide = result ? 1 : 0;
             }
             return result;