Browse Source

新加引导模块

cyzhao 3 ngày trước cách đây
mục cha
commit
66e53fa3d3

+ 6 - 0
Gameserver/App/model/User/E_GuideTypeState.php

@@ -41,5 +41,11 @@ class E_GuideTypeState extends Enum{
     
     //9.角色更换与升星硬引导
     const HeroChange_Guide = 9;
+    
+    //10.主线任务 领取奖励得到第一颗灵宠蛋
+    const MainTaskPrize_PetEgg_Guide = 10;
+    
+    //11.灵宠孵化上阵探索引导
+    const Pet_Guide = 11;
  
 }

+ 1 - 1
Gameserver/App/process/FightProc.php

@@ -908,7 +908,7 @@ class FightProc {
             }
         }
 
-
+        GuideProc::MainTaskPrize_PetEgg_Guide_Trigger();
 
         UserProc::updateUserInfo();
         $ret = array(

+ 35 - 0
Gameserver/App/process/GuideProc.php

@@ -108,5 +108,40 @@ class GuideProc {
             ctx()->privateData(true)->funUnlockRecord_3[] = E_GuideTypeState::HeroChange_Guide;
         }
     }
+    
+    /**
+     * 10 在主界面检测到 某任务正好处在当前任务 且已经是完成状态[所以这个只在关卡通关后检测因为通关就完成 ]
+     */
+    public static function MainTaskPrize_PetEgg_Guide_Trigger() {
+        $mo = GameConfig::guide_getItem(E_GuideTypeState::MainTaskPrize_PetEgg_Guide, 0);
+        
+        $taskId = $mo->paras0;
+        $dic = ctx()->task->activeTaskInfo;
+        $tag = false;
+        foreach ($dic as $uid => $task) {
+            $ins_task = new Ins_TaskStep_Active($task);
+            if($ins_task->mo()->type == Enum_ActiveTaskType::MainTask && $ins_task->typeId == $taskId && $ins_task->state == Enum_TaskCardStateType::finish){
+                $tag = true;
+                break;
+            }
+        }
+        
+        if ($tag) {
+            ctx()->privateData(true)->funUnlockRecord_3[] = E_GuideTypeState::MainTaskPrize_PetEgg_Guide;
+        }       
+    }
+    
+    /**
+     * 特定的某个主线任务领取奖励的时候触发
+     * @param type $taskId
+     */
+    public static function Pet_Guide_Trigger($taskId) {
+        $mo = GameConfig::guide_getItem(E_GuideTypeState::Pet_Guide, 0);
+        $tId = $mo->paras0;
+
+        if ($tId == $taskId) {
+            ctx()->privateData(true)->funUnlockRecord_3[] = E_GuideTypeState::HeroChange_Guide;
+        }
+    }
 
 }

+ 1 - 0
Gameserver/App/process/TaskProc.php

@@ -243,6 +243,7 @@ class TaskProc {
 
 
         GuideProc::EquipLvUp_Guide_Trigger($ins_activeTaskInfo->typeId);
+        GuideProc::Pet_Guide_Trigger($ins_activeTaskInfo->typeId);
 
         UserProc::updateUserInfo();
         return Resp::ok(array("task" => ctx()->task,