| | |
| | | __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint, 0)
|
| | | # 重置领奖记录
|
| | | __SetPDictValue(curPlayer, ChConfig.Def_PDict_ActivityAwardRecord, 0)
|
| | | #重置额外获得修行点数
|
| | | __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_ExtraRealmPoint, 0)
|
| | | #重新计算奖励阶段
|
| | | __CalcAwardStage(curPlayer)
|
| | | #重置可领取修行点,未领取的发邮件
|
| | | realmPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_RealmPoint)
|
| | | if realmPoint and GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Official):
|
| | | if GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_DailyQuest):
|
| | | PlayerControl.SendMailByKey('XXDForgetToPick', [curPlayer.GetID()], [(ChConfig.Def_ItemID_RealmPoint, realmPoint, 1)], [realmPoint])
|
| | | __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_RealmPoint, 0)
|
| | | # realmPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_RealmPoint)
|
| | | # if realmPoint and GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Official):
|
| | | # if GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_DailyQuest):
|
| | | # PlayerControl.SendMailByKey('XXDForgetToPick', [curPlayer.GetID()], [(ChConfig.Def_ItemID_RealmPoint, realmPoint, 1)], [realmPoint])
|
| | | # __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_RealmPoint, 0)
|
| | |
|
| | | SyncDailyActivityInfo(curPlayer)
|
| | | else:
|
| | |
| | |
|
| | | __SetPDictValue(curPlayer, key, addPbCnt)
|
| | |
|
| | | #curTotalPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint)
|
| | | #
|
| | | multiple = 1
|
| | | if addValue:
|
| | | #__SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint, nuwTotalPoint)
|
| | | multiple, extraPointLimit = __GetActionAddPer(curPlayer)
|
| | | curExtraPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_ExtraRealmPoint)
|
| | | addExtraPoint = max(0, min(addValue*(multiple-1),extraPointLimit-curExtraPoint)) if extraPointLimit else addValue*(multiple-1)
|
| | | __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_ExtraRealmPoint, curExtraPoint+addExtraPoint)
|
| | | addValue = addValue + addExtraPoint
|
| | | |
| | | realmPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_RealmPoint)
|
| | | __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_RealmPoint, realmPoint+addValue)
|
| | | curTotalPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint)
|
| | | __SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_TotalPoint, curTotalPoint+addValue)
|
| | | #realmPoint = __GetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_RealmPoint)
|
| | | #__SetPDictValue(curPlayer, ChConfig.Def_PDict_Activity_RealmPoint, realmPoint+addValue)
|
| | | SyncDailyActivityInfo(curPlayer)
|
| | |
|
| | | GameWorld.DebugLog("增加活跃度任务次数,activityNum=%s,addPbCnt=%s,addValue=%s, multiple=%s, addExtraPoint=%s,curExtraPoint=%s" |
| | | % (activityNum, addPbCnt, addValue, multiple, addExtraPoint, curExtraPoint), curPlayer.GetPlayerID())
|
| | | GameWorld.DebugLog("增加活跃度任务次数,activityNum=%s,addPbCnt=%s,addValue=%s, multiple=%s, addExtraPoint=%s,curExtraPoint=%s" |
| | | % (activityNum, addPbCnt, addValue, multiple, addExtraPoint, curExtraPoint), curPlayer.GetPlayerID())
|
| | | return
|
| | |
|
| | | def __GetActionAddPer(curPlayer):
|
| | |
| | | return
|
| | |
|
| | | # 给物品
|
| | | ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, isBind, [IPY_GameWorld.rptItem], True)
|
| | | ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, 0, [IPY_GameWorld.rptItem])
|
| | |
|
| | | # 更新已领取成功标记
|
| | | updAwardRecord = getAwardRecord | (1 << awardIndex)
|
| | |
| | | # return
|
| | |
|
| | | # 由GameServer决定
|
| | | if not GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_DailyActionState % dailyID):
|
| | | GameWorld.DebugLog("日常活动未开启!dailyID=%s" % dailyID)
|
| | | return
|
| | | # 目前跨服PK暂不需要判断,因为跨服PK次数结算在本服,玩家可能上次未结算离线,等非匹配期间上线,也需要加上,所以暂不判断
|
| | | if dailyID not in [ShareDefine.DailyActionID_CrossReamPK]:
|
| | | if not GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_DailyActionState % dailyID):
|
| | | GameWorld.DebugLog("日常活动未开启!dailyID=%s" % dailyID)
|
| | | return
|
| | |
|
| | | dayTimesLimit = GetMaxDayTimes(ipyData)#ipyData.GetDayTimes()
|
| | | weekTimesLimit = ipyData.GetWeekTimes()
|