237 【福利内容】每日任务/每周任务/章节奖励-服务端(增加每日任务类型 6 ~ 10)
6个文件已修改
25 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_Zhanchui.py 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActivity.py 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHero.py 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -5234,7 +5234,12 @@
DailyTask_HeroCall, # 武将招募 3
DailyTask_Arena, # 演武场 4
DailyTask_GoldRush, # 淘金 5
) = range(1, 1 + 5)
DailyTask_CutTree, # 消耗X个战锤 6
DailyTask_HeroLVUP, # 武将升级x次 7
DailyTask_HeroStarUP, # 武将升星x次 8
DailyTask_GetMoney, # 获得货币x个 9
DailyTask_FBFinish, # 完成副本x次 10
) = range(1, 1 + 10)
# 任务类型定义
TaskTypeList = (
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py
@@ -18,6 +18,7 @@
import ItemCommon
import NPCCommon
import ReadChConfig
import PlayerActivity
import ChPyNetSendPack
import NetPackCommon
import IpyGameDataPY
@@ -1531,7 +1532,7 @@
def AddEnterFBCount(curPlayer, fbID, addCount=1, lineBit=-1, isFree=False):
    ## 增加玩家进入副本次数
    ## @param isFree: 是否免费进入的,免费的不增加实际进入次数,但需要触发进入次数额外处理,如活跃、成就等
    #addCountEx = addCount
    addCountEx = addCount
    addCount = 0 if isFree else addCount
    fbID = GetRecordMapID(fbID)
    enterCntKey = ChConfig.Def_Player_Dict_FbEnterCnt % fbID
@@ -1543,12 +1544,13 @@
        PlayerControl.NomalDictSetProperty(curPlayer, enterCntKey, updValue)
    else:
        maxCnt = GetEnterFBMaxCnt(curPlayer, fbID)
        if enterCnt >= maxCnt:
        if not isFree and enterCnt >= maxCnt:
            return False
        updCnt = min(maxCnt, enterCnt + addCount)
        addCount = updCnt-enterCnt
        PlayerControl.NomalDictSetProperty(curPlayer, enterCntKey, updCnt)
        
        PlayerActivity.AddDailyTaskValue(curPlayer, ChConfig.DailyTask_FBFinish, addCountEx, [fbID])
        updValue = updCnt
    GameWorld.DebugLog("    AddEnterFBCount fbID=%s, addCount=%s, lineBit=%s, enterCnt=%s,updValue=%s" 
                       % (fbID, addCount, lineBit, enterCnt, updValue), curPlayer.GetPlayerID())
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_Zhanchui.py
@@ -46,6 +46,7 @@
    itemList = FBCommon.GetPassAwardList(mapID, funcLineID)
    GameWorld.DebugLog("过关奖励: mapID=%s,funcLineID=%s,itemList=%s" % (mapID, funcLineID, itemList))
    # 首通不扣次数
    FBCommon.AddEnterFBCount(curPlayer, mapID, isFree=True)
    FBCommon.SetFBPass(curPlayer, mapID, funcLineID)
    ItemControler.GivePlayerItemOrMail(curPlayer, itemList, event=["Zhanchui", False, {}], isNotifyAward=False)
    overMsg.update({FBCommon.Over_itemInfo:FBCommon.GetJsonItemList(itemList)})
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerActivity.py
@@ -78,7 +78,8 @@
        taskConds = ipyData.GetTaskConds()
        if conds or taskConds:
            # 可按任务类型扩展不同的条件验证方式
            if taskConds != conds:
            if taskConds != tuple(conds):
                #GameWorld.DebugLog("条件不同taskConds=%s,conds=%s" % (taskConds, conds))
                continue
        needValue = ipyData.GetNeedValue()
        maxValue = max(maxValue, needValue)
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -53,6 +53,7 @@
import PlayerGoldInvest
import CrossRealmPlayer
import CrossPlayerData
import PlayerActivity
import ChNetSendPack
import PlayerState
import PlayerOnline
@@ -2801,7 +2802,7 @@
        PlayerLLMJ.AddUseZhanchui(curPlayer, price)
        PlayerPrestigeSys.AddRealmTaskValue(curPlayer, PlayerPrestigeSys.RealmTaskType_UseXiantao, price)
        PlayerTask.AddTaskValue(curPlayer, ChConfig.TaskType_CutTree, price)
        PlayerActivity.AddDailyTaskValue(curPlayer, ChConfig.DailyTask_CutTree, price)
        
    unitPrice = price if quantity == 1 else int(math.ceil(price * 1.0 / quantity)) # 单价
    #reason_name = "Unknown" if not costType else costType
@@ -3059,6 +3060,7 @@
    # 除钻石及绑钻外,未指定操作类型的不记录
    
    PlayerTask.AddTaskValue(curPlayer, ChConfig.TaskType_GetMoney, value, [priceType])
    PlayerActivity.AddDailyTaskValue(curPlayer, ChConfig.DailyTask_GetMoney, value, [priceType])
    
    if priceType == ShareDefine.TYPE_Price_FamilyCoin:
        PlayerFamily.AddFamilyContrib(curPlayer, value) # 公会币同步增加公会贡献
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHero.py
@@ -21,6 +21,7 @@
import IPY_GameWorld
import ItemControler
import ChPyNetSendPack
import PlayerActivity
import NetPackCommon
import PlayerControl
import PlayerOnline
@@ -350,6 +351,8 @@
    heroItem.SetUserAttr(ShareDefine.Def_IudetHeroLV, updHeroLV)
    
    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
    PlayerActivity.AddDailyTaskValue(curPlayer, ChConfig.DailyTask_HeroLVUP, 1)
    return
def GetHeroLVMax(heroItem):
@@ -468,6 +471,7 @@
    item.SetUserAttr(ShareDefine.Def_IudetHeroStar, updStar)
    if addStar > 0:
        __DoHeroStarTalentUp(item, addStar)
        PlayerActivity.AddDailyTaskValue(curPlayer, ChConfig.DailyTask_HeroStarUP, addStar)
    if isSync:
        heroItem.Sync_Item()