From ce6373a4c8a6b213478a42605a67d091aa23b19d Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 06 十一月 2023 22:17:29 +0800
Subject: [PATCH] 9952 【BT0.1】【主干】仙盟修改(额外通知打坐信息)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 60 ++++++++++++++++++++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyParty.py | 17 +++++
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 60 ++++++++++++++++++++
3 files changed, 137 insertions(+), 0 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index 2aaabb1..76d9b74 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -26921,6 +26921,66 @@
#------------------------------------------------------
+# A5 11 打坐信息 #tagMCFamilySitInfo
+
+class tagMCFamilySitInfo(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("ExpRound", c_ushort), # 已获得经验轮次
+ ("Exp", c_int), # 获得经验求余亿部分
+ ("ExpPoint", c_int), # 获得经验整除亿部分
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xA5
+ self.SubCmd = 0x11
+ return
+
+ def ReadData(self, stringData, _pos=0, _len=0):
+ self.Clear()
+ memmove(addressof(self), stringData[_pos:], self.GetLength())
+ return _pos + self.GetLength()
+
+ def Clear(self):
+ self.Cmd = 0xA5
+ self.SubCmd = 0x11
+ self.ExpRound = 0
+ self.Exp = 0
+ self.ExpPoint = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagMCFamilySitInfo)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// A5 11 打坐信息 //tagMCFamilySitInfo:
+ Cmd:%s,
+ SubCmd:%s,
+ ExpRound:%d,
+ Exp:%d,
+ ExpPoint:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.ExpRound,
+ self.Exp,
+ self.ExpPoint
+ )
+ return DumpString
+
+
+m_NAtagMCFamilySitInfo=tagMCFamilySitInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCFamilySitInfo.Cmd,m_NAtagMCFamilySitInfo.SubCmd))] = m_NAtagMCFamilySitInfo
+
+
+#------------------------------------------------------
# A5 09 仙盟阵法信息 #tagMCFamilyZhenfaInfo
class tagMCFamilyZhenfa(Structure):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index 2aaabb1..76d9b74 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -26921,6 +26921,66 @@
#------------------------------------------------------
+# A5 11 打坐信息 #tagMCFamilySitInfo
+
+class tagMCFamilySitInfo(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("ExpRound", c_ushort), # 已获得经验轮次
+ ("Exp", c_int), # 获得经验求余亿部分
+ ("ExpPoint", c_int), # 获得经验整除亿部分
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xA5
+ self.SubCmd = 0x11
+ return
+
+ def ReadData(self, stringData, _pos=0, _len=0):
+ self.Clear()
+ memmove(addressof(self), stringData[_pos:], self.GetLength())
+ return _pos + self.GetLength()
+
+ def Clear(self):
+ self.Cmd = 0xA5
+ self.SubCmd = 0x11
+ self.ExpRound = 0
+ self.Exp = 0
+ self.ExpPoint = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagMCFamilySitInfo)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// A5 11 打坐信息 //tagMCFamilySitInfo:
+ Cmd:%s,
+ SubCmd:%s,
+ ExpRound:%d,
+ Exp:%d,
+ ExpPoint:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.ExpRound,
+ self.Exp,
+ self.ExpPoint
+ )
+ return DumpString
+
+
+m_NAtagMCFamilySitInfo=tagMCFamilySitInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCFamilySitInfo.Cmd,m_NAtagMCFamilySitInfo.SubCmd))] = m_NAtagMCFamilySitInfo
+
+
+#------------------------------------------------------
# A5 09 仙盟阵法信息 #tagMCFamilyZhenfaInfo
class tagMCFamilyZhenfa(Structure):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyParty.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyParty.py
index 7ce205d..b1afa64 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyParty.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyParty.py
@@ -34,6 +34,8 @@
import ItemControler
import PlayerActivity
import PlayerTongTianLing
+import ChPyNetSendPack
+import NetPackCommon
#---战盟副本---
FBPlayerDict_TagPlayerID = 'XMYH_TagPlayerID%s' # 邀请传功目标玩家ID
@@ -52,6 +54,10 @@
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilySitExpRound, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilySitTotalExp, 0)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FamilySitTotalExpPoint, 0)
+ return
+
+def OnFBPlayerOnLogin(curPlayer):
+ SyncFamilySitInfo(curPlayer)
return
##开启副本
@@ -443,6 +449,7 @@
# @return 无意义
def DoExitFB(curPlayer, tick):
global g_familyMapPlayerIDDict
+ SyncFamilySitInfo(curPlayer)
lineID = GameWorld.GetGameWorld().GetLineID()
playerID = curPlayer.GetID()
if playerID in g_familyMapPlayerIDDict.get(lineID, []):
@@ -476,3 +483,13 @@
PlayerControl.GiveMoney(curPlayer, ShareDefine.TYPE_Price_FamilyActivity, addFamilyActivity)
GameWorld.DebugLog("增加本仙盟成员答题活跃令, playerID=%s,addFamilyActivity=%s" % (curPlayer.GetPlayerID(), addFamilyActivity))
return
+
+def SyncFamilySitInfo(curPlayer):
+ clientPack = ChPyNetSendPack.tagMCFamilySitInfo()
+ clientPack.Clear()
+ clientPack.ExpRound = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilySitExpRound)
+ clientPack.Exp = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilySitTotalExp)
+ clientPack.ExpPoint = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FamilySitTotalExpPoint)
+ NetPackCommon.SendFakePack(curPlayer, clientPack)
+ return
+
--
Gitblit v1.8.0