Browse Source

扩展任务类型:圣哲学院相关和言灵升级.

gwang 4 years ago
parent
commit
f847ec73d7

+ 5 - 1
Gameserver/Amfphp/model/User/Enum_TaskCmdType.php

@@ -14,6 +14,7 @@ class Enum_TaskCmdType extends Enum {
     const HeroSkillUnlock = 15;                                                 # 
     const HeroWearupWeapon_quality = 16;                                        # 唤灵师装备X品质的武器(num:1,paras:[herotypeId,quality])(装备界面)
     const HeroWearupYanling = 17;                                               # 唤灵师装备xx(id)言灵 (num:1,paras:[herotypeId,yanlingid])(言灵配置界面)
+    const AnyYanlingLevelUp = 18;                                               # 任意言灵等级提升(num:1,paras:[])(言灵界面)
     // -----
     const PassGateN = 21;                                                       # 通过指定剧情关卡(num:1,paras:[关卡id,难度(1,2,3)])(跳关卡选择)
     const passCarbonN = 22;                                                     # 
@@ -33,7 +34,10 @@ class Enum_TaskCmdType extends Enum {
     const GainItem = 202;                                                       # 获得道具 (num:数量,paras:[道具id]
     const PlotOver = 203;                                                       # 对话结束 (num:1,paras:[gateid,stage]
     const BuyTaskCard_Num = 204;                                                # 购买任务卡_带数量(num:数量,paras:[]) (跳任务卡商店)
-    const FinishTaskCard_noID = 205;                                            # 完成任务_指定id(num:1,paras:[]) (无前往)
+    const FinishTaskCard_noID = 205;                                            # 完成任务_指定id(num:1,paras:[]) (无前往)
     const DrawSysMail_ID = 206;                                                 # 领取系统邮件_指定id(num:1,paras:[邮件id]) (跳邮件界面)
+    const GetSchoolTask = 207;                                                  # 领取任意一个学院课程(num:1,paras[])(学院界面)
+    const FinishSchoolTask = 208;                                               # 完成任意一个学院课程(num:1,paras:[])(学院界面)
+    const FinishAllSchoolTaskOfGrade = 209;                                     # 完成指定年级的全部课程(num:1,paras:[grade])(学院界面)
 
 }

+ 1 - 0
Gameserver/Amfphp/process/HeroProc.php

@@ -1048,6 +1048,7 @@ class HeroProc {
         if ($store->yanling->$yanlingUid->level > $maxLevel) {
             $store->yanling->$yanlingUid->level = $maxLevel;
         }
+        TaskProc::OnYanlingLevelUp($store->yanling->$yanlingUid->typeId, $store->yanling->$yanlingUid->level); # 言灵升级
         $req->userInfo->game->store = $store;
         UserProc::updateUserInfo();                                             # 回写玩家数据
         return Resp::ok(array('store' => $req->userInfo->game->store, #

+ 36 - 0
Gameserver/Amfphp/process/TaskProc.php

@@ -978,6 +978,42 @@ class TaskProc {
         return self::CheckTaskCardConditions($taskParam);
     }
 
+    /**
+     * 言灵升级
+     * @param type $yanlingType
+     * @param type $level
+     * @return type
+     */
+    static function OnYanlingLevelUp($yanlingType, $level) {
+        $taskParam = new Ins_TaskEventArgs(Enum_TaskCmdType::AnyYanlingLevelUp, Enum_PropelType::set, 1, array($yanlingType, $level));
+        return self::CheckTaskCardConditions($taskParam);
+    }
+
+    /**
+     *  领取任意一个学院课程(num:1,paras[])(学院界面)
+     */
+    static function OnGetSchoolTask() {
+        $taskParam = new Ins_TaskEventArgs(Enum_TaskCmdType::GetSchoolTask, Enum_PropelType::set, 1, array());
+        return self::CheckTaskCardConditions($taskParam);
+    }
+
+    /**
+     * 完成任意一个学院课程(num:1,paras:[])(学院界面)
+     */
+    static function OnFinishSchoolTask() {
+        $taskParam = new Ins_TaskEventArgs(Enum_TaskCmdType::FinishSchoolTask, Enum_PropelType::set, 1, array());
+        return self::CheckTaskCardConditions($taskParam);
+    }
+
+    /**
+     * 完成指定年级的全部课程(num:1,paras:[grade])(学院界面)
+     * @param int $grade 年级
+     */
+    static function OnFinishAllSchoolTaskOfGrade($grade) {
+        $taskParam = new Ins_TaskEventArgs(Enum_TaskCmdType::FinishAllSchoolTaskOfGrade, Enum_PropelType::set, 1, array($grade));
+        return self::CheckTaskCardConditions($taskParam);
+    }
+
     // 
     // </editor-fold>
 //