hxp
2025-01-23 9f09ebb0a8c995d1240b1211636b03099f69b727
10352 【BT】免费买断版本(增加累充每日奖励)
3个文件已修改
33 ■■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -3698,6 +3698,7 @@
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"  # 本次上线打包数据同步时的战力,用于对比,只对比求余亿部分即可
@@ -6083,7 +6084,8 @@
Def_RewardType_OpenServerDailyAward, # 开服每日奖励 76
Def_RewardType_TreasureCntAward, # 寻宝累计次数奖励 77
Def_RewardType_LunhuidianAward, # 轮回殿奖励 78
)= range(79)
Def_RewardType_RechargeDayAward, # 累充每日奖励 79
)= range(80)
#boss复活相关活动定义
BossRebornActIDList = (
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py
@@ -979,6 +979,10 @@
    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为正常下线
@@ -5769,8 +5773,28 @@
        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):
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
@@ -582,6 +582,11 @@
        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:
        # 资源找回