From d0e23ebc20cea58bdaa8c6a39ed95d7a6156e6fc Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 28 九月 2020 16:25:19 +0800
Subject: [PATCH] 1111 媒体卡发放邮件物品支持配置是否拍品,默认0非拍品;

---
 ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py |   67 ++++++++++++++++++++++++++++++---
 1 files changed, 60 insertions(+), 7 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py
index 7672c0a..1401d34 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerQuery.py
@@ -72,9 +72,14 @@
 import ChPyNetSendPack
 import NetPackCommon
 import AuctionHouse
+import PlayerFairyDomain
+import GameWorldSkyTower
+import GameWorldItem
+import PlayerAssist
 
 import time
 import datetime
+import json
 #---------------------------------------------------------------------
 #全局变量
 #---------------------------------------------------------------------
@@ -329,16 +334,25 @@
             SyncPlayerCrossMapNPCInfo(curPlayer, mapID, npcIDList, mapNPCInfoDict)
             return
         
+    serverGroupID = GameWorld.GetServerGroupID()
+    zoneIpyData = CrossRealmPlayer.GetCrossZoneIpyDataByServerGroupID(mapID, serverGroupID)
+    if not zoneIpyData:
+        return
+    zoneID = zoneIpyData.GetZoneID()
+    
     # 本服缓存超时,发送跨服服务器查询
     playerID = curPlayer.GetPlayerID()
-    CrossRealmMsg.SendMsgToCrossServer(ShareDefine.ClientServerMsg_QueryNPCInfo, {"PlayerID":playerID, "MapID":mapID, "NPCIDList":npcIDList})
+    dataMsg = {"PlayerID":playerID, "ZoneID":zoneID, "MapID":mapID, "NPCIDList":npcIDList}
+    CrossRealmMsg.SendMsgToCrossServer(ShareDefine.ClientServerMsg_QueryNPCInfo, dataMsg)
     return
 
 def ClientServerMsg_QueryNPCInfo(serverGroupID, msgData):
     ## 收到子服请求查看跨服地图NPC个数信息
     
+    zoneID = msgData["ZoneID"]
     mapID = msgData["MapID"]
-    zoneIpyData = CrossRealmPlayer.GetServerCrossZoneMapIpyData(mapID, serverGroupID)
+    
+    zoneIpyData = CrossRealmPlayer.GetServerCrossZoneMapIpyData(zoneID, mapID)
     if not zoneIpyData:
         return
     realMapID = zoneIpyData.GetMapID()
@@ -493,6 +507,11 @@
         PlayerCompensation.SendPersonalItemMailBatch(eval(resultName))
         return
     
+    if callName == "SendEntireMail":
+        mailTypeKey, getDays, limitLV, limitLVType, addItemList, paramList, gold, goldPaper, silver, detail, moneySource = eval(resultName)
+        PlayerCompensation.SendEntireMail(mailTypeKey, getDays, limitLV, limitLVType, addItemList, paramList, gold, goldPaper, silver, detail, moneySource)
+        return
+    
     if callName == "SendMsgToCrossServer":
         msgType, dataMsg = eval(resultName)
         CrossRealmMsg.SendMsgToCrossServer(msgType, dataMsg)
@@ -510,6 +529,14 @@
     if callName == 'CrossNotify':
         serverGroupIDList, crossNotifyList = eval(resultName)
         PlayerControl.CrossNotify(serverGroupIDList, crossNotifyList)
+        return
+    
+    if callName == "DynamicLineMapStateChange":
+        PlayerFB.OnCrossDynamicLineStateChange(eval(resultName))
+        return
+    
+    if callName == "DynamicLineMapInitOK":
+        PlayerFB.OnCrossDynamicMapReset(eval(resultName))
         return
     
     if callName == "CommMapServerInitOK":
@@ -695,6 +722,11 @@
         GameWorldProcess.UpdGlobalKillCount(eval(resultName))
         return
     
+    # 缓存装备广播信息中的装备明细信息
+    if callName == "NotifyEquipDetailInfo":
+        GameWorldItem.OnCacheNotifyEquipDetailInfo(json.loads(resultName), tick)
+        return
+    
     #生成仙盟红包
     if callName == "MapServer_CreatRedPacket":
         PlayerFamilyRedPacket.MapServer_CreatRedPacket(eval(resultName))
@@ -754,15 +786,25 @@
         AuctionHouse.MapServer_AuctionHouseLogic(curPlayer, eval(resultName), tick)
         return
     
+    # 协助
+    if callName == "PlayerAssist":
+        curPlayer = None
+        if srcPlayerID:
+            curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(srcPlayerID)
+            if not curPlayer:
+                return
+        PlayerAssist.MapServer_PlayerAssistLogic(curPlayer, eval(resultName), tick)
+        return
+    
     if callName == "TeamMemFuncData":
         PlayerTeam.MapServer_TeamMemFuncData(srcPlayerID, eval(resultName))
         return
     
-    #封魔坛结束
-    if callName == "SealDemonOver":
-        playerID, lineID, rank = eval(resultName)
-        PyDataManager.GetSealDemonRecordManager().UpdateSealDemonRecord(playerID,lineID,rank)
-        return
+#    #封魔坛结束
+#    if callName == "SealDemonOver":
+#        playerID, lineID, rank = eval(resultName)
+#        PyDataManager.GetSealDemonRecordManager().UpdateSealDemonRecord(playerID,lineID,rank)
+#        return
     
     #查询副本功能线路人数
     if callName == "FBLinePlayerCnt":
@@ -821,6 +863,10 @@
     #骑宠BOSS结束
     if callName =="HorsePetBossOver":
         PlayerHorsePetBoss.HorsePetBossKilled(int(resultName))
+        return
+    #缥缈仙域事件出现
+    if callName =="AddFairyDomainEvent":
+        PlayerFairyDomain.AddFairyDomainEvent(eval(resultName))
         return
     
 #---return分割线-----------------------------------------------------------------
@@ -887,6 +933,13 @@
         if ret == None:
             return
         resultName = '%s' % ret
+    
+    # 天星塔
+    if callName == "SkyTower":
+        ret = GameWorldSkyTower.MapServer_SkyTowerInfo(eval(resultName))
+        if ret == None:
+            return
+        resultName = '%s' % ret
         
 #    # 战盟仓库
 #    if callName == "FamilyStore":

--
Gitblit v1.8.0