|
@@ -29,7 +29,7 @@ class FightProc {
|
|
case CmdCode::cmd_fight_GetArenasActiveReward: # 6806 领取章节星级奖励
|
|
case CmdCode::cmd_fight_GetArenasActiveReward: # 6806 领取章节星级奖励
|
|
return SweepGatesProc::DrawChapterStarsReward();
|
|
return SweepGatesProc::DrawChapterStarsReward();
|
|
|
|
|
|
- // <editor-fold defaultstate="collapsed" desc=" 玩家挑战 ">
|
|
|
|
|
|
+ // <editor-fold defaultstate="collapsed" desc=" 玩家挑战 ">
|
|
case CmdCode::cmd_fight_GetChallengeAdversaryInfo: # 6803 获取挑战对手的信息
|
|
case CmdCode::cmd_fight_GetChallengeAdversaryInfo: # 6803 获取挑战对手的信息
|
|
return PVPProc::GetChallengeAdversaryInfo();
|
|
return PVPProc::GetChallengeAdversaryInfo();
|
|
case CmdCode::cmd_fight_LogChallengeResult: # 6804 记录挑战结果
|
|
case CmdCode::cmd_fight_LogChallengeResult: # 6804 记录挑战结果
|
|
@@ -70,12 +70,16 @@ class FightProc {
|
|
return self::EndlessTower_Get();
|
|
return self::EndlessTower_Get();
|
|
case CmdCode::fight_endlessTower_Up: # 6842 无尽塔升级
|
|
case CmdCode::fight_endlessTower_Up: # 6842 无尽塔升级
|
|
return self::EndlessTower_Up();
|
|
return self::EndlessTower_Up();
|
|
-
|
|
|
|
|
|
+ case CmdCode::fight_endlessTower_drawreward: # 6843 无尽塔,领取特殊奖励
|
|
|
|
+ return null;
|
|
default:
|
|
default:
|
|
return Resp::err(ErrCode::cmd_err);
|
|
return Resp::err(ErrCode::cmd_err);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+//
|
|
|
|
+// <editor-fold defaultstate="collapsed" desc=" 世界boss ">
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* [6834] 查询世界boss伤害输出榜
|
|
* [6834] 查询世界boss伤害输出榜
|
|
*/
|
|
*/
|
|
@@ -87,6 +91,10 @@ class FightProc {
|
|
return Resp::ok(array('rank' => $rank));
|
|
return Resp::ok(array('rank' => $rank));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// </editor-fold>
|
|
|
|
+//
|
|
|
|
+// <editor-fold defaultstate="collapsed" desc=" 无尽塔 ">
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* [6841] 查询无尽塔的进度
|
|
* [6841] 查询无尽塔的进度
|
|
*/
|
|
*/
|
|
@@ -100,16 +108,48 @@ class FightProc {
|
|
static function EndlessTower_Up() {
|
|
static function EndlessTower_Up() {
|
|
list( $index) = req()->paras;
|
|
list( $index) = req()->paras;
|
|
my_Assert($index == ctx()->privateData()->endlessTower, ErrCode::Fight_endlessTower_index);
|
|
my_Assert($index == ctx()->privateData()->endlessTower, ErrCode::Fight_endlessTower_index);
|
|
- ctx()->privateData()->endlessTower++;
|
|
|
|
|
|
+ ctx()->privateData()->endlessTower++; # 指向下一关
|
|
|
|
+ // 发放奖励
|
|
|
|
+ $mo = GameConfig::endless_tower_getItem($index); # 取配置信息
|
|
|
|
+ my_Assert(isset($mo), ErrCode::err_const_no); # 防御
|
|
|
|
+ $rsArr = str_replace(',', ';', $mo->rewardList); # 修复下奖励格式, ,=>;
|
|
|
|
+ $rewardStr = str_replace('_', ',', $rsArr); # _ => ,
|
|
|
|
+ $err = StoreProc::AddMultiItemInStore($rewardStr); # 发放奖励
|
|
|
|
+ my_Assert(ErrCode::ok == $err, $err); # 防御代码
|
|
|
|
+ UserProc::updateUserInfo(); # 更新
|
|
|
|
+ return Resp::ok(array('index' => ctx()->privateData()->endlessTower,
|
|
|
|
+ 'baseInfo' => ctx()->base(),
|
|
|
|
+ 'store' => ctx()->store()
|
|
|
|
+ ));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ static function EndlessTower_Drawreward() {
|
|
|
|
+ list($index) = req()->paras;
|
|
|
|
+ my_Assert($index % 5 == 0, ErrCode::paras_err); # 领取指定关卡的特殊奖励(逢5/0才有)
|
|
|
|
+ my_Assert(ctx()->privateData()->endlessTower >= $index, "请先完成挑战再来领奖!"); # 防御未通关直接领奖(刷接口)
|
|
|
|
+ my_Assert($index > ctx()->privateData()->endlessTower_rewarded, "已经领取!"); # 防御已经领取
|
|
|
|
+ $mo = GameConfig::endless_tower_getItem($index);
|
|
|
|
+ my_Assert(isset($mo), ErrCode::err_const_no);
|
|
|
|
+ $rs = str_replace(',', ';', $mo->rewardOne); # 奖励串格式修复,
|
|
|
|
+ $rewardStr = str_replace('_', ',', $rs);
|
|
|
|
+ $err = StoreProc::AddMultiItemInStore($rewardStr); # 发放奖励
|
|
|
|
+ my_Assert(ErrCode::ok == $err, $err); # 防御
|
|
|
|
+ ctx()->privateData()->endlessTower_rewarded = $index; # 更新记录
|
|
UserProc::updateUserInfo();
|
|
UserProc::updateUserInfo();
|
|
- return Resp::ok(array('index' => ctx()->privateData()->endlessTower));
|
|
|
|
|
|
+ return Resp::ok(array(# # 返回
|
|
|
|
+ 'baseInfo' => ctx()->base(),
|
|
|
|
+ 'store' => ctx()->store()
|
|
|
|
+ ));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// </editor-fold>
|
|
|
|
+//
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 清理每日字段
|
|
* 清理每日字段
|
|
*/
|
|
*/
|
|
static function ClearByDay() {
|
|
static function ClearByDay() {
|
|
- SweepGatesProc::ClearGateTimes(); # 清理每个难度副本的每日战斗次数
|
|
|
|
|
|
+ SweepGatesProc::ClearGateTimes(); # 清理每个难度副本的每日战斗次数
|
|
$pvp = new Info_UserPVP(req()->userInfo->game->pvp);
|
|
$pvp = new Info_UserPVP(req()->userInfo->game->pvp);
|
|
$pvp->refreshDailyData();
|
|
$pvp->refreshDailyData();
|
|
$pvp->sendRewardEmail(req()->zoneid, req()->uid, PVPProc::GetCurSeasonID());
|
|
$pvp->sendRewardEmail(req()->zoneid, req()->uid, PVPProc::GetCurSeasonID());
|