From ad9ca5656fe2b0af83ca3d3cd6b7cc5511047ba9 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 16 七月 2024 11:35:48 +0800
Subject: [PATCH] 9415 【主干】【港台】【越南】【砍树】【后端】古神战场(C107增加战场分区通知)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossBattlefield.py | 1 +
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 8 ++++++--
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py | 8 ++++++++
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 8 ++++++--
4 files changed, 21 insertions(+), 4 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index 5a731a2..259c4d8 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -50730,6 +50730,7 @@
("EnterCountWeek", c_int), # 本周总参与次数
("BuyOpenCountWeek", c_int), # 本周总购买召集次数
("HighScoreTotalWeek", c_int), # 本周每日最高分累加总分
+ ("ZoneID", c_ubyte), # 所属分区ID
]
def __init__(self):
@@ -50751,6 +50752,7 @@
self.EnterCountWeek = 0
self.BuyOpenCountWeek = 0
self.HighScoreTotalWeek = 0
+ self.ZoneID = 0
return
def GetLength(self):
@@ -50767,7 +50769,8 @@
HighScoreToday:%d,
EnterCountWeek:%d,
BuyOpenCountWeek:%d,
- HighScoreTotalWeek:%d
+ HighScoreTotalWeek:%d,
+ ZoneID:%d
'''\
%(
self.Cmd,
@@ -50776,7 +50779,8 @@
self.HighScoreToday,
self.EnterCountWeek,
self.BuyOpenCountWeek,
- self.HighScoreTotalWeek
+ self.HighScoreTotalWeek,
+ self.ZoneID
)
return DumpString
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index 5a731a2..259c4d8 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -50730,6 +50730,7 @@
("EnterCountWeek", c_int), # 本周总参与次数
("BuyOpenCountWeek", c_int), # 本周总购买召集次数
("HighScoreTotalWeek", c_int), # 本周每日最高分累加总分
+ ("ZoneID", c_ubyte), # 所属分区ID
]
def __init__(self):
@@ -50751,6 +50752,7 @@
self.EnterCountWeek = 0
self.BuyOpenCountWeek = 0
self.HighScoreTotalWeek = 0
+ self.ZoneID = 0
return
def GetLength(self):
@@ -50767,7 +50769,8 @@
HighScoreToday:%d,
EnterCountWeek:%d,
BuyOpenCountWeek:%d,
- HighScoreTotalWeek:%d
+ HighScoreTotalWeek:%d,
+ ZoneID:%d
'''\
%(
self.Cmd,
@@ -50776,7 +50779,8 @@
self.HighScoreToday,
self.EnterCountWeek,
self.BuyOpenCountWeek,
- self.HighScoreTotalWeek
+ self.HighScoreTotalWeek,
+ self.ZoneID
)
return DumpString
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py
index 04d3991..0245418 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py
@@ -51,6 +51,14 @@
return opName.decode('gbk').encode(GameWorld.GetCharacterEncoding()) + playerName
+def GetCrossPlayerZoneID(curPlayer, mapID):
+ ## 获取玩家跨服功能所属分区
+ serverGroupID = PlayerControl.GetPlayerServerGroupID(curPlayer)
+ zoneIpyData = GetCrossZoneIpyDataByServerGroupID(mapID, serverGroupID)
+ if not zoneIpyData:
+ return 0
+ return zoneIpyData.GetZoneID()
+
def GetCrossZoneIpyDataByServerGroupID(mapID, serverGroupID):
## 获取跨服分区
zoneTypeName = ChConfig.Def_CrossZoneTypeName.get(mapID, "CrossZoneComm")
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossBattlefield.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossBattlefield.py
index e078e9b..87d092d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossBattlefield.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossBattlefield.py
@@ -289,6 +289,7 @@
clientPack.EnterCountWeek = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_Battlefield_EnterCountWeek)
clientPack.BuyOpenCountWeek = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_Battlefield_BuyOpenCountWeek)
clientPack.HighScoreTotalWeek = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_Battlefield_HighScoreTotalWeek)
+ clientPack.ZoneID = CrossRealmPlayer.GetCrossPlayerZoneID(curPlayer, ChConfig.Def_FBMapID_CrossBattlefield)
NetPackCommon.SendFakePack(curPlayer, clientPack)
return
--
Gitblit v1.8.0