From 229d066301a40c3e20a1167571c42185a4e6029b Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 20 三月 2026 11:03:56 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(主线关卡每个房间开始战斗时补通知当前进度;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/EventReport.py | 61 +++++++++++++++++-------------
1 files changed, 35 insertions(+), 26 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..9dcf009 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/EventReport.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/EventReport.py
@@ -32,6 +32,8 @@
#"""Version = 2017-07-04 15:00"""
#---------------------------------------------------------------------
+import ChConfig
+import PlayerControl
import IpyGameDataPY
import ReadChConfig
import ShareDefine
@@ -57,17 +59,18 @@
# @param eventParam 事件参数
# @param curPlayer
# @return None
-def EventReport(eventActionID, eventParam, curPlayer=None, OperatorID=""):
+def EventReport(eventActionID, eventParam, curPlayer=None, OperatorID="", checkNeed=True):
# 组成例子 eventParam 的格式必须是 xx=yy&zz=cc
# "http://192.168.0.249:12000/event_receiver?EventID=3099&OperatorID=test&PlayerCount=102&Time=2018-02-08 18:30:30&ProductID=snxxz&RegionName=s1"
- reportActionIDList = IpyGameDataPY.GetFuncEvalCfg("EventReport", 3)
- if reportActionIDList and eventActionID not in reportActionIDList:
- #GameWorld.DebugLog("非需要汇报的事件ID! %s" % eventActionID)
- return
- if eventActionID in IpyGameDataPY.GetFuncEvalCfg("EventReport", 1):
- #GameWorld.DebugLog("不需要汇报的事件! %s" % eventActionID)
- return
+ if checkNeed:
+ reportActionIDList = IpyGameDataPY.GetFuncEvalCfg("EventReport", 3)
+ if reportActionIDList and eventActionID not in reportActionIDList:
+ #GameWorld.DebugLog("非需要汇报的事件ID! %s" % eventActionID)
+ return
+ if eventActionID in IpyGameDataPY.GetFuncEvalCfg("EventReport", 1):
+ #GameWorld.DebugLog("不需要汇报的事件! %s" % eventActionID)
+ return
if not curPlayer and not OperatorID:
return
@@ -79,28 +82,33 @@
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(),
+ "ClientVersion":curPlayer.GetAccountData().GetClientVersion(),
+ "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),
+ }
+ 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:
- # 合服情况,玩家取自己服发送,非玩家数据按指定平台配置发
- sid = GameWorld.GetPlayerMainServerID(OperatorID)
- if not sid:
- GameWorld.ErrLog("GetPlayerMainServerID: %s-%s"%(OperatorID, sid))
- return
- RegionName = 's%s'%sid
+ serverID = GameWorld.GetGameWorld().GetServerID()
+ RegionName = 's%s'%serverID
if eventParam:
eventParam = "&%s"%eventParam
@@ -114,6 +122,7 @@
# 第五个参数0代表get发送 1代表post
GameWorld.GetGameWorld().EventReport_EventReport("", "", "", "", 0, getUrl)
return
+
## =================================================================================================
def WriteEvent_login(curPlayer):
--
Gitblit v1.8.0