From bfac0741b211495b04842925be88934524446dd5 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 19 二月 2025 17:21:48 +0800 Subject: [PATCH] 10263 【越南】【英文】【BT】【GM】【砍树】后端支持NPC仿真实玩家战斗和快速战斗(修复镜像战斗安全区无法PK的bug;) --- ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 38 insertions(+), 0 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py b/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py index 67c88dd..32db39d 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py @@ -26,9 +26,12 @@ import CrossRealmPK import AuctionHouse import PlayerAssist +import GameRecData import PlayerRecData import GameWorldMineArea import PyGameDataStruct +import PlayerPackData +import PlayerFuncTeam import IpyGameDataPY import PlayerCharm import PlayerLove @@ -148,6 +151,9 @@ cnt = 0 for dbData in self.playerViewCachePyDict.values(): + if dbData.PlayerID < 10000: + # 假人玩家不存储 + continue cnt += 1 savaData += dbData.getBuffer() @@ -311,6 +317,10 @@ class PyGameDataManager(object): def __init__(self): + self.DBPlayerPackDataManager = PlayerPackData.DBPlayerPackDataManager() + self.DBGameRecDataManager = GameRecData.DBGameRecDataManager() + self.DBPyFuncTeamManager = PlayerFuncTeam.DBPyFuncTeamManager() + self.DBPyFuncTeamMemManager = PlayerFuncTeam.DBPyFuncTeamMemManager() self.DBPlayerRecDataManager = PlayerRecData.DBPlayerRecDataManager() self.DBPyMineAreaAwardManager = GameWorldMineArea.DBPyMineAreaAwardManager() self.DBPyMineAreaRecordManager = GameWorldMineArea.DBPyMineAreaRecordManager() @@ -344,6 +354,10 @@ def GetSaveData(self): buff = "" + buff += self.DBPlayerPackDataManager.GetSaveData() + buff += self.DBGameRecDataManager.GetSaveData() + buff += self.DBPyFuncTeamManager.GetSaveData() + buff += self.DBPyFuncTeamMemManager.GetSaveData() buff += self.DBPlayerRecDataManager.GetSaveData() buff += self.DBPyMineAreaAwardManager.GetSaveData() buff += self.DBPyMineAreaRecordManager.GetSaveData() @@ -376,6 +390,10 @@ return buff def LoadGameData(self, gameBuffer, pos): + pos = self.DBPlayerPackDataManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer)) + pos = self.DBGameRecDataManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer)) + pos = self.DBPyFuncTeamManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer)) + pos = self.DBPyFuncTeamMemManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer)) pos = self.DBPlayerRecDataManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer)) pos = self.DBPyMineAreaAwardManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer)) pos = self.DBPyMineAreaRecordManager.LoadPyGameData(gameBuffer, pos, len(gameBuffer)) @@ -495,6 +513,26 @@ pyGameDataMgr = GetPyGameDataManager() return pyGameDataMgr.familyStoreItemManager +def GetDBGameRecDataManager(): + # 通用记录表新管理 + pyGameDataMgr = GetPyGameDataManager() + return pyGameDataMgr.DBGameRecDataManager + +def GetDBPlayerPackDataManager(): + # 玩家打包数据管理 + pyGameDataMgr = GetPyGameDataManager() + return pyGameDataMgr.DBPlayerPackDataManager + +def GetDBPyFuncTeamManager(): + # 功能队伍管理 + pyGameDataMgr = GetPyGameDataManager() + return pyGameDataMgr.DBPyFuncTeamManager + +#def GetDBPyFuncTeamMemManager(): +# # 功能队伍成员管理 +# pyGameDataMgr = GetPyGameDataManager() +# return pyGameDataMgr.DBPyFuncTeamMemManager + def GetDBPlayerRecDataManager(): # 玩家记录管理 pyGameDataMgr = GetPyGameDataManager() -- Gitblit v1.8.0