| | |
| | | import ItemCommon
|
| | | import NPCCommon
|
| | | import ReadChConfig
|
| | | import PlayerActivity
|
| | | import ChPyNetSendPack
|
| | | import NetPackCommon
|
| | | import IpyGameDataPY
|
| | |
| | | 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
|
| | |
| | | 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.OnEnterFBActivity(curPlayer, fbID, updCnt, addCountEx)
|
| | | #PlayerSuccess.AddEnterFBSuccess(curPlayer, fbID, addCountEx)
|
| | | 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())
|
| | |
| | | # if mapID in mapIDList:
|
| | | # return dataMapID
|
| | | return mapID
|
| | |
|
| | | def GetGeneralTrainMapIDList():
|
| | | ## 获取通用养成副本
|
| | | GeneralTrainMapIDList = IpyGameDataPY.GetConfigEx("GeneralTrainMapIDList")
|
| | | if not GeneralTrainMapIDList:
|
| | | GeneralTrainMapIDList = []
|
| | | ipyDataMgr = IpyGameDataPY.IPY_Data()
|
| | | for i in xrange(ipyDataMgr.GetFBGeneralTrainCount()):
|
| | | ipyData = ipyDataMgr.GetFBGeneralTrainByIndex(i)
|
| | | dMapID = ipyData.GetDataMapID()
|
| | | if dMapID not in GeneralTrainMapIDList:
|
| | | GeneralTrainMapIDList.append(dMapID)
|
| | | GeneralTrainMapIDList = IpyGameDataPY.SetConfigEx("GeneralTrainMapIDList", GeneralTrainMapIDList)
|
| | | #GameWorld.Log("加载GeneralTrainMapIDList=%s" % GeneralTrainMapIDList)
|
| | | |
| | | return GeneralTrainMapIDList
|
| | |
|
| | | def Sync_FBPlayerFBInfoData(curPlayer, mapIDInfo=None):
|
| | | ## 通知个人通用副本信息
|