|  |  | 
 |  |  |     return todayGiftbag
 | 
 |  |  | 
 | 
 |  |  | def OnPlayerLogin(curPlayer):
 | 
 |  |  |     isReset = __CheckPlayerFlashGiftbagAction(curPlayer)
 | 
 |  |  |     if not isReset:
 | 
 |  |  |         actInfo = PyGameData.g_operationActionDict.get(ShareDefine.OperationActionName_FlashGiftbag, {})
 | 
 |  |  |         # 活动中同步活动信息
 | 
 |  |  |         if actInfo.get(ShareDefine.ActKey_State):
 | 
 |  |  |             giftbagTypeList = GetGiftbagTypeList(actInfo.get(ShareDefine.ActKey_CfgID, 0), actInfo.get(ShareDefine.ActKey_DayIndex, 0))
 | 
 |  |  |             SyncFlashGiftbagBuyCount(curPlayer, giftbagTypeList=giftbagTypeList)
 | 
 |  |  |             Sync_FlashGiftbagActionInfo(curPlayer)
 | 
 |  |  |     __CheckPlayerFlashGiftbagAction(curPlayer)
 | 
 |  |  |     return
 | 
 |  |  | 
 | 
 |  |  | def RefreshFlashGiftbagActionInfo():
 | 
 |  |  | 
 |  |  |     cfgID = actInfo.get(ShareDefine.ActKey_CfgID, 0)
 | 
 |  |  |     
 | 
 |  |  |     playerActID = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_FlashGiftbagID) # 玩家身上的活动ID
 | 
 |  |  |      | 
 |  |  |     giftbagTypeList = [] if not cfgID else GetGiftbagTypeList(cfgID, actInfo.get(ShareDefine.ActKey_DayIndex, 0))
 | 
 |  |  |     isReset = False
 | 
 |  |  |     if actID != playerActID:
 | 
 |  |  |         giftbagTypeList = GetGiftbagTypeList(cfgID, actInfo.get(ShareDefine.ActKey_DayIndex, 0))
 | 
 |  |  |         ResetGiftbagItemBuyCount(curPlayer, giftbagTypeList)
 | 
 |  |  |         isReset = True
 | 
 |  |  |         __ResetGiftbagItemBuyCount(curPlayer, giftbagTypeList)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FlashGiftbagID, actID)
 | 
 |  |  |         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FlashGiftbagMailState, 0)
 | 
 |  |  |         GameWorld.DebugLog("限时礼包重置! actID=%s,playerActID=%s,state=%s,giftbagTypeList=%s" % (actID, playerActID, state, giftbagTypeList), playerID)
 | 
 |  |  | 
 |  |  |             PlayerControl.SendMailByKey(flashGiftbagIpyData.GetMailKey(), [playerID], flashGiftbagIpyData.GetMailItemPrize())
 | 
 |  |  |             PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FlashGiftbagMailState, state)
 | 
 |  |  |             GameWorld.DebugLog("    发送新限时礼包邮件提醒! state=%s,playerMailState=%s" % (state, playerMailState), playerID)
 | 
 |  |  |     return True
 | 
 |  |  |              | 
 |  |  |     if not isReset and cfgID:
 | 
 |  |  |         if giftbagTypeList:
 | 
 |  |  |             SyncFlashGiftbagBuyCount(curPlayer, giftbagTypeList=giftbagTypeList)
 | 
 |  |  |         Sync_FlashGiftbagActionInfo(curPlayer)
 | 
 |  |  |     return isReset
 | 
 |  |  | 
 | 
 |  |  | def ResetGiftbagItemBuyCount(curPlayer, giftbagTypeList):
 | 
 |  |  | def __ResetGiftbagItemBuyCount(curPlayer, giftbagTypeList):
 | 
 |  |  |     ##重置限时礼包限购物品次数
 | 
 |  |  |     syncIDList = []
 | 
 |  |  |     ipyDataMgr = IpyGameDataPY.IPY_Data()
 | 
 |  |  | 
 |  |  |     if not actInfo:
 | 
 |  |  |         return
 | 
 |  |  |     
 | 
 |  |  |     if not actInfo.get(ShareDefine.ActKey_State):
 | 
 |  |  |         return
 | 
 |  |  |     #需要提前通知,所以去掉此限制
 | 
 |  |  |     #if not actInfo.get(ShareDefine.ActKey_State):
 | 
 |  |  |     #    return
 | 
 |  |  |     
 | 
 |  |  |     cfgID = actInfo.get(ShareDefine.ActKey_CfgID, 0)
 | 
 |  |  |     giftbagTypeList = GetGiftbagTypeList(actInfo.get(ShareDefine.ActKey_CfgID, 0), actInfo.get(ShareDefine.ActKey_DayIndex, 0))
 | 
 |  |  |     if not cfgID:
 | 
 |  |  |         return
 | 
 |  |  |     giftbagTypeList = GetGiftbagTypeList(cfgID, actInfo.get(ShareDefine.ActKey_DayIndex, 0))
 | 
 |  |  |     
 | 
 |  |  |     if not cfgID or not giftbagTypeList:
 | 
 |  |  |     if not giftbagTypeList:
 | 
 |  |  |         return
 | 
 |  |  |     
 | 
 |  |  |     flashGiftbagIpyData = IpyGameDataPY.GetIpyGameData("ActFlashGiftbag", cfgID)
 |