From 0c96af08f55d05ab40eae9f940467dd8eafae44c Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期二, 16 九月 2025 14:07:53 +0800 Subject: [PATCH] 129 【战斗】战斗系统-服务端(增加属性ID技能增伤65、技能减伤66;曹轶技能;被动触发增加属性支持;) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/LogicProcess/UserCtrlDB.py | 59 +++++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 37 insertions(+), 22 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/LogicProcess/UserCtrlDB.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/LogicProcess/UserCtrlDB.py index f3e9f06..9c88912 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/LogicProcess/UserCtrlDB.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/LogicProcess/UserCtrlDB.py @@ -415,12 +415,45 @@ return def findDBPlayer(self, playerID): + '''根据玩家ID查找dbPlayer + @return: None or tagDBPlayer + ''' col = self.db[UCN_DBPlayer] dbPlayer = DataServerPlayerData.tagDBPlayer() dbPlayer.IsDeleted = 0 if not dbPlayer.adoLoadCEx(col, {"PlayerID":playerID}): return return dbPlayer + + def findDBPlayerByName(self, playerName, backDBPlayer=False): + '''根据玩家名查找dbPlayer + @param backDBPlayer: 可指定返回 tagDBPlayer 实例,默认false,直接返回db数据字典 + @return: None or db数据字典{k:v, ...} or tagDBPlayer + ''' + collection = self.db[UCN_DBPlayer] + rec = collection.find_one({'PlayerName':fix_incomingText(playerName), 'IsDeleted':0}) + if not rec: + return + if backDBPlayer: + dbPlayer = DataServerPlayerData.tagDBPlayer() + dbPlayer.readRecord(rec) + return dbPlayer + return rec + + def findDBPlayerByAccID(self, accID, backDBPlayer=False): + '''根据玩家账号查找dbPlayer + @param backDBPlayer: 可指定返回 tagDBPlayer 实例,默认false,直接返回db数据字典 + @return: None or db数据字典{k:v, ...} or tagDBPlayer + ''' + collection = self.db[UCN_DBPlayer] + rec = collection.find_one({'AccID':fix_incomingText(accID), 'IsDeleted':0}) + if not rec: + return + if backDBPlayer: + dbPlayer = DataServerPlayerData.tagDBPlayer() + dbPlayer.readRecord(rec) + return dbPlayer + return rec def requestLogicProcess(self, pack): db = self.db @@ -899,7 +932,10 @@ self.packSend(sessionID, 0, 0, CommonDefine.atMergeLogic, MMORPGPack.stGame, MMORPGPack.stData, sendPack.GetBuffer()) - + def OnPlayerLogin(self, curPlayer): + ProjSpecialProcess.GMCmdPlayerLogin(curPlayer) + return + def OnGMToolCommand(self, db, pack): if CommonDefine.IsDebug(): @@ -3527,21 +3563,6 @@ DBPlayerRecData = DataServerPlayerData.tagDBPlayerRecData() data += DBPlayerRecData.adoQueryAll(collection) mylog.debug("tagDBPlayerRecData ok") - - collection = db[UCN_DBPyMineAreaAward] - DBPyMineAreaAward = DataServerPlayerData.tagDBPyMineAreaAward() - data += DBPyMineAreaAward.adoQueryAll(collection) - mylog.debug("tagDBPyMineAreaAward ok") - - collection = db[UCN_DBPyMineAreaRecord] - DBPyMineAreaRecord = DataServerPlayerData.tagDBPyMineAreaRecord() - data += DBPyMineAreaRecord.adoQueryAll(collection) - mylog.debug("tagDBPyMineAreaRecord ok") - - collection = db[UCN_DBPyMineAreaItem] - DBPyMineAreaItem = DataServerPlayerData.tagDBPyMineAreaItem() - data += DBPyMineAreaItem.adoQueryAll(collection) - mylog.debug("tagDBPyMineAreaItem ok") collection = db[UCN_DBPyCouple] DBPyCouple = DataServerPlayerData.tagDBPyCouple() @@ -3944,9 +3965,6 @@ gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyFuncTeam, DataServerPlayerData.tagDBPyFuncTeam, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyFuncTeamMem, DataServerPlayerData.tagDBPyFuncTeamMem, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPlayerRecData, DataServerPlayerData.tagDBPlayerRecData, db) - gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyMineAreaAward, DataServerPlayerData.tagDBPyMineAreaAward, db) - gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyMineAreaRecord, DataServerPlayerData.tagDBPyMineAreaRecord, db) - gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyMineAreaItem, DataServerPlayerData.tagDBPyMineAreaItem, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyCouple, DataServerPlayerData.tagDBPyCouple, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyUnNotifyLoveGiftRec, DataServerPlayerData.tagDBPyUnNotifyLoveGiftRec, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyCharmValueRec, DataServerPlayerData.tagDBPyCharmValueRec, db) @@ -4080,9 +4098,6 @@ gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyFuncTeam, DataServerPlayerData.tagDBPyFuncTeam, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyFuncTeamMem, DataServerPlayerData.tagDBPyFuncTeamMem, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPlayerRecData, DataServerPlayerData.tagDBPlayerRecData, db) - gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyMineAreaAward, DataServerPlayerData.tagDBPyMineAreaAward, db) - gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyMineAreaRecord, DataServerPlayerData.tagDBPyMineAreaRecord, db) - gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyMineAreaItem, DataServerPlayerData.tagDBPyMineAreaItem, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyCouple, DataServerPlayerData.tagDBPyCouple, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyUnNotifyLoveGiftRec, DataServerPlayerData.tagDBPyUnNotifyLoveGiftRec, db) gameDataReadPos = self.savegameServerWorldData(decompressGameData, gameDataReadPos, UCN_DBPyCharmValueRec, DataServerPlayerData.tagDBPyCharmValueRec, db) -- Gitblit v1.8.0