Sfoglia il codice sorgente

排行帮数据在赛季结束的时候清理

cyzhao 3 mesi fa
parent
commit
cddfbf2400
2 ha cambiato i file con 16 aggiunte e 9 eliminazioni
  1. 5 0
      Gameserver/App/base/ErrCode.php
  2. 11 9
      Gameserver/App/process/FightProc.php

+ 5 - 0
Gameserver/App/base/ErrCode.php

@@ -677,6 +677,11 @@ class ErrCode {
      * 伤害值未达标不能领取该奖励
      */
     const active_worldBoss_notClaimRewards = 3519;
+    
+    /**
+     * 功能未解锁
+     */
+    const active_funUnlock = 3520;
 // </editor-fold>
 //
 //   // <editor-fold defaultstate="collapsed" desc="    task 3600    ">

+ 11 - 9
Gameserver/App/process/FightProc.php

@@ -1910,14 +1910,14 @@ class FightProc {
         $tomorrowMidnight = strtotime('tomorrow', now()); //明天0点时间
 
         $chaizhi = $tomorrowMidnight - now();
-       
-        if ($yushu == 0 && $chaizhi <= 10 * 60) {
-            $damageMemKey = self::GetWorldBoss_DamageMemKey();
+        $damageMemKey = self::GetWorldBoss_DamageMemKey();
             echo '发放奖励的menkey===============:';
             echo "$damageMemKey";
             if ($mem->exists($damageMemKey)) {               
                 FightProc::settleRankReward_worldBoss();
-            }
+        }
+        if ($yushu == 0 && $chaizhi <= 10 * 60) {
+            
         }
                 
         echo '----世界boss的排行奖励-发放完成----';
@@ -1931,15 +1931,17 @@ class FightProc {
         }
 
         $memKey = self::GetWorldBoss_DamageMemKey();
+        $index = 0;
         foreach ($dic as $id => $mo) {
             $list = gMem()->zrevrange($memKey, $mo->rank_start - 1, $mo->rank_end - 1, true);
            
             if (count($list) == 0) {
                 continue;
             }
+            
+            $index += 1;
             foreach ($list as $uid => $score) {              
-                EmailProc::SendWorldBossRewardMail(req()->zoneid, $uid, $mo->reward);
-                gMem()->zrem($memKey, $uid);
+                EmailProc::SendWorldBossRewardMail(req()->zoneid, $uid, $mo->reward);               
             }
         }
                 
@@ -1976,7 +1978,7 @@ class FightProc {
             $mem->set($memKey, $nextTs); //下一轮赛季的开始时间回存   
             echo '完成重置下一个赛季的开始时间';
             //清理排行榜
-            //self::ClearWorldBossRank();
+            self::ClearWorldBossRank();
         }
     }
 
@@ -2175,8 +2177,8 @@ class FightProc {
     public static function WorldBoss_settle() {
         list($damageNum) = req()->paras; //战斗结束伤害值      
         //校验每个轮次最后10分钟, 不能战斗
-
-
+              
+        my_Assert(FightProc::isFunUnlock(25), ErrCode::active_funUnlock);
         self::Ranking_DamageVal($damageNum);
 
         UserProc::updateUserInfo();