hxp
3 天以前 540eced2499bf2814f3264c0d41eb0e9c52b9957
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
@@ -284,6 +301,24 @@
                'AccID':curPlayer.GetAccID(), 'MapID':mapID, 'LineID':funcLineID}
    dataDict.update(drDict)
    SendEventPack("FBPass_%s" % mapID, dataDict, curPlayer)
    return
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)
    #战斗过关记录明细信息
    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
##累计登陆礼包
@@ -591,23 +626,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={}):