|
@@ -55,7 +55,9 @@ class ActiveProc {
|
|
case CmdCode::active_FlipCardLottery_BuyTickets: # 6115 金蛇献瑞购买抽奖券
|
|
case CmdCode::active_FlipCardLottery_BuyTickets: # 6115 金蛇献瑞购买抽奖券
|
|
return self::FlipCardLottery_BuyTickets();
|
|
return self::FlipCardLottery_BuyTickets();
|
|
case CmdCode::active_FlipCardLottery_DrawGrandReward: # 6116 领取大奖信息
|
|
case CmdCode::active_FlipCardLottery_DrawGrandReward: # 6116 领取大奖信息
|
|
- return self::FlipCardLottery_DrawGrandReward();
|
|
|
|
|
|
+ return self::FlipCardLottery_DrawGrandReward();
|
|
|
|
+ case CmdCode::active_FlipCardLottery_DrawAccumulateReward: # 6117 领取卡牌累计次数奖励
|
|
|
|
+ return self::FlipCardLottery_DrawAccumulateReward();
|
|
default:
|
|
default:
|
|
Err(ErrCode::cmd_err);
|
|
Err(ErrCode::cmd_err);
|
|
}
|
|
}
|
|
@@ -70,7 +72,7 @@ class ActiveProc {
|
|
self::ClearOnlineGiftTs();
|
|
self::ClearOnlineGiftTs();
|
|
ActiveProc::ClearYanBaoBuyItemActive_drawReward();
|
|
ActiveProc::ClearYanBaoBuyItemActive_drawReward();
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 重置金蛇数据
|
|
* 重置金蛇数据
|
|
*/
|
|
*/
|
|
@@ -83,8 +85,73 @@ class ActiveProc {
|
|
//初始化大奖
|
|
//初始化大奖
|
|
ctx()->privateState->flipCard_RewardRecord = array();
|
|
ctx()->privateState->flipCard_RewardRecord = array();
|
|
ctx()->privateData(true)->flipCard_randGrandReward = self::RandGrandReward();
|
|
ctx()->privateData(true)->flipCard_randGrandReward = self::RandGrandReward();
|
|
|
|
+
|
|
|
|
+ ctx()->privateState->flipCardLottery_AccumulateReward = array();
|
|
|
|
+ //初始化对应任务数据
|
|
|
|
+ self::InitFlipLotteryTask();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ /**
|
|
|
|
+ * 初始化金蛇任务数据
|
|
|
|
+ */
|
|
|
|
+ public static function InitFlipLotteryTask() {
|
|
|
|
+ $activeTaskInfo = ctx()->task->activeTaskInfo;
|
|
|
|
+ $arr = array();
|
|
|
|
+ foreach ($activeTaskInfo as $taskUid => $ins_task) {
|
|
|
|
+ $ins_taskStep_active = new Ins_TaskStep_Active($ins_task);
|
|
|
|
+ if($ins_taskStep_active->mo()->type == Enum_ActiveTaskType::FlipCardLotteryTask){
|
|
|
|
+ $arr[] = $taskUid;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if(count($arr) > 0){
|
|
|
|
+ foreach ($arr as $uid) {
|
|
|
|
+ StlUtil::arrayRemove($activeTaskInfo, $uid);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ $list = explode(',',GameConfig::glc2()->FlipCardLotteryTask);
|
|
|
|
+ $length = ctx()->task->activeTaskLength;
|
|
|
|
+ foreach ($list as $taskId){
|
|
|
|
+ $mo = GameConfig::activeTask_getItem($taskId);
|
|
|
|
+ my_Assert(null != $mo, ErrCode::err_const_no);
|
|
|
|
+
|
|
|
|
+ $length += 1;
|
|
|
|
+ $ins_TaskStep_Active = new Ins_TaskStep_Active($mo->id);
|
|
|
|
+ $ins_TaskStep_Active->uid = $length;
|
|
|
|
+ $ins_TaskStep_Active->state = Enum_TaskCardStateType::ing;
|
|
|
|
+ ctx()->task->activeTaskInfo->$length = $ins_TaskStep_Active;
|
|
|
|
+ }
|
|
|
|
+ ctx()->task->activeTaskLength = $length;
|
|
|
|
+ self::autoRecoverState_activeTask();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 6117 领取卡牌累计次数奖励
|
|
|
|
+ */
|
|
|
|
+ public static function FlipCardLottery_DrawAccumulateReward() {
|
|
|
|
+ $dic = GameConfig::activity_flipcardlottery_accumulate();
|
|
|
|
+
|
|
|
|
+ $accumulateRewardList = ctx()->privateState->flipCardLottery_AccumulateReward;
|
|
|
|
+ $allNum = ctx()->privateState->flipCardNum_all;
|
|
|
|
+ foreach ($dic as $numId => $mo) {
|
|
|
|
+ if($allNum >= $numId && !in_array($numId, $accumulateRewardList)){
|
|
|
|
+ StoreProc::AddMultiItemInStore($mo->reward);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return Resp::ok(array(
|
|
|
|
+ 'gold' => ctx()->baseInfo->gold,
|
|
|
|
+ 'cash' => ctx()->baseInfo->cash,
|
|
|
|
+ 'store' => ctx()->store,
|
|
|
|
+ 'heros' => ctx()->heros,
|
|
|
|
+ 'privateState' => ctx()->privateState,
|
|
|
|
+ 'reward_equip'=> StoreProc::$reward_equip,
|
|
|
|
+ 'reward_Gem'=> StoreProc::$reward_Gem,
|
|
|
|
+ 'reward'=> StoreProc::$reward,
|
|
|
|
+ ));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
/**
|
|
/**
|
|
* 6116 领取大奖信息
|
|
* 6116 领取大奖信息
|