From 9d3eb54f791b846ef03ff4e3a9e96dde2bb2b88f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 10 一月 2025 19:17:14 +0800
Subject: [PATCH] 10263 【越南】【英文】后端支持NPC仿真实玩家战斗和快速战斗(修复战力不变时可能导致打包数据拉取失败bug;)
---
ServerPython/db/PyMongoDataServer/GMToolLogicProcess/Commands/GMT_GetPlayerInfo.py | 20 +++++++++++++++++++-
1 files changed, 19 insertions(+), 1 deletions(-)
diff --git a/ServerPython/db/PyMongoDataServer/GMToolLogicProcess/Commands/GMT_GetPlayerInfo.py b/ServerPython/db/PyMongoDataServer/GMToolLogicProcess/Commands/GMT_GetPlayerInfo.py
index 4113376..e8b83cf 100644
--- a/ServerPython/db/PyMongoDataServer/GMToolLogicProcess/Commands/GMT_GetPlayerInfo.py
+++ b/ServerPython/db/PyMongoDataServer/GMToolLogicProcess/Commands/GMT_GetPlayerInfo.py
@@ -90,6 +90,10 @@
if data == '%s'%GMCommon.Def_GMKey_PlayerName:
return GMCommon.Def_DoQueryLogDB, playerAccID
+ accountData = DataServerPlayerData.tagDSAccount()
+ accountData.ACCID = playerAccID
+ accountData.adoLoad(userdb[UCN_DSAccount])
+
collection = userdb[UCN_DBPlayer]
dbPlayer = DataServerPlayerData.tagDBPlayer()
dbPlayer.IsDeleted = 0
@@ -101,6 +105,7 @@
# 回复gm
return GMCommon.Def_NoTag, ''
+ roleDict = {}
moneyMinusDict = {}
collection = userdb[UCN_RoleNomalDict]
docs = collection.find({'PlayerID':dbPlayer.PlayerID})
@@ -113,8 +118,10 @@
obj.readRecord(doc['%s'%(i+1)])
if obj.DictName.startswith("MoneyMinus_") and obj.DictValue > 0:
moneyMinusDict[int(obj.DictName[len("MoneyMinus_"):])] = -obj.DictValue # 货币负值
- if 1 in moneyMinusDict and 2 in moneyMinusDict:
+ if 1 in moneyMinusDict and 2 in moneyMinusDict and 4 in moneyMinusDict:
break
+ if obj.DictValue > 0:
+ roleDict[obj.DictName] = obj.DictValue
playerInfo = {
'AccID':dbPlayer.AccID, # 账号
@@ -133,16 +140,27 @@
'Gold':moneyMinusDict[1] if 1 in moneyMinusDict else dbPlayer.Gold, # 元宝
'GoldPaper':moneyMinusDict[2] if 2 in moneyMinusDict else dbPlayer.GoldPaper, # 绑钻
'Silver':dbPlayer.Silver, # 银两
+ 'SilverPaper':moneyMinusDict[4] if 4 in moneyMinusDict else dbPlayer.SilverPaper, # 神玉
'FamilyName':dbPlayer.FamilyName, # 家族名称
'LogoffTime':dbPlayer.LogoffTime, #离线时间
'LoginTime':dbPlayer.LoginTime, # 上线时间
'LoginIP':dbPlayer.LoginIP, #登入IP
+ 'ClientVersion':accountData.ClientVersion, #客户端版本号
'Online':0,
}
+ # 需要额外同步的自定义货币
+ CurrencyValueDict = {}
+ for moneyType in [99, 98]:
+ if moneyType == 99:
+ moneyValue = dbPlayer.ExAttr11
+ else:
+ moneyValue = roleDict.get("PlayerCurrency_%s" % moneyType, 0)
+ CurrencyValueDict['PlayerCurrency_%s' % moneyType] = moneyValue
+ playerInfo.update(CurrencyValueDict)
return GMCommon.Def_Success, playerInfo
--
Gitblit v1.8.0