| | |
| | | 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:
|
| | |
| | |
|
| | | 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)
|
| | |
| | | # 以下是非DB字段属性
|
| | | OnInitAssistData(assistObj, isSaveDB, serverGroupID)
|
| | | assistObj.ObjID = objID
|
| | | assistObj.Face = curPlayer.GetFace()
|
| | | assistObj.FacePic = curPlayer.GetFacePic()
|
| | |
|
| | | #assistMgr = PyDataManager.GetPlayerAssistPyManager()
|
| | | assistMgr.allAssistDict[assistGUID] = assistObj
|
| | |
| | | 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
|
| | |
| | |
|
| | | 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
|
| | |
| | | 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)
|
| | |
| | | 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
|