Kaynağa Gözat

fixed: 组装对手数据

gwang 5 yıl önce
ebeveyn
işleme
d6f2610f4a

+ 4 - 10
Gameserver/Amfphp/process/FightProc/PVPProc.php

@@ -698,16 +698,9 @@ class PVPProc {
      * @return type
      */
     private static function GetPlayerInfosForPVP($mem, $zoneid, $retUidsWithScore) {
-        $retUids = array_keys($retUidsWithScore);
-        $keysOfUserInfo = array_map(function($u)use($zoneid) {
-            return MemKey_User::Info_hash($zoneid, $u);
-        }, $retUids);
-        $arrUserInfos = $mem->getMulti($keysOfUserInfo);
         $arr = ArrayInit();
-        $i = 0;
-        foreach ($arrUserInfos as $userGameInfo) {                              # 遍历
-            isEditor() && $userGameInfo = new UserGameModel;                    # 语法辅助
-            $uid = $retUids[$i++];                                              # 当前UID
+        foreach ($retUidsWithScore as $uid => $score) {
+            $userGameInfo = UserProc::getUserInfo($mem, $zoneid, $uid);         # 玩家数据 
             $teamConfig = $userGameInfo->pvp->defTeam;                          # 防守阵容
             $heros = new \stdClass();                                           # 英雄集合
             foreach ($teamConfig->heros as $i => $hid) {
@@ -726,11 +719,12 @@ class PVPProc {
                 'equipment' => array("equipments" => my_null_default($userGameInfo->game->store->equipment, new \stdClass())), # 武器
                 'yanling' => array("items" => my_null_default($userGameInfo->game->store->yanling, new \stdClass())), # 言灵
                 'heros' => my_null_default($heros, new \stdClass()), #          # 英雄集合
-                'score' => $retUidsWithScore[$uid], #                           # 积分
+                'score' => $score, #                                            # 积分
                 'fpower' => $fpower, #                                          # 总战力
             );
             $arr[$uid] = $adversary;
         }
+
         if (count($arr) <= 0) {
             $arr = null;
         }

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

@@ -496,6 +496,7 @@ class UserProc {
      * @param CRedisUtil $mem
      * @param type $zoneid
      * @param type $uid
+     * @return UserInfoMo 
      */
     public static function getUserInfo($mem, $zoneid, $uid) {
         $key = MemKey_User::Info_hash($zoneid, $uid);

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

@@ -16,6 +16,7 @@
             <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/EmailProc.php</file>
             <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/UserProc.php</file>
             <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/base/CmdCode.php</file>
+            <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/base/ErrCode.php</file>
             <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/process/FightProc/PVPProc.php</file>
             <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/test.php</file>
             <file>file:/E:/www/ylsj2019/Gameserver/Amfphp/model/Const/globalsettings.php</file>