Jelajahi Sumber

整理代码.

gwang 5 tahun lalu
induk
melakukan
0ed0dd7a6c

+ 20 - 32
Gameserver/Amfphp/process/HeroProc.php

@@ -76,48 +76,36 @@ class HeroProc {
 // <editor-fold defaultstate="collapsed" desc="技能升级与解锁">
 
     /**
-     * [6324] 英雄技能解锁
+     * [6324] 英雄技能解锁 
+     * @version  2020.1.13  至今未进行对接, 再次整理版
+     *            2019.12.10 加班弄完第一版
      * @param req $req
      */
     static function UnlockSkill($req) {
-        $user = $req->userInfo->game;                                           # user引用
-        $huid = $req->paras[0];                                                 # 英雄的UID
-        $mainSkillId = $req->paras[1];                                          # 主技能Id
-        $subSkillId = $req->paras[2];                                           # 要升级的子技能ID
-//        $costGold = $req->paras[3];                                             # 要升级的消耗金币
-#                                                                               # 1.检查是否存在要解锁的英雄
-        $collectHeros = $user->heros->collectHeros;
-        if (!$collectHeros) {
-            $collectHeros = ObjectInit();
-        }
-        if (!CommUtil::isPropertyExists($collectHeros, $huid)) {
-            return Resp::err(ErrCode::hero_no);
-        }
-#                                                                               # 2.判断英雄的该技能能否升级....
-//        isEditor() and $targetHero = new UserHeroModel();
-        $targetHero = new UserHeroModel($collectHeros->$huid);
-#                                                                               # 取出这个英雄的技能数据 
-        $targteHeroSkills = $targetHero->subSkills;
-        if (!CommUtil::isPropertyExists($targteHeroSkills, $mainSkillId)) {     # 主技能Id.
-            return Resp::err(ErrCode::err_unknownn, "玩家数据结构问题");
-        }
-        if (CommUtil::isInArray($targteHeroSkills->$mainSkillId, $subSkillId)) { # 子技能已经解锁
-            return Resp::err(ErrCode::err_unknownn, "子技能已解锁");
-        }
+        list($huid, $mainSkillId, $subSkillId) = $req->paras;                   # 提取参数: 英雄的UID, 主技能Id, 要升级的子技能ID 
+
+        $user = $req->userInfo->game;                                           # user引用 
+        $cHeros = $user->heros->collectHeros;
+        if (!$cHeros) {
+            $cHeros = ObjectInit();
+        }
+        my_Assert(CommUtil::isPropertyExists($cHeros, $huid), ErrCode::hero_no); # 1.检查是否存在要解锁的英雄
+#                                                                               # 2.判断英雄的该技能能否升级.... 
+        $targetHero = new UserHeroModel($cHeros->$huid);                        # 直接类型识别
+        $targteHeroSkills = $targetHero->subSkills;                             # 取出这个英雄的技能数据 
+        my_Assert(CommUtil::isPropertyExists($targteHeroSkills, $mainSkillId), "玩家数据存在问题");
+        my_Assert(!CommUtil::isInArray($targteHeroSkills->$mainSkillId, $subSkillId), "子技能已解锁"); # 子技能已经解锁
 //        if (!$targetHero->IsSkillUnlockAble($mainSkillId, $subSkillId)) {       # 3.判断技能是否处于待解锁状态
 //            return Resp::err(ErrCode::hero_upgradeSkill_maxLevel);
 //        }
 
         $sm = GameConfig::subSkill_getItem($subSkillId);                        # 4.取出该技能升级消耗的常量数据
-        if (null == $sm) {
-            return Resp::err(ErrCode::err_const_no, '找不到子技能配置数据');
-        }
-        if (!UserGameModel::Consume_Gold($user, $sm->unlockCost)) {             # 5. 扣除金币消耗
-            return Resp::err(ErrCode::notenough_gold_msg);
-        }
+        my_Assert(null != $sm, ErrCode::err_const_no);                          # 找不到子技能配置数据 
+        my_Assert(UserGameModel::Consume_Gold($user, $sm->unlockCost), #        # 5. 扣除金币消耗
+                ErrCode::notenough_gold_msg);
         array_push($targteHeroSkills->$mainSkillId, $subSkillId);               # 添加技能
         $targetHero->subSkills = $targteHeroSkills;
-        UserProc::updateUserInfo();                                         # 回写数据
+        UserProc::updateUserInfo();                                             # 回写数据
         return Resp::ok($targetHero);
     }
 

+ 1 - 29
Gameserver/nbproject/private/private.xml

@@ -11,34 +11,6 @@
         </file>
     </editor-bookmarks>
     <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">
-        <group>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/StatProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/EmailProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/PayProc/WebPayProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/base/CmdCode.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/FightProc/PVPProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/FightProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/StoreProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/FightProc/SweepGatesProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/util/CLog.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/FriendProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/util/ErrHandler.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/base/OpeCode.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/util/DebugHelper.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/PayProc/MLogType.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/HeroDiscussProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/UserProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/PreProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/model/User/UserInfoMo.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/PayProc/YuanBaoPayProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/GuildProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/EventProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/model/User/UserGameModel.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/PayProc/YYBPay.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/PayProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/model/User/UGateModel.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/SystemProc.php</file>
-            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/test.php</file>
-        </group>
+        <group/>
     </open-files>
 </project-private>