|
@@ -127,14 +127,58 @@ class SweepGatesProc {
|
|
|
* [6801] 关卡挑战1次
|
|
|
*/
|
|
|
public static function Arenas_Fight() {
|
|
|
- list($gateId, $difficulty, $star, $TeamObj) = req()->paras; # 提取参数: 挑战的关卡Id, 关卡难度(0,1,2), 几星, 队伍, 奖励字符串
|
|
|
+ $gateId = req()->paras[0];
|
|
|
+// list($gateId, $difficulty, $star, $TeamObj) = req()->paras; # 提取参数: 挑战的关卡Id, 关卡难度(0,1,2), 几星, 队伍, 奖励字符串
|
|
|
my_Assert($gateId > 0, ErrCode::err_arenasgate_indexillegal); # 关卡id非法
|
|
|
// $md5 = gMem()->get(MemKey_User::temp_arenas_pre_reward_md5_str($req->zoneid, $req->uid));
|
|
|
// $_md5 = md5($gateId . $difficulty . $rewardStr);
|
|
|
// my_Assert($md5 == $_md5, ErrCode::err_arenas_rewardIllegal); # 奖励不匹配
|
|
|
- $isFirst = false; # 是否首次通关
|
|
|
- self::recordFight($gateId, $difficulty, $star, $isFirst); # 更新挑战记录
|
|
|
$smGate = GameConfig::gate_getItem($gateId); # 关卡配置数据
|
|
|
+ switch ($smGate->battleType) { #(0普通 怪物全部创建 1Boss站 2引导剧情 3竞技场 4非战斗场景)
|
|
|
+ case 0: # 普通关卡
|
|
|
+
|
|
|
+ case 1: # boss战(结算时按击杀boss)
|
|
|
+ return self::_NormalGate();
|
|
|
+ case 2: # 引导类
|
|
|
+ break;
|
|
|
+ case 3: # pvp
|
|
|
+ break;
|
|
|
+ case 4: # 大厅/主城/召唤之类的
|
|
|
+ break;
|
|
|
+ case 5: # 材料副本
|
|
|
+ break;
|
|
|
+
|
|
|
+// case 6: ...
|
|
|
+
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ $user = req()->userInfo->game;
|
|
|
+ $result = array(
|
|
|
+ 'store' => $user->store,
|
|
|
+ 'heros' => $user->heros,
|
|
|
+ 'gates' => $user->gates,
|
|
|
+ 'tili' => $user->base()->tili,
|
|
|
+ 'time' => $user->privateState->TiliTime,
|
|
|
+ 'gold' => $user->base()->gold,
|
|
|
+ 'resPoint' => $user->base()->resPoint,
|
|
|
+ 'cash' => $user->base()->cash,
|
|
|
+ 'exp' => 0,
|
|
|
+// 'rewardstr' => implode(';', $rewardArr),
|
|
|
+ 'isFirst' => false,
|
|
|
+ );
|
|
|
+ return Resp::ok($result);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 通关普通关卡
|
|
|
+ */
|
|
|
+ private static function _NormalGate() {
|
|
|
+ list($gateId, $difficulty, $star, $TeamObj) = req()->paras; # 提取参数: 挑战的关卡Id, 关卡难度(0,1,2), 几星, 队伍, 奖励字符串
|
|
|
+ $smGate = GameConfig::gate_getItem($gateId); # 关卡配置数据
|
|
|
+ $isFirst = false; # 是否首次通关
|
|
|
+ self::recordFight($gateId, $difficulty, $star, $isFirst); # 更新挑战记录
|
|
|
$i = $difficulty + 1; # 按三个难度取不同的值.
|
|
|
// $gold = self::getProperty_n($smGate, "gold", $i);
|
|
|
$exp = self::getProperty_n($smGate, "exp", $i);
|
|
@@ -159,7 +203,7 @@ class SweepGatesProc {
|
|
|
}
|
|
|
}
|
|
|
UserProc::updateUserInfo(); # 回写玩家数据.
|
|
|
-#
|
|
|
+
|
|
|
TaskProc::OnPassGateN($gateId, $difficulty + 1);
|
|
|
$user = req()->userInfo->game;
|
|
|
$result = array(
|