|
@@ -33,6 +33,7 @@ class RankProc {
|
|
|
return self::GetPassgateRank($req);
|
|
|
case CmdCode::rank_passgate_drawReward: # 6606 领取通关榜突破奖励
|
|
|
return self::DrawPassgateReward($req);
|
|
|
+
|
|
|
case CmdCode::rank_passgate_breachLog: # 6608 查询通关帮突破记录
|
|
|
return self::GetPassgateBreachLog($req);
|
|
|
|
|
@@ -66,7 +67,7 @@ class RankProc {
|
|
|
// <editor-fold defaultstate="collapsed" desc=" 战斗力榜 ">
|
|
|
|
|
|
/**
|
|
|
- * 排行榜 - 查询战力榜突破记录
|
|
|
+ * [6607] 排行榜 - 查询战力榜突破记录
|
|
|
* @param req $req
|
|
|
*/
|
|
|
static function GetFpowerBreachLog($req) {
|
|
@@ -186,7 +187,7 @@ class RankProc {
|
|
|
// <editor-fold defaultstate="collapsed" desc=" 通关帮 ">
|
|
|
|
|
|
/**
|
|
|
- * 排行榜 - 查询通关榜突破记录
|
|
|
+ * [6608]排行榜 - 查询通关榜突破记录
|
|
|
* @param req $req
|
|
|
*/
|
|
|
static function GetPassgateBreachLog($req) {
|
|
@@ -305,9 +306,17 @@ class RankProc {
|
|
|
public static function recordNewPassGateInfo($uid, $gateId) {
|
|
|
$key_rank = MemKey_GameRun::Game_Rank_passgate_zset(req()->zoneid); # redis key 通关榜
|
|
|
$key_count = MemKey_GameRun::Game_Rank_passgate_count_hash(req()->zoneid); # redis key 通关玩家计数
|
|
|
+ $key_log = MemKey_GameRun::Game_Rank_passage_BreachLog_hash(req()->zoneid); # redis key 通关榜突破记录
|
|
|
+
|
|
|
$ranking = req()->mem->hincrby($key_count, $gateId, 1); # 添加通关计数
|
|
|
$score = $gateId . (self::MaxUserCount - $ranking); # 计算通关记录的积分值
|
|
|
req()->mem->zadd($key_rank, array("$uid" => $score)); # 更新玩家的通关记录
|
|
|
+
|
|
|
+ foreach (GameConfig::rankreward_passgate() as $condition => $reward) { # 遍历突破奖励数据
|
|
|
+ if ($gateId >= $condition && !gMem()->hexists($key_log, $condition)) { # 判断是否达成突破奖励标准
|
|
|
+ gMem()->hset($key_log, $condition, $uid); # 添加突破记录
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// </editor-fold>
|