From 0319231b301676f84b5caca4390768348fba79b9 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 27 二月 2026 20:18:26 +0800
Subject: [PATCH] 519 硬核渠道对接(登录)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py |   74 +++++++++++++++++-------------------
 1 files changed, 35 insertions(+), 39 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py
index 3406937..7365f9b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py
@@ -119,9 +119,9 @@
 # @param eventTypeStr: 事件类型标识
 # @param dataDict: 事件字典
 # @return None
-def SendEventPack(eventTypeStr, dataDict, curPlayer=None):
+def SendEventPack(eventTypeStr, dataDict, curPlayer=None, checkBatServer=True):
     
-    if GameWorld.IsBattleServer():
+    if checkBatServer and GameWorld.IsBattleServer():
         GameWorld.DebugLogEx("战斗服务器暂不做流向记录")
         return
     
@@ -138,6 +138,14 @@
     
     dataStr = str(dataDict)
     GameWorld.GetGameWorld().EventShell_SendEventEx(eventTypeStr, len(eventTypeStr), dataStr, len(dataStr))
+    return
+
+def DR_Reload(reloadType):
+    ## 重读流向
+    GroupName = GameWorld.GetServerGroupName()
+    ServerID = GameWorld.GetGameWorld().GetServerID()
+    dataDict = {"GroupName":GroupName, "ServerID":ServerID, "ReloadType":reloadType}
+    SendEventPack("Reload", dataDict, checkBatServer=False)
     return
 
 ## 登陆
@@ -247,6 +255,14 @@
     SendEventPack("CTGOK", dataDict, curPlayer)
     return
 
+def DR_FixVersion(curPlayer, fixName, fixDict):
+    ## 修正玩家数据版本流向
+    dataDict = {'PlayerID':curPlayer.GetPlayerID(), "PlayerName":curPlayer.GetPlayerName(), 
+                'AccID':curPlayer.GetAccID()}
+    dataDict.update(fixDict)
+    SendEventPack("FixVersion_%s" % fixName, dataDict, curPlayer)
+    return
+
 ## 玩家升级
 #  @param curPlayer: 玩家实例
 #  @param playerLV: 玩家等级
@@ -273,8 +289,9 @@
 
 def DR_MainLevelPass(curPlayer, lvID):
     ## 主线关卡过关
+    treeLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TreeLV)
     dataDict = {'PlayerID':curPlayer.GetPlayerID(), 'PlayerName':curPlayer.GetPlayerName(), 
-                'AccID':curPlayer.GetAccID(), 'lvID':lvID}
+                'AccID':curPlayer.GetAccID(), 'lvID':lvID, 'treeLV':treeLV}
     SendEventPack("MainLevelPass", dataDict, curPlayer)
     return
 
@@ -286,26 +303,22 @@
     SendEventPack("FBPass_%s" % mapID, dataDict, curPlayer)
     return
 
-##累计登陆礼包
-def DR_LoginDayAward(curPlayer, dayIndex):
-    dataDict = {'PlayerID':curPlayer.GetPlayerID(), 
-                'PlayerName':curPlayer.GetPlayerName(), 
-                'AccID':curPlayer.GetAccID(),
-                "DayIndex":dayIndex
-                }
+def DR_FightStat(reqPlayerID, mapID, funcLineID, isWin, turnNum, turnMax, heroCount, costTime, drHeroIDDict, guid):
+    ## 战斗统计
+    dataDict = {'PlayerID':reqPlayerID, 'mapID':mapID, 'funcLineID':funcLineID, 'isWin':isWin, 
+                'turnNum':turnNum, 'turnMax':turnMax, 'heroCount':heroCount, 'costTime':costTime, 'guid':guid}
+    SendEventPack("FightTime", dataDict, checkBatServer=False)
     
-    SendEventPack("LoginDayAward", dataDict, curPlayer)
-    return
-
-##等级礼包
-def DR_LVAward(curPlayer, awardID):
-    dataDict = {'PlayerID':curPlayer.GetPlayerID(), 
-                'PlayerName':curPlayer.GetPlayerName(), 
-                'AccID':curPlayer.GetAccID(),
-                "AwardID":awardID
-                }
-    
-    SendEventPack("LVAward", dataDict, curPlayer)
+    #战斗过关记录明细信息
+    if isWin:
+        mapPassDict = IpyGameDataPY.GetFuncEvalCfg("BattleRecord", 1, {})
+        if mapID in mapPassDict:
+            drLineID = mapPassDict[mapID]
+            if funcLineID >= drLineID:
+                failDRDict = {"heroIDDict":drHeroIDDict}
+                failDRDict.update(dataDict)
+                SendEventPack("FightPass_%s" % mapID, failDRDict, checkBatServer=False)
+                #SendEventPack("FightFail_%s" % mapID, failDRDict, checkBatServer=False)
     return
 
 ## GM执行命令操作
@@ -591,23 +604,6 @@
     PyGameData.g_fightpowerChangeDataRecordDict = {}
     #发送封包
     SendEventPack("FightPowerChangeInfo", dataDict, curPlayer)
-    return
-
-## 玩家周狂欢(七天巡礼)
-#  @return
-def DR_WeekPartyPoint(curPlayer, dayIndex, point):
-    dataDict = {'PlayerID':curPlayer.GetPlayerID(), 
-                'AccID':curPlayer.GetAccID(), 'dayIndex':dayIndex, 'point':point}
-    
-    #发送封包
-    SendEventPack("WeekPartyPoint", dataDict, curPlayer)
-    return
-def DR_FeastWeekPartyPoint(curPlayer, dayIndex, point):
-    ##节日巡礼
-    dataDict = {'PlayerID':curPlayer.GetPlayerID(), 
-                'AccID':curPlayer.GetAccID(), 'dayIndex':dayIndex, 'point':point}
-    #发送封包
-    SendEventPack("FeastWeekPartyPoint", dataDict, curPlayer)
     return
 
 def DR_MailSend(playerID, GUID, addDict={}):

--
Gitblit v1.8.0