From 069a0af2eabef2682f612f241be44991d96d335a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 13 十二月 2025 12:14:38 +0800
Subject: [PATCH] 389 流向记录(汇报中心角色信息增加: 真实充值、战力、主线任务、主线过关、公会名、官职、祝福数、主阵容信息;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/EventReport.py | 68 ++++++++++++++++++++++++++++------
1 files changed, 56 insertions(+), 12 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/EventReport.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/EventReport.py
index 1c55019..8e3ea4c 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/EventReport.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/EventReport.py
@@ -32,6 +32,9 @@
#"""Version = 2017-07-04 15:00"""
#---------------------------------------------------------------------
+import ChConfig
+import TurnAttack
+import PlayerControl
import IpyGameDataPY
import ReadChConfig
import ShareDefine
@@ -39,6 +42,7 @@
import datetime
import urllib
+import json
## 初始化事件
# @param None
@@ -79,20 +83,29 @@
if curPlayer:
if not GameWorld.IsNormalPlayer(curPlayer):
return
- #UTF8 需要转成url编码才可用
- playerInfo = urllib.urlencode({"RoleID": curPlayer.GetName(),
- "AccountID": GameWorld.GetPlatformAccID(curPlayer.GetAccID()),
- "IP": curPlayer.GetIP(),
- "Level": curPlayer.GetLV(),
- "DeviceFlag": curPlayer.GetAccountData().GetDeviceFlag(),
- "Job": curPlayer.GetJob(),
- "PlayerID": curPlayer.GetPlayerID(),
- "CreateRoleTime": curPlayer.GetCreateRoleTime(),
- })
-
+ playerInfo = {"RoleID": curPlayer.GetName(),
+ "AccountID": GameWorld.GetPlatformAccID(curPlayer.GetAccID()),
+ "IP": curPlayer.GetIP(),
+ "Level": curPlayer.GetLV(),
+ "DeviceFlag": curPlayer.GetAccountData().GetDeviceFlag(),
+ "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:
# 合服情况,玩家取自己服发送,非玩家数据按指定平台配置发
@@ -114,6 +127,37 @@
# 第五个参数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):
--
Gitblit v1.8.0