Browse Source

6006返回不走存回;战斗结算返回遗漏

cyzhao 11 months ago
parent
commit
3a3c9c9c2a

+ 7 - 3
Gameserver/App/Services/AppServer.php

@@ -62,11 +62,14 @@ class AppServer {
      * @param Resp $resp
      */
     private static function AfterProc(&$resp) {
-        if (req()->userInfoChanged || (null != ctx() && ctx()->NeedSave())) {   # 回写玩家数据
-            if (!UserProc::setUserInfo(ctx())) {                                # 失败, 改写返回值
-                return false;
+        if (req()->cmd != CmdCode::cmd_user_delUserUid) {
+            if (req()->userInfoChanged || (null != ctx() && ctx()->NeedSave())) {   # 回写玩家数据
+                if (!UserProc::setUserInfo(ctx())) {                                # 失败, 改写返回值
+                    return false;
+                }
             }
         }
+
         $resp->AfterProc();
 
         self::LogCmdMongo($resp);                                               # 向MongoDB写入操作日志
@@ -169,4 +172,5 @@ class AppServer {
         }
         return $ret;
     }
+
 }

+ 7 - 3
Gameserver/App/process/FightProc.php

@@ -463,14 +463,18 @@ class FightProc {
 ////            StoreProc::AddMultiItemInStore($gateMo->reward_fail);               # 发放失败奖励(2024.5.30 过期)
 //        }
 
-        StoreProc::AddMultiItemInStore($pickups);                               # 战场拾取道具直接入背包
+        StoreProc::AddMultiItemInStore($pickups);                               # 战场拾取道具直接入背包              
         ctx()->base()->Add_Gold($gold);                                         # 战场拾取的金币直接入背包
         //ctx()->base()->Add_Exp($exp);
         $waveMo = GameConfig::waveItem_getItem($gateId, $finalLayer);
         my_Assert(null != $waveMo, ErrCode::err_const_no);
         ctx()->base()->Add_Exp($waveMo->rewardExp);                             # 指挥官经验
         ctx()->base()->Add_Gold($waveMo->rewardGold);                           # 金币奖励
-        $pickups .= ";1," . $gold + $waveMo->rewardGold;
+        //$pickups .= ";1," . $gold + $waveMo->rewardGold;
+        
+        $str =  "1," . $gold + $waveMo->rewardGold;
+        StoreProc::AddMultiItemInStore($str);
+        
         # 图纸奖励: 数量min-max, 部位随机
         if (strlen($waveMo->rewardTuZhi) > 0 && str_contains($waveMo->rewardTuZhi, '-')) {
             list($tz_min, $tz_max) = explode('-', $waveMo->rewardTuZhi);        # 图纸数量
@@ -479,7 +483,7 @@ class FightProc {
             for ($i = 0; $i < $tz_n; $i++) {
                 $id = 1000 + rand(1, 6);
                 StoreProc::AddMultiItemInStore("$id,1");                        # 获得图纸
-                $pickups .= ";$id,1";
+                //$pickups .= ";$id,1";
             }
         }
         # 宝石奖励: 数量min-max;品质:权重,品质:权重...

+ 1 - 2
Gameserver/App/process/UserProc.php

@@ -49,7 +49,7 @@ class UserProc {
                 $mem->delete($key);
             }
         }
-
+        
         // <editor-fold defaultstate="collapsed" desc="清理mongodb中的数据">
         self::deleteUserMapData(req()->uid, req()->zoneid);
 
@@ -58,7 +58,6 @@ class UserProc {
         FightProc::DeleteRankInvalidUser(req()->uid);
         self::delRegRole(req()->zoneid, req()->uid, ctx()->baseInfo->name);
 
-        //UserProc::updateUserInfo();
         $ret = array();
         return Resp::ok($ret);
     }