ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py
@@ -119,8 +119,12 @@
# @param eventTypeStr: 事件类型标识
# @param dataDict: 事件字典
# @return None
def SendEventPack(eventTypeStr, dataDict, curPlayer=None):
def SendEventPack(eventTypeStr, dataDict, curPlayer=None, checkBatServer=True):
    if checkBatServer and GameWorld.IsBattleServer():
        GameWorld.DebugLogEx("战斗服务器暂不做流向记录")
        return
    if curPlayer:
        if not GameWorld.IsNormalPlayer(curPlayer):
            return
@@ -134,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
## 登陆
@@ -179,6 +191,13 @@
                'LoginTime':str(loginTime), 'LogoutTime':str(logoutTime)}
    #发送封包
    SendEventPack("LogInOut", dataDict, curPlayer)
    return
def DR_OnlineTimeToday(curPlayer, onlineTime):
    ## 今日累计在线时长
    dataDict = {'PlayerID':curPlayer.GetPlayerID(), 'PlayerName':curPlayer.GetPlayerName(),
                'AccID':curPlayer.GetAccID(), 'OnlineTime':onlineTime}
    SendEventPack("OnlineTimeToday", dataDict)
    return
## 新增第一次登陆
@@ -262,8 +281,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
@@ -275,6 +295,19 @@
    SendEventPack("FBPass_%s" % mapID, dataDict, curPlayer)
    return
def DR_FightStat(reqPlayerID, mapID, funcLineID, isWin, turnNum, turnMax, heroCount, costTime, statInfo, drLineupInfo):
    ## 战斗统计
    dataDict = {'PlayerID':reqPlayerID, 'mapID':mapID, 'funcLineID':funcLineID, 'isWin':isWin,
                'turnNum':turnNum, 'turnMax':turnMax, 'heroCount':heroCount, 'costTime':costTime}
    SendEventPack("FightTime", dataDict, checkBatServer=False)
    #战斗失败的记录明细信息
    if not isWin:
        failDRDict = {"statInfo":statInfo, "drLineupInfo":drLineupInfo}
        failDRDict.update(dataDict)
        SendEventPack("FightFail_%s" % mapID, failDRDict, checkBatServer=False)
    return
##累计登陆礼包
def DR_LoginDayAward(curPlayer, dayIndex):
    dataDict = {'PlayerID':curPlayer.GetPlayerID(),