|  |  |  | 
|---|
|  |  |  | AssistType_TeamFB, # 组队副本 | 
|---|
|  |  |  | ) = range(3) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | def RemoveOutofdateAssistThanks(): | 
|---|
|  |  |  | ## 移除过期的未完结感谢数据 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | timeoutDate = GameWorld.GetDatetimeByDiffDays(-7) | 
|---|
|  |  |  | assistThanksMgr = PyDataManager.GetPlayerAssistThanksPyManager() | 
|---|
|  |  |  | maxDoCount = len(assistThanksMgr.allAssistThanksList) | 
|---|
|  |  |  | syncPlayerIDList = [] | 
|---|
|  |  |  | removeCountTotal, delNoThanksCount, delUnGetThanksCount = 0, 0, 0 | 
|---|
|  |  |  | doCount = 0 | 
|---|
|  |  |  | while doCount < maxDoCount and assistThanksMgr.allAssistThanksList: | 
|---|
|  |  |  | doCount += 1 | 
|---|
|  |  |  | thanks = assistThanksMgr.allAssistThanksList[0] | 
|---|
|  |  |  | thanksDate = GameWorld.ChangeStrToDatetime(thanks.TimeStr) | 
|---|
|  |  |  | if thanksDate > timeoutDate: | 
|---|
|  |  |  | break | 
|---|
|  |  |  |  | 
|---|
|  |  |  | removeCountTotal += 1 | 
|---|
|  |  |  | # 移除过期的感谢数据 | 
|---|
|  |  |  | popThanks = assistThanksMgr.allAssistThanksList.pop(0) | 
|---|
|  |  |  | playerID = popThanks.PlayerID | 
|---|
|  |  |  | GUID = popThanks.GUID | 
|---|
|  |  |  | assistPlayerIDList = popThanks.AssistPlayerDict.keys() | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if playerID in assistThanksMgr.playerThanksDict: | 
|---|
|  |  |  | playerThanksList = assistThanksMgr.playerThanksDict[playerID] | 
|---|
|  |  |  | for i, thanks in enumerate(playerThanksList): | 
|---|
|  |  |  | if GUID == thanks.GUID: | 
|---|
|  |  |  | delNoThanksCount += 1 | 
|---|
|  |  |  | playerThanksList.pop(i) | 
|---|
|  |  |  | #GameWorld.DebugLog("    移除未感谢的数据: i=%s,GUID=%s,len=%s" % (i, thanks.GUID, len(playerThanksList))) | 
|---|
|  |  |  | break | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for assistPlayerID in assistPlayerIDList: | 
|---|
|  |  |  | if assistPlayerID not in assistThanksMgr.assistPlayerThanksDict: | 
|---|
|  |  |  | continue | 
|---|
|  |  |  | assistThanksList = assistThanksMgr.assistPlayerThanksDict[assistPlayerID] | 
|---|
|  |  |  | for i, thanks in enumerate(assistThanksList): | 
|---|
|  |  |  | if GUID == thanks.GUID: | 
|---|
|  |  |  | delUnGetThanksCount += 1 | 
|---|
|  |  |  | assistThanksList.pop(i) | 
|---|
|  |  |  | #GameWorld.DebugLog("    移除未接受感谢的数据: i=%s,GUID=%s,assistPlayerID=%s,len=%s" % (i, thanks.GUID, assistPlayerID, len(assistThanksList))) | 
|---|
|  |  |  | if assistPlayerID not in syncPlayerIDList: | 
|---|
|  |  |  | syncPlayerIDList.append(assistPlayerID) | 
|---|
|  |  |  | break | 
|---|
|  |  |  |  | 
|---|
|  |  |  | playerMgr = GameWorld.GetPlayerManager() | 
|---|
|  |  |  | for playerID in syncPlayerIDList: | 
|---|
|  |  |  | assistPlayer = playerMgr.FindPlayerByID(playerID) | 
|---|
|  |  |  | if assistPlayer: | 
|---|
|  |  |  | SyncCanGetAssistThanksGiftCount(assistPlayer, isForce=True) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if removeCountTotal: | 
|---|
|  |  |  | GameWorld.DebugLog("移除过期的未完结感谢数据: doCount=%s,maxDoCount=%s,removeCountTotal=%s,delNoThanksCount=%s,delUnGetThanksCount=%s,remainCount=%s" | 
|---|
|  |  |  | % (doCount, maxDoCount, removeCountTotal, delNoThanksCount, delUnGetThanksCount, len(assistThanksMgr.allAssistThanksList))) | 
|---|
|  |  |  | return | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | def OnPlayerLogin(curPlayer, isTJ=False): | 
|---|
|  |  |  | ## 玩家上线 | 
|---|