10352 【BT】免费买断版本(增加累充每日奖励)
| | |
| | | Def_PDict_ShareGameAwardState = "ShareGameAwardState" # 每日分享游戏领奖记录
|
| | | Def_PDict_GoodGameAwardState = "GoodGameAwardState" # 游戏好评领奖记录
|
| | | Def_PDict_LikeGameAwardState = "LikeGameAwardState" # 游戏点赞领奖记录
|
| | | Def_PDict_RechargeDayAward = "RechargeDayAward" # 累充每日奖励
|
| | | Def_PDict_EquipViewCacheState = "EquipViewCacheState" # 本次上线是否同步过装备缓存
|
| | | Def_PDict_PackDataSyncState = "PackDataSyncState" # 本次上线打包数据同步状态,按位存储是否同步 0-本服,1-跨服
|
| | | Def_PDict_PackDataSyncFightPower = "PackDataSyncFightPower" # 本次上线打包数据同步时的战力,用于对比,只对比求余亿部分即可
|
| | |
| | | Def_RewardType_OpenServerDailyAward, # 开服每日奖励 76
|
| | | Def_RewardType_TreasureCntAward, # 寻宝累计次数奖励 77
|
| | | Def_RewardType_LunhuidianAward, # 轮回殿奖励 78
|
| | | )= range(79)
|
| | | Def_RewardType_RechargeDayAward, # 累充每日奖励 79
|
| | | )= range(80)
|
| | |
|
| | | #boss复活相关活动定义
|
| | | BossRebornActIDList = (
|
| | |
| | | awardState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OpenSererDailyAward)
|
| | | if awardState:
|
| | | Sync_RewardGetRecordInfo(curPlayer, ChConfig.Def_RewardType_OpenServerDailyAward, awardState)
|
| | | #累充每日奖励
|
| | | awardState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_RechargeDayAward)
|
| | | if awardState:
|
| | | Sync_RewardGetRecordInfo(curPlayer, ChConfig.Def_RewardType_RechargeDayAward, awardState)
|
| | |
|
| | | curPlayer.SetState(0) # 脱机挂恢复为正常上线
|
| | | curPlayer.SetCountryLastWeekHornor(0) # 通知数据库是否保存还是下线,做一次恢复,1为保存 0为正常下线
|
| | |
| | | openServerDayLimit = IpyGameDataPY.GetFuncCfg("OpenServerDailyAward", 1)
|
| | | if openServerDay >= openServerDayLimit:
|
| | | OnGiveAwardByClient(curPlayer, rewardType, ChConfig.Def_PDict_OpenSererDailyAward, IpyGameDataPY.GetFuncEvalCfg("OpenServerDailyAward", 2), "OpenServerDailyAward")
|
| | | #累充每日奖励
|
| | | elif rewardType == ChConfig.Def_RewardType_RechargeDayAward:
|
| | | OnGetRechargeDayAward(curPlayer, rewardType)
|
| | | return
|
| | |
|
| | | def OnGetRechargeDayAward(curPlayer, rewardType):
|
| | | ## 领取累充每日奖励,取最高档
|
| | | realTotal = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CTGRealTotal)
|
| | | awardCoin = 0
|
| | | awardItemList = []
|
| | | dayAwardDict = IpyGameDataPY.GetFuncEvalCfg("RechargeDayAward", 1, {})
|
| | | for needCoinStr, itemList in dayAwardDict.items():
|
| | | needCoin = int(needCoinStr)
|
| | | if realTotal >= needCoin and needCoin > awardCoin:
|
| | | awardCoin = needCoin
|
| | | awardItemList = itemList
|
| | | GameWorld.DebugLog("领取累充每日最高档奖励: realTotal=%s,awardCoin=%s,%s" % (realTotal, awardCoin, awardItemList), curPlayer.GetPlayerID())
|
| | | if not awardItemList:
|
| | | return
|
| | | OnGiveAwardByClient(curPlayer, rewardType, ChConfig.Def_PDict_RechargeDayAward, awardItemList, "RechargeDayAward")
|
| | | return
|
| | |
|
| | | ## 领取创角奖励
|
| | | def OnGetCreateRoleAward(curPlayer):
|
| | | if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CreateRoleAwardState):
|
| | |
| | | if awardState:
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OpenSererDailyAward, 0)
|
| | | ChPlayer.Sync_RewardGetRecordInfo(curPlayer, ChConfig.Def_RewardType_OpenServerDailyAward, 0)
|
| | | #开服每日奖励
|
| | | awardState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_RechargeDayAward)
|
| | | if awardState:
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_RechargeDayAward, 0)
|
| | | ChPlayer.Sync_RewardGetRecordInfo(curPlayer, ChConfig.Def_RewardType_RechargeDayAward, 0)
|
| | | # 特殊时间点X点过天
|
| | | elif onEventType == ShareDefine.Def_OnEventTypeEx:
|
| | | # 资源找回
|