gwang 4 lat temu
rodzic
commit
28cfec98a0

+ 5 - 11
Gameserver/Amfphp/Services/AppServer.php

@@ -19,12 +19,12 @@ class AppServer {
         $uniq = uniqid();                                                       # 自己生成一个唯一串,作为此次处理过程的标记。
         $GLOBALS['deal-uid'] = $uniq;                                           # 写入日志的时候带上,方便辨认同一个处理过程.
         $GLOBALS['zoneid'] = $req->zoneid;                                      # 暂时未想到更好的方案
-        $req->mem = gMem();                                                     # 初始化并挂载CRedisUtil
+//        $req->mem = gMem();                                                     # 初始化并挂载CRedisUtil
         $err = self::BeforeProc($req);                                          # 预处理
         my_Assert(ErrCode::ok == $err, $err);                                   # 如果tk校验未通过
         $resp = self::Route($req);                                              # 分发逻辑
         self::AfterProc($req, $resp);                                           # 执行后处理逻辑
-        $req->mem->close();                                                     # 销毁已申请的资源
+//        $req->mem->close();                                                     # 销毁已申请的资源
         return $resp;
     }
 
@@ -44,8 +44,7 @@ class AppServer {
         if (now() > $ssd->startts && now() < $ssd->endts) {                     # 在维护期间 
             Err(ErrCode::err_server_maintaining, $ssd->reason);
         }
-        // todo: 检查clientVersion 判断是否应该强制升级 
-
+        // todo: 检查clientVersion 判断是否应该强制升级  
         if (!Index::$isDebugging && now() - $req->ts > OFFSET_MSGTIME) {        # 如果服务端客户端时间戳超过规定误差,则消息非法
             return ErrCode::err_outtime;
         }
@@ -63,11 +62,7 @@ class AppServer {
                 Err(ErrCode::err_innerfault, "回写玩家数据");
             }
         }
-        if (isset($req->updateInfo)) {                                          # 透传参数
-            $resp->updateInfo = $req->updateInfo;
-        }
-        $resp->tag = arr2obj(array_merge((array) $resp->tag, (array) Resp::$ext_tag)); # 合并附加tag,  
-        $resp->events = Resp::$ext_events;
+        $resp->AfterProc();
         GAME_ONLINE and self::LogCmd($req, $resp);                                              # 记录操作日志
         CLog::flush();                                                          # flush日志
     }
@@ -104,8 +99,7 @@ class AppServer {
             }
             return $resp;                                                       # 返回值
         } catch (\Exception $ex) {                                              # 异常信息写入日志
-            $msg = CommUtil::str2UTF8($ex->getMessage());                       # 异常信息转下码
-//            CLog::err("$msg\n  " . $ex->getTraceAsString(), "AppServer");       # 日志中追加traceinfo
+            $msg = CommUtil::str2UTF8($ex->getMessage());                       # 异常信息转下码 
             Err(ErrCode::err_unknownn, "call_user_func got Exception: $msg");   # 返回给客户端
         }
     }

+ 5 - 16
Gameserver/Amfphp/base/Req.php

@@ -44,14 +44,8 @@ class Req extends Object_ext {
      * @var string
      */
     public $zoneid;
-// -----------------------------------------------------------
-//    服务端为了便于操作使用到的变量直接挂载到req上
-    /**
-     * 挂载cmemUtil,因为每次操作必用到Cmem且不止一次,所以直接挂载,
-     * 减少代码量
-     * @var CRedisUtil
-     */
-    public $mem;
+
+// <editor-fold defaultstate="collapsed" desc=" 服务端为了便于操作使用到的变量直接挂载到req上 ">
 
     /**
      * 挂载玩家数据实体
@@ -60,25 +54,21 @@ class Req extends Object_ext {
     public $userInfo;
 
     /**
-     *
      * @var bool userInfo是否需要回写
      */
     public $userInfoChanged = false;
 
-// -------------------------------------------------------------
+// </editor-fold> 
 
     /**
-     *
      * @param Req $req
      * @return Req
      */
     public function __construct($req) {
-        if (is_string($req)) {                                                  //  desc=" fix黑窗调试直接调用"
+        if (is_string($req)) {                                                  // fix黑窗调试直接调用
             $req = JsonUtil::decode($req);
         }
         parent::__construct($req);
-        $this->mem = gMem();
-        # 初始化UserInfo
         switch ($this->cmd) {
             case CmdCode::cmd_user_loginuserinfo :                              # 登录
             case CmdCode::cmd_user_gameconstinfo :                              # 下载常量
@@ -90,7 +80,7 @@ class Req extends Object_ext {
                 break;
             default :                                                           # 其余消息,初始化UserInfo
                 if ($this->uid) {
-                    $this->userInfo = UserProc::getUserInfo($this->mem, $this->zoneid, $this->uid);
+                    $this->userInfo = UserProc::getUserInfo($this->zoneid, $this->uid);
                     if (null == $this->userInfo) {
                         Err(">>>>>>>>>>用户数据读取为空!!<<<<<<<<<<<[$this->uid]:PreProc");
                     }
@@ -106,7 +96,6 @@ class Req extends Object_ext {
      */
     public function __toString() {
         $clone = clone $this;
-        unset($clone->mem);                                                     # 删除不必要的字段
         unset($clone->userInfo);                                                # 删除不必要的字段
         unset($clone->userInfoChanged);                                         # 删除不必要的字段 
         $str = JsonUtil::encode($clone);                                        # json

+ 11 - 1
Gameserver/Amfphp/base/Resp.php

@@ -39,6 +39,16 @@ class Resp extends Object_ext {
      */
     public $tag;
 
+    /**
+     * 实例方法, 将静态变量上累积的数据转移到自己身上
+     */
+    public function AfterProc() {
+        $this->tag = arr2obj(array_merge((array) $this->tag, (array) self::$ext_tag)); # 合并附加tag,  
+        self::$ext_tag = ObjectInit();
+        $this->events = self::$ext_events;
+        self::$ext_events = array();
+    }
+
     /**
      * 产生服务端应答
      * @param Req $req
@@ -67,7 +77,7 @@ class Resp extends Object_ext {
         $resp->result = ObjectInit();
         $resp->ts = time();
         $resp->tag = ObjectInit();
-        $resp->tag->errmsg = $msg;
+        self::addTag('errmsg', $msg);
         return $resp;
     }
 

+ 17 - 21
Gameserver/Amfphp/process/FightProc/PVPProc.php

@@ -51,7 +51,7 @@ class PVPProc {
      */
     public static function GetChallengeAdversaryInfo($req) {
         $targetUID = $req->paras[0];                                            # 参数: 对手的UID
-        $uinfo = UserProc::getUserInfo($req->mem, $req->zoneid, $targetUID);    # 读取玩家信息 
+        $uinfo = UserProc::getUserInfo($req->zoneid, $targetUID);    # 读取玩家信息 
         if (null == $uinfo) {
             Err(ErrCode::user_no_err);
         }
@@ -94,7 +94,7 @@ class PVPProc {
         $key_mine = MemKey_User::OffensiveLog_zset($req->zoneid, $req->uid);
         $key_target = MemKey_User::DefensiveLog_zset($req->zoneid, $targetUID);
         $ts = now();                                                            # 记录时间戳
-        $req->mem->zadd($key_mine, array(#                                      # 组装被挑战对手信息
+        gMem()->zadd($key_mine, array(#                                         # 组装被挑战对手信息
             JsonUtil::encode(array(
                 'uid' => my_null_default($targetUID, "-"),
                 'name' => my_null_default($name, ""),
@@ -103,8 +103,8 @@ class PVPProc {
                 'msg' => my_null_default($msg, ""),
                 'ts' => $ts
             )) => $ts));
-        $req->mem->zremrangebyrank($key_mine, self::maxLogCount, -1);           # 保留50条数据
-        $req->mem->zadd($key_target, array(#                                    # 组装挑战者信息
+        gMem()->zremrangebyrank($key_mine, self::maxLogCount, -1);              # 保留50条数据
+        gMem()->zadd($key_target, array(#                                       # 组装挑战者信息
             JsonUtil::encode(array(
                 'uid' => $req->uid,
                 'name' => $req->userInfo->game->baseInfo->name,
@@ -113,7 +113,7 @@ class PVPProc {
                 'msg' => my_null_default($msg, ""),
                 'ts' => $ts
             )) => $ts));
-        $req->mem->zremrangebyrank($key_target, self::maxLogCount, -1);         # 保留50条数据
+        gMem()->zremrangebyrank($key_target, self::maxLogCount, -1);         # 保留50条数据
         // 暂无发放奖励流程
         // 更新每日任务
         TaskProc::OnRankChalenge();
@@ -131,8 +131,8 @@ class PVPProc {
         $key_off = MemKey_User::OffensiveLog_zset($req->zoneid, $req->uid);
         $key_def = MemKey_User::DefensiveLog_zset($req->zoneid, $req->uid);
         // 拉取自己的挑战记录
-        $offLog = $req->mem->zrange($key_off, 0, self::maxLogCount);
-        $defLog = $req->mem->zrange($key_def, 0, self::maxLogCount);
+        $offLog = gMem()->zrange($key_off, 0, self::maxLogCount);
+        $defLog = gMem()->zrange($key_def, 0, self::maxLogCount);
         // Ps. 挑战记录分为2个榜, 且按照时间戳记录,晚于指定时间戳的判定为未读消息,挑战记录最多记录50条
 //        if (!CommUtil::isPropertyExists($req->userInfo->game->privateState, "lastCheckDefLog")) {
         $req->userInfo->game->privateState->lastCheckDefLog_ts = now();         # 记录时间戳
@@ -413,7 +413,7 @@ class PVPProc {
         if ($n < 1 || $n > $maxAmt) {                                           # 防御非法情况
             $n = $maxAmt;
         }
-        $arr = self::getRankPlayers($req->mem, $zoneid, $index - 1, ($index + $n) - 1);
+        $arr = self::getRankPlayers($zoneid, $index - 1, ($index + $n) - 1);
 //
         $rankId = $index;
         $result = ObjectInit();
@@ -447,8 +447,8 @@ class PVPProc {
         $key_off = MemKey_User::PVP_OffensiveLog_zset($req->zoneid, $req->uid);
         $key_def = MemKey_User::PVP_DefensiveLog_zset($req->zoneid, $req->uid);
         // 拉取自己的挑战记录
-        $offLog = $req->mem->zrange($key_off, 0, self::maxLogCount);            # 主动挑战数据
-        $defLog = $req->mem->zrange($key_def, 0, self::maxLogCount);            # 防守数据
+        $offLog = gMem()->zrange($key_off, 0, self::maxLogCount);               # 主动挑战数据
+        $defLog = gMem()->zrange($key_def, 0, self::maxLogCount);               # 防守数据
         // Ps. 挑战记录分为2个榜, 且按照时间戳记录,晚于指定时间戳的判定为未读消息,挑战记录最多记录50条
         $pvp = new Info_UserPVP($req->userInfo->game->pvp);                     # 玩家竞技场数据
         $pvp->lastCheckDefLog_ts = now();                                       # 记录时间戳 
@@ -561,7 +561,7 @@ class PVPProc {
         if (count($arr) < self::matchCount) {                                   # 再不行, 准备机器人吧
             CLog::err('PVP刷对手数量不足, 赶快考虑加入机器人.', 'PVP');           // todo: 这里引入gm对手数据,
         }
-        $ret = self::GetPlayerInfosForPVP(gMem(), $zoneid, $arr);
+        $ret = self::GetPlayerInfosForPVP($zoneid, $arr);
         return $ret;
     }
 
@@ -628,11 +628,10 @@ class PVPProc {
      * @param int $stop
      * @return type
      */
-    private static function getRankPlayers($mem, $zoneid, $start, $stop) {
+    private static function getRankPlayers($zoneid, $start, $stop) {
         $key = MemKey_GameRun::Game_PVPScoreByZoneSeason_zset($zoneid, self::GetCurSeasonID());
-        $retUidsWithScore = $mem->zrevrange($key, $start, $stop, true);
-
-        return self::GetPlayerInfosForPVP($mem, $zoneid, $retUidsWithScore);
+        $retUidsWithScore = gMem()->zrevrange($key, $start, $stop, true);
+        return self::GetPlayerInfosForPVP($zoneid, $retUidsWithScore);
     }
 
 //    private  static function get
@@ -644,14 +643,11 @@ class PVPProc {
      * @param type $retUidsWithScore
      * @return type
      */
-    private static function GetPlayerInfosForPVP($mem, $zoneid, $retUidsWithScore) {
+    private static function GetPlayerInfosForPVP($zoneid, $retUidsWithScore) {
         $arr = ArrayInit();
         foreach ($retUidsWithScore as $uid => $score) {
-//            isEditor() && $userGameInfo = new loyalsoft\UserInfoMo;
-            $userGameInfo = UserProc::getUserInfo($mem, $zoneid, $uid);         # 玩家数据 
-//            var_dump($userGameInfo->game->pvp);
-            $teamConfig = $userGameInfo->game->pvp->defTeam;                    # 防守阵容
-//            var_dump($teamConfig);
+            $userGameInfo = UserProc::getUserInfo($zoneid, $uid);               # 玩家数据  
+            $teamConfig = $userGameInfo->game->pvp->defTeam;                    # 防守阵容 
             $heros = new \stdClass();                                           # 英雄集合
             foreach ($teamConfig as $hid) {
                 if ($hid > 0) {

+ 19 - 38
Gameserver/Amfphp/process/PayProc/YuanBaoPayProc.php

@@ -120,59 +120,40 @@ class YuanBaoPayProc {
      * @param Req $req
      */
     public static function m_refreshChargeOrders($req) {
-        if (!$req) {
-            $resp = Resp::err(ErrCode::err_method_notimplement);
-            return $resp;
-        }
-
+        my_Assert($req, ErrCode::err_method_notimplement);
         $userinfo = $req->userInfo;
-        if (!$userinfo) {
-            $resp = Resp::err(ErrCode::user_no_err);
-            return $resp;
-        }
+        my_Assert($userinfo, ErrCode::user_no_err);
         $user = $userinfo->game->baseInfo;
-        if (!$user) {
-            $resp = Resp::err(ErrCode::user_no_err);
-            return $resp;
-        }
+        my_Assert($user, ErrCode::user_no_err);
 // 客户端参数解析
-        $uid = $req->uid;  // userID
-        $zoneid = $req->zoneid;  // 分区Id
-        if (!$uid || ($zoneid < 1)) {
-            $resp = Resp::err(ErrCode::paras_err);
-            return $resp;
-        }
-        $mem = $req->mem;
-        if (!$mem) {
-            $resp = Resp::err(ErrCode::err_method_notimplement);
-            return $resp;
-        }
-# 取挂起的订单数据
-        $orders = $mem->get(MemKey_User::PayOrders($zoneid, $uid));
-
+        $uid = $req->uid;                                                       // userID
+        $zoneid = $req->zoneid;                                                 // 分区Id
+        my_Assert(!empty($uid) && ($zoneid > 0), ErrCode::paras_err);
+        $mem = gMem();
+        my_Assert($mem, ErrCode::err_mem);
+        $orders = $mem->get(MemKey_User::PayOrders($zoneid, $uid));             # 取挂起的订单数据 
         $amt = 0;
         $num = 0;
-        if ($orders == null) { # 订单为空
+        if ($orders == null) {                                                  # 订单为空
             $orders = ArrayInit();
         }
-        foreach ($orders as $order) {  # 多张订单合并
+        foreach ($orders as $order) {                                           # 多张订单合并
             $amt += $order->price;
             $num += $order->amt;
         }
 
-        $user->yuanbao += $num; #
-        $user->charge_amt += $amt;  # 历史充值记录(单位分)
-
+        $user->yuanbao += $num;                                                 #
+        $user->charge_amt += $amt;                                              # 历史充值记录(单位分)
 
-        if ($amt > 0 # 充值金额大于0,且首付标志为false才可以
-                && isset($req->userInfo->game->privateState->firstPayGift)   # 无此字段代表已经领取礼包
+        if ($amt > 0                                                            # 充值金额大于0,且首付标志为false才可以
+                && isset($req->userInfo->game->privateState->firstPayGift)      # 无此字段代表已经领取礼包
                 && !$req->userInfo->game->privateState->firstPayGift) {
             $req->userInfo->game->privateState->firstPayGift = true;
         }
-        $orders = ArrayInit(); # 清空
-        $mem->set(MemKey_User::PayOrders($zoneid, $uid), $orders); # 清理已经处理过的订单
-        UserProc::updateUserInfo(); // 更新玩家数据信息
-        $resp = Resp::ok($user->yuanbao); // 直接将$user的最新值返回给客户端
+        $orders = ArrayInit();                                                  # 清空
+        $mem->set(MemKey_User::PayOrders($zoneid, $uid), $orders);              # 清理已经处理过的订单
+        UserProc::updateUserInfo();                                             # 更新玩家数据信息
+        $resp = Resp::ok($user->yuanbao);                                       // 直接将$user的最新值返回给客户端
 # todo: 这里可以再加一条订单记录
         self::_mPayLog($zoneid, $uid, MLogType::Inquire, 0, #
                 $num, $user->yuanbao, $user->cash, $user->gift_cash, $user->charge_amt, "刷新订单");

+ 22 - 22
Gameserver/Amfphp/process/RankProc.php

@@ -49,9 +49,9 @@ class RankProc {
      * @return type
      */
     static function _RankGetTop1($req, $key) {
-        $no1 = $req->mem->zrevrange($key, 0, 0, true);                          # 取第一名信息
+        $no1 = gMem()->zrevrange($key, 0, 0, true);                             # 取第一名信息
         foreach ($no1 as $uid => $score) {                                      # 
-            $uinfo = UserProc::getUserInfo($req->mem, $req->zoneid, $uid);      # 读取玩家信息
+            $uinfo = UserProc::getUserInfo($req->zoneid, $uid);         # 读取玩家信息
             return array(#                                                      # 拼装玩家信息
                 'uid' => $uid,
                 'name' => my_null_default($uinfo->game->baseInfo->name, ""),
@@ -72,10 +72,10 @@ class RankProc {
      */
     static function GetFpowerBreachLog($req) {
         $key = MemKey_GameRun::Game_Rank_FPowerBreakLog_hash($req->zoneid);     # redis key 战力榜突破记录
-        $kv = $req->mem->hgetall($key);
+        $kv = gMem()->hgetall($key);
         $ret = array();
         foreach ($kv as $condition => $uid) {
-            $uinfo = UserProc::getUserInfo($req->mem, $req->zoneid, $uid);      # 读取玩家信息
+            $uinfo = UserProc::getUserInfo($req->zoneid, $uid);      # 读取玩家信息
             $ret[$condition] = array(#                                          # 拼装玩家信息
                 'uid' => $uid,
                 'name' => my_null_default($uinfo->game->baseInfo->name, ""),
@@ -102,10 +102,10 @@ class RankProc {
         if ($endId > $MaxRankId) {                                              # 榜单长度 
             $endId = $MaxRankId;
         }
-        $uids = $req->mem->zrevrange($key, $startid, $endId, true);             # 取上榜玩家
+        $uids = gMem()->zrevrange($key, $startid, $endId, true);                # 取上榜玩家
         $userInfos = array();                                                   # 玩家信息
         foreach ($uids as $uid => $score) {
-            $uinfo = UserProc::getUserInfo($req->mem, $req->zoneid, $uid);      # 读取玩家信息
+            $uinfo = UserProc::getUserInfo($req->zoneid, $uid);      # 读取玩家信息
             $userInfos[] = array(#                                              # 拼装玩家信息
                 'uid' => $uid,
                 'name' => my_null_default($uinfo->game->baseInfo->name, ""),
@@ -114,8 +114,8 @@ class RankProc {
                 'headImg' => my_null_default($uinfo->game->baseInfo->headImg, "")
             );
         }
-        $user_ranking = $req->mem->zrevrank($key, $req->uid);                   # 查询玩家排名
-        $user_score = $req->mem->zscore($key, $req->uid);                       # 查询积分
+        $user_ranking = gMem()->zrevrank($key, $req->uid);                      # 查询玩家排名
+        $user_score = gMem()->zscore($key, $req->uid);                          # 查询积分
         return Resp::ok(array(#                                                 # 返回值
                     'rankInfo' => $userInfos,
                     'ranking' => my_null_default($user_ranking, 100) + 1, #     # 修正下排名(zset中是从零开始的)
@@ -131,7 +131,7 @@ class RankProc {
         $rewardCondition = $req->paras[0];                                      # 领取奖励的档次条件(战斗力数值)
 
         $key = MemKey_GameRun::Game_FightPowerRank_zset($req->zoneid);          # redis key
-        $no1 = $req->mem->zrevrange($key, 0, 0, true);                          # 取第一名信息
+        $no1 = gMem()->zrevrange($key, 0, 0, true);                             # 取第一名信息
         $_power = 0;
         foreach ($no1 as $uid => $power) {                                      # 
             $_power = $power;                                                   # 状元的站立值
@@ -157,8 +157,8 @@ class RankProc {
      */
     static function GetRankingOfUserFightPower($req) {
         $key = MemKey_GameRun::Game_FightPowerRank_zset($req->zoneid);          # redis key
-        $ranking = $req->mem->zrevrank($key, $req->uid);                        # 查询排名
-        $power = $req->mem->zscore($key, $req->uid);                            # 查询战斗力
+        $ranking = gMem()->zrevrank($key, $req->uid);                           # 查询排名
+        $power = gMem()->zscore($key, $req->uid);                               # 查询战斗力
         $ret = array(
             'ranking' => $ranking + 1, #                                        # 修正下排名(zset中是从零开始的)
             'power' => intval($power)
@@ -192,10 +192,10 @@ class RankProc {
      */
     static function GetPassgateBreachLog($req) {
         $key = MemKey_GameRun::Game_Rank_passage_BreachLog_hash($req->zoneid);     # redis key 战力榜突破记录
-        $kv = $req->mem->hgetall($key);
+        $kv = gMem()->hgetall($key);
         $ret = array();
         foreach ($kv as $condition => $uid) {
-            $uinfo = UserProc::getUserInfo($req->mem, $req->zoneid, $uid);      # 读取玩家信息
+            $uinfo = UserProc::getUserInfo($req->zoneid, $uid);      # 读取玩家信息
             $ret[$condition] = array(#                                          # 拼装玩家信息
                 'uid' => $uid,
                 'name' => my_null_default($uinfo->game->baseInfo->name, ""),
@@ -219,7 +219,7 @@ class RankProc {
 
         $privateState = $req->userInfo->game->privateState;
         $key = MemKey_GameRun::Game_Rank_passgate_zset($req->zoneid);           # redis key
-        $no1 = $req->mem->zrevrange($key, 0, 0, true);                          # 取第一名信息
+        $no1 = gMem()->zrevrange($key, 0, 0, true);                             # 取第一名信息
         $score = 0;
         foreach ($no1 as $uid => $_score) {                                     # 
             $score = $_score;                                                   # 状元的通关记录
@@ -255,10 +255,10 @@ class RankProc {
         if ($endId > $MaxRankId) {                                              # 榜单长度 
             $endId = $MaxRankId;
         }
-        $uids = $req->mem->zrevrange($key, $startid, $endId, true);             # 取上榜玩家
+        $uids = gMem()->zrevrange($key, $startid, $endId, true);                # 取上榜玩家
         $userInfos = array();                                                   # 玩家信息
         foreach ($uids as $uid => $score) {
-            $uinfo = UserProc::getUserInfo($req->mem, $req->zoneid, $uid);      # 读取玩家信息
+            $uinfo = UserProc::getUserInfo($req->zoneid, $uid);                 # 读取玩家信息
             $userInfos[] = array(#                                              # 拼装玩家信息
                 'uid' => $uid,
                 'name' => my_null_default($uinfo->game->baseInfo->name, ""),
@@ -268,8 +268,8 @@ class RankProc {
             );
         }
 
-        $user_ranking = $req->mem->zrevrank($key, $req->uid);                   # 查询玩家排名
-        $user_score = $req->mem->zscore($key, $req->uid);                       # 查询积分
+        $user_ranking = gMem()->zrevrank($key, $req->uid);                      # 查询玩家排名
+        $user_score = gMem()->zscore($key, $req->uid);                          # 查询积分
         return Resp::ok(array(#                                                 # 返回值
                     'rankInfo' => $userInfos,
                     'ranking' => my_null_default($user_ranking, 100) + 1, #      # 修正下排名(zset中是从零开始的), 如果是null => 榜单之外
@@ -283,8 +283,8 @@ class RankProc {
      */
     static function GetRankingOfUserPassGate($req) {
         $key = MemKey_GameRun::Game_Rank_passgate_zset($req->zoneid);           # redis key
-        $ranking = $req->mem->zrevrank($key, $req->uid);                        # 查询排名
-        $power = $req->mem->zscore($key, $req->uid);                            # 查询通关记录
+        $ranking = gMem()->zrevrank($key, $req->uid);                           # 查询排名
+        $power = gMem()->zscore($key, $req->uid);                               # 查询通关记录
         $ret = array(
             'ranking' => $ranking + 1, #                                        # 修正下排名(zset中是从零开始的)
             'power' => $power #                                                 # 通关记录
@@ -311,9 +311,9 @@ class RankProc {
         $key_count = MemKey_GameRun::Game_Rank_passgate_count_hash(req()->zoneid); # redis key 通关玩家计数
         $key_log = MemKey_GameRun::Game_Rank_passage_BreachLog_hash(req()->zoneid); # redis key 通关榜突破记录
 
-        $ranking = req()->mem->hincrby($key_count, $gateId, 1);                 # 添加通关计数
+        $ranking = gMem()->hincrby($key_count, $gateId, 1);                     # 添加通关计数
         $score = $gateId . (self::MaxUserCount - $ranking);                     # 计算通关记录的积分值
-        req()->mem->zadd($key_rank, array("$uid" => $score));                   # 更新玩家的通关记录
+        gMem()->zadd($key_rank, array("$uid" => $score));                       # 更新玩家的通关记录
 
         foreach (GameConfig::rankreward_passgate() as $condition => $reward) {    # 遍历突破奖励数据
             if ($gateId >= $condition && !gMem()->hexists($key_log, $condition)) {  # 判断是否达成突破奖励标准

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

@@ -605,7 +605,6 @@ class TaskProc {
             }
         }
         if ($bUpdate) {
-            Resp::addTag("isTaskUpdated", true);                                # 附加tag信息, 任务有更新
             CornerSignEventProc::OnTask_Plot_new(req());
         }
     }
@@ -642,7 +641,6 @@ class TaskProc {
         }
 
         if ($bUpdate) {
-            Resp::addTag("isTaskUpdated", true);                                # 附加tag信息, 任务有更新
             CornerSignEventProc::OnTask_Daily_new(req());
         }
     }

+ 5 - 6
Gameserver/Amfphp/process/UserProc.php

@@ -312,7 +312,7 @@ class UserProc {
      * @return Resp
      */
     public static function loginUserInfo($req) {
-        $userInfo = UserProc::getUserInfo(gMem(), $req->zoneid, $req->uid);     # 取玩家信息
+        $userInfo = UserProc::getUserInfo($req->zoneid, $req->uid);     # 取玩家信息
         if ($userInfo == null) {                                                # 新用户, -> 6006创建账号
             $ret = array(
                 'isNewUser' => true
@@ -474,13 +474,12 @@ class UserProc {
 // <editor-fold defaultstate="collapsed" desc="读写玩家数据">
 
     /**
-     * 玩家数据
-     * @param CRedisUtil $mem
+     * 玩家数据 
      * @param type $zoneid
      * @param type $uid
      * @return UserInfoMo 
      */
-    public static function getUserInfo($mem, $zoneid, $uid) {
+    public static function getUserInfo($zoneid, $uid) {
         $key = MemKey_User::Info_hash($zoneid, $uid);
         $a = new Data_UserGame();
         if (null == $a->readDataFromMem($key)) {
@@ -528,7 +527,7 @@ class UserProc {
      * @return Data_UserZoneInfo Description
      */
     public static function getUserZoneInfo($req) {
-        $ret = $req->mem->get(MemKey_User::Union_PlayedZoneInfo_normal($req->uid));
+        $ret = gMem()->get(MemKey_User::Union_PlayedZoneInfo_normal($req->uid));
         return $ret;
     }
 
@@ -557,7 +556,7 @@ class UserProc {
         }
         $userZoneInfo->lastZone = new Ins_ZoneInfo($zoneid, $level, $playerName, $headImg); # 更新玩家分区记录
         $userZoneInfo->playedZones->$zoneid = $userZoneInfo->lastZone;          # 玩过的分区集合
-        $req->mem->set(MemKey_User::Union_PlayedZoneInfo_normal($req->uid), $userZoneInfo); # 回写数据
+        gMem()->set(MemKey_User::Union_PlayedZoneInfo_normal($req->uid), $userZoneInfo); # 回写数据
     }
 
 // </editor-fold>

+ 2 - 0
Gameserver/Amfphp/test.php

@@ -22,3 +22,5 @@ $i = 9;
 
 var_dump($i++);
 var_dump($i);
+
+var_dump(Resp::err(3503, "时尚杂志opencv"));