Browse Source

排行榜bug修复

cyzhao 1 year ago
parent
commit
1fd9628356
1 changed files with 12 additions and 6 deletions
  1. 12 6
      Gameserver/App/process/FightProc.php

+ 12 - 6
Gameserver/App/process/FightProc.php

@@ -760,7 +760,7 @@ class FightProc {
         $isExistFinishReward = false;
         if ($type == 1) {
             $list = gMem()->zrevrange(MemKey_GameRun::Rank_MainGateIndex_Zone_zset(req()->zoneid), 0, glc()->Rank_MainGateIndex_OnListRank, true);
-            $selfExtraInfo = ctx()->gates->UnlockedGatesMaxId;
+            $selfExtraInfo = ctx()->gates->maxPassGateId();
 
             $memKey = MemKey_GameRun::RankReward_MainGateIndex_Zone_hash(req()->zoneid);
             $dic = gMem()->hgetall($memKey);
@@ -772,7 +772,7 @@ class FightProc {
             }
         } else {
             $list = gMem()->zrevrange(MemKey_GameRun::Rank_FightPower_Zone_zset(req()->zoneid), 0, glc()->Rank_FightPower_OnListRank, true);
-            $selfExtraInfo = 0; //战力还没有
+            $selfExtraInfo = self::countUserFightPower();
 
             $memKey = MemKey_GameRun::RankReward_FightPower_Zone_hash(req()->zoneid);
             $dic = gMem()->hgetall($memKey);
@@ -784,12 +784,12 @@ class FightProc {
             }
         }
 
-        $selfRank = self::initOtherUidRankInfo(req()->uid, $selfExtraInfo);
+        $selfRank = self::initOtherUidRankInfo(req()->uid, $selfExtraInfo,$type);
 
         $retArr = array();
         if (count($list) > 0) {
             foreach ($list as $uid => $score) {
-                $rankInfo = self::initOtherUidRankInfo($uid, $score);
+                $rankInfo = self::initOtherUidRankInfo($uid, $score,$type);
                 if ($rankInfo->uid == req()->uid) {
                     $selfIsHasRank = 1;
                     $selfRank = $rankInfo;
@@ -815,9 +815,15 @@ class FightProc {
      * @param type $score
      * @return \loyalsoft\Ins_rank
      */
-    static function initOtherUidRankInfo($uid, $score) {
+    static function initOtherUidRankInfo($uid, $score,$type = null) {
         $ins_rank = new Ins_rank();
-        $lv = gMem()->zrank(MemKey_GameRun::Rank_MainGateIndex_Zone_zset(req()->zoneid), $uid);
+                    
+        if($type == 1){
+            $lv = gMem()->zrank(MemKey_GameRun::Rank_MainGateIndex_Zone_zset(req()->zoneid), $uid);
+        } else {
+            $lv = gMem()->zrank(MemKey_GameRun::Rank_FightPower_Zone_zset(req()->zoneid), $uid);
+        }
+        
         if ($lv == null) {
             $lv = 0;
         }