From 388823edfe6308cba6f76ca6dc4f20022c5cb2be Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期一, 30 六月 2025 19:03:50 +0800 Subject: [PATCH] 10431 【英文】看广告获得限时代金券 --- ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerAssist.py | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerAssist.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerAssist.py index 384e068..0cff408 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerAssist.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerAssist.py @@ -232,6 +232,8 @@ setattr(dbData, "ObjID", 0) # NPC实例ID setattr(dbData, "ServerGroupID", serverGroupID) setattr(dbData, "OffLineTime", 0) # 发布玩家离线时间戳 + setattr(dbData, "Face", 0) + setattr(dbData, "FacePic", 0) assistType = AssistType_Unknown if dbData.NPCID: @@ -247,6 +249,8 @@ def OnInitAssistThanksData(thanksMgr, dbData): ## 初始化协助感谢数据额外处理 + setattr(dbData, "Face", 0) + setattr(dbData, "FacePic", 0) setattr(dbData, "AssistPlayerDict", {}) if dbData.AssistPlayer and dbData.AssistPlayer.startswith("{") and dbData.AssistPlayer.endswith("}"): dbData.AssistPlayerDict = eval(dbData.AssistPlayer) @@ -847,6 +851,8 @@ # 以下是非DB字段属性 OnInitAssistData(assistObj, isSaveDB, serverGroupID) assistObj.ObjID = objID + assistObj.Face = curPlayer.GetFace() + assistObj.FacePic = curPlayer.GetFacePic() #assistMgr = PyDataManager.GetPlayerAssistPyManager() assistMgr.allAssistDict[assistGUID] = assistObj @@ -871,6 +877,8 @@ assistInfo.Job = assistObj.Job assistInfo.LV = assistObj.LV assistInfo.RealmLV = assistObj.RealmLV + assistInfo.Face = assistObj.Face + assistInfo.FacePic = assistObj.FacePic assistInfo.MapID = assistObj.MapID assistInfo.LineID = assistObj.LineID assistInfo.NPCID = assistObj.NPCID @@ -1200,10 +1208,40 @@ assistThanksMgr = PyDataManager.GetPlayerAssistThanksPyManager() OnInitAssistThanksData(assistThanksMgr, newThanks) + newThanks.Face = curPlayer.GetFace() + newThanks.FacePic = curPlayer.GetFacePic() GameWorld.DebugLog("增加协助感谢: itemID=%s,mapID=%s,lineID=%s,npcID=%s,exData=%s" % (itemID, mapID, lineID, npcID, exData), playerID) return +def AddNewAssistThanksEx(curPlayer, itemID, assistPlayerDict, mapID=0, lineID=0, npcID=0, exData=""): + ## 添加协助感谢数据,自动更新 TodayGiftCount 及 玩家信息 + DailyDateStr = GameWorld.GetDailyDateStr() + assistThanksMgr = PyDataManager.GetPlayerAssistThanksPyManager() + for assistPlayerID, assistPlayerInfoDict in assistPlayerDict.items(): + + # 查找今日该感谢物品已接受感谢次数 + TodayGiftCount = 0 + assistPlayerThanksList = assistThanksMgr.assistPlayerThanksDict.get(assistPlayerID, []) + for thanks in assistPlayerThanksList: + if DailyDateStr != thanks.DailyDateStr or itemID != thanks.ItemID: + continue + if assistPlayerID not in thanks.AssistPlayerDict: + continue + infoDict = thanks.AssistPlayerDict[assistPlayerID] + TodayGiftCount = infoDict.get("TodayGiftCount", 0) + break + + assistPlayerInfoDict["TodayGiftCount"] = TodayGiftCount + + # 更新玩家信息,之后有需要再扩展,可以从玩家缓存或直接取在线玩家实例赋值 name job 等信息 + + GameWorld.DebugLog("获取今日接受感谢次数: itemID=%s,TodayGiftCount=%s" % (itemID, TodayGiftCount), assistPlayerID) + GameWorld.DebugLog("AddNewAssistThanksEx itemID=%s,assistPlayerDict=%s" % (itemID, assistPlayerDict), curPlayer.GetPlayerID()) + AddNewAssistThanks(curPlayer, itemID, mapID, lineID, assistPlayerDict, npcID, exData) + return + + #// B0 14 使用协助感谢礼盒 #tagCGUseAssistThanksGift # #struct tagCGUseAssistThanksGift @@ -1259,6 +1297,8 @@ assistPlayerInfo.Job = assistPlayerInfoDict["Job"] assistPlayerInfo.LV = assistPlayerInfoDict["LV"] assistPlayerInfo.RealmLV = assistPlayerInfoDict["RealmLV"] + assistPlayerInfo.Face = assistPlayerInfoDict.get("Face", 0) + assistPlayerInfo.FacePic = assistPlayerInfoDict.get("FacePic", 0) previewPack.AssistPlayerList.append(assistPlayerInfo) previewPack.AssistPlayerCount = len(previewPack.AssistPlayerList) NetPackCommon.SendFakePack(curPlayer, previewPack) @@ -1332,6 +1372,8 @@ previewPack.Job = getThanks.Job previewPack.LV = getThanks.LV previewPack.RealmLV = getThanks.RealmLV + previewPack.Face = getThanks.Face + previewPack.FacePic = getThanks.FacePic previewPack.MapID = getThanks.MapID previewPack.LineID = getThanks.LineID previewPack.NPCID = getThanks.NPCID -- Gitblit v1.8.0