| | |
| | | import GameWorld
|
| | | import ChConfig
|
| | |
|
| | | def GetTemplateID(cfgID, dayIndex):
|
| | | if cfgID == None or dayIndex == None:
|
| | | return 0
|
| | | ipyData = IpyGameDataPY.GetIpyGameData("ActCostRebate", cfgID)
|
| | | if not ipyData:
|
| | | return 0
|
| | | templateIDList = ipyData.GetTemplateIDList()
|
| | | templateID = templateIDList[-1] if dayIndex >= len(templateIDList) else templateIDList[dayIndex]
|
| | | return templateID
|
| | |
|
| | | def OnPlayerLogin(curPlayer):
|
| | | isReset = __CheckPlayerCostRebateAction(curPlayer)
|
| | |
| | | #GameWorld.DebugLog("消费返利活动ID不变,不处理!", curPlayer.GetPlayerID())
|
| | | return
|
| | |
|
| | | templateID = actCostRebateInfo.get(ShareDefine.ActKey_TemplateID, 0)
|
| | | templateID = GetTemplateID(actCostRebateInfo.get(ShareDefine.ActKey_CfgID, 0), actCostRebateInfo.get(ShareDefine.ActKey_DayIndex, 0))
|
| | | playerTemplateID = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CostRebateTemplateID)
|
| | |
|
| | | GameWorld.DebugLog("消费返利重置! costRebateID=%s,playerCostRebateID=%s,state=%s,templateID=%s,playerTemplateID=%s"
|
| | |
| | | return
|
| | |
|
| | | actID = actCostRebateInfo.get(ShareDefine.ActKey_ID)
|
| | | templateID = actCostRebateInfo.get(ShareDefine.ActKey_TemplateID)
|
| | | templateID = GetTemplateID(actCostRebateInfo.get(ShareDefine.ActKey_CfgID, 0), actCostRebateInfo.get(ShareDefine.ActKey_DayIndex, 0))
|
| | | if not actID or not templateID:
|
| | | GameWorld.ErrLog("消费返利活动数据异常!actID=%s,templateID=%s" % (actID, templateID), curPlayer.GetPlayerID())
|
| | | return
|
| | |
| | | actCostRebateInfo = PyGameData.g_operationActionDict.get(ShareDefine.OperationActionName_CostRebate, {})
|
| | | costRebateID = actCostRebateInfo.get(ShareDefine.ActKey_ID, 0)
|
| | | state = actCostRebateInfo.get(ShareDefine.ActKey_State, 0)
|
| | | templateID = actCostRebateInfo.get(ShareDefine.ActKey_TemplateID, 0)
|
| | | templateID = GetTemplateID(actCostRebateInfo.get(ShareDefine.ActKey_CfgID, 0), actCostRebateInfo.get(ShareDefine.ActKey_DayIndex, 0))
|
| | | if not state or not templateID:
|
| | | GameWorld.DebugLog("没有消费返利活动,无法领奖!state=%s,templateID=%s" % (state, templateID), playerID)
|
| | | return
|
| | |
| | | if not actCostRebateInfo.get(ShareDefine.ActKey_State):
|
| | | return
|
| | |
|
| | | templateIDList = actCostRebateInfo.get(ShareDefine.ActKey_TemplateIDList)
|
| | | cfgID = actCostRebateInfo.get(ShareDefine.ActKey_CfgID)
|
| | | ipyData = IpyGameDataPY.GetIpyGameData("ActCostRebate", cfgID)
|
| | | if not ipyData:
|
| | | return
|
| | | |
| | | templateIDList = ipyData.GetTemplateIDList()
|
| | | if not templateIDList:
|
| | | return
|
| | |
|
| | | openServerDay = GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_ServerDay) + 1
|
| | | actInfo = ChPyNetSendPack.tagMCCostRebateInfo()
|
| | | actInfo.StartDate = actCostRebateInfo.get(ShareDefine.ActKey_StartDate, "")
|
| | | actInfo.EndtDate = actCostRebateInfo.get(ShareDefine.ActKey_EndDate, "")
|
| | | actInfo.LimitLV = actCostRebateInfo.get(ShareDefine.ActKey_LVLimit, 0)
|
| | | actInfo.IsDayReset = actCostRebateInfo.get(ShareDefine.ActKey_IsDayReset, 0)
|
| | | actInfo.StartDate = GameWorld.GetOperationActionDateStr(ipyData.GetStartDate(), openServerDay)
|
| | | actInfo.EndtDate = GameWorld.GetOperationActionDateStr(ipyData.GetEndDate(), openServerDay)
|
| | | actInfo.LimitLV = ipyData.GetLVLimit()
|
| | | actInfo.IsDayReset = ipyData.GetIsDayReset()
|
| | | actInfo.AwardDayInfo = []
|
| | | for templateID in templateIDList:
|
| | | ipyDataList = IpyGameDataPY.GetIpyGameDataList("CostRebateTemplate", templateID)
|