| | |
| | | #"""Version = 2017-07-04 15:00"""
|
| | | #---------------------------------------------------------------------
|
| | |
|
| | | import ChConfig
|
| | | import TurnAttack
|
| | | import PlayerControl
|
| | | import IpyGameDataPY
|
| | | import ReadChConfig
|
| | | import ShareDefine
|
| | |
| | |
|
| | | import datetime
|
| | | import urllib
|
| | | import json
|
| | |
|
| | | ## 初始化事件
|
| | | # @param None
|
| | |
| | | if curPlayer:
|
| | | if not GameWorld.IsNormalPlayer(curPlayer):
|
| | | return
|
| | | #UTF8 需要转成url编码才可用
|
| | | playerInfo = urllib.urlencode({"RoleID": curPlayer.GetName(),
|
| | | playerInfo = {"RoleID": curPlayer.GetName(),
|
| | | "AccountID": GameWorld.GetPlatformAccID(curPlayer.GetAccID()),
|
| | | "IP": curPlayer.GetIP(),
|
| | | "Level": curPlayer.GetLV(),
|
| | |
| | | "Job": curPlayer.GetJob(),
|
| | | "PlayerID": curPlayer.GetPlayerID(),
|
| | | "CreateRoleTime": curPlayer.GetCreateRoleTime(),
|
| | | }) |
| | | "CTGRealTotal": curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CTGRealTotal),
|
| | | "FightPower": PlayerControl.GetFightPower(curPlayer),
|
| | | "MainTaskID": PlayerControl.GetMainTaskID(curPlayer),
|
| | | "MainPassLVID": PlayerControl.GetPassMainLevelID(curPlayer),
|
| | | "FamilyName": curPlayer.GetFamilyName(),
|
| | | "ReamlLV":curPlayer.GetOfficialRank(),
|
| | | "TreeLV":curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TreeLV),
|
| | | "LineupHero":GetReportMainLineupInfo(curPlayer),
|
| | | }
|
| | | for mapID in ChConfig.ReportCenterMapIDList:
|
| | | playerInfo["FBPass%s" % mapID] = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FBPassLineID % mapID)
|
| | |
|
| | | OperatorID = GameWorld.GetPlayerPlatform(curPlayer)
|
| | | RegionName = GameWorld.GetPlayerServerSID(curPlayer)
|
| | | playerInfo = "&%s"%playerInfo
|
| | | playerInfo = "&%s" % urllib.urlencode(playerInfo) #UTF8 需要转成url编码才可用
|
| | |
|
| | | else:
|
| | | # 合服情况,玩家取自己服发送,非玩家数据按指定平台配置发
|
| | |
| | | # 第五个参数0代表get发送 1代表post
|
| | | GameWorld.GetGameWorld().EventReport_EventReport("", "", "", "", 0, getUrl)
|
| | | return
|
| | |
|
| | | def GetReportMainLineupInfo(curPlayer):
|
| | | lineup = TurnAttack.GetPlayerLineup(curPlayer, ShareDefine.Lineup_Main)
|
| | | if lineup.IsEmpty():
|
| | | return {}
|
| | | |
| | | heroDict = {}
|
| | | curPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptHero)
|
| | | for posNum in lineup.GetPosNumList():
|
| | | hero = lineup.GetLineupHero(posNum)
|
| | | heroID = hero.heroID
|
| | | itemIndex = hero.itemIndex
|
| | | heroLV = 1
|
| | | star = 0
|
| | | if itemIndex >= 0 and itemIndex < curPack.GetCount():
|
| | | heroItem = curPack.GetAt(itemIndex)
|
| | | if heroItem and not heroItem.IsEmpty():
|
| | | heroLV = heroItem.GetUserAttr(ShareDefine.Def_IudetHeroLV)
|
| | | star = heroItem.GetUserAttr(ShareDefine.Def_IudetHeroStar)
|
| | | breakLV = heroItem.GetUserAttr(ShareDefine.Def_IudetHeroBreakLV)
|
| | | awakeLV = heroItem.GetUserAttr(ShareDefine.Def_IudetHeroAwakeLV)
|
| | | heroDict[str(posNum)] = {
|
| | | "HeroID":heroID,
|
| | | "SkinID":hero.skinID,
|
| | | "LV":heroLV,
|
| | | "Star":star,
|
| | | "BreakLV":breakLV,
|
| | | "AwakeLV":awakeLV,
|
| | | }
|
| | | return json.dumps(heroDict, ensure_ascii=False).replace(" ", "")
|
| | |
|
| | | ## =================================================================================================
|
| | |
|
| | | def WriteEvent_login(curPlayer):
|