| | |
| | | import PlayerSuccess
|
| | | import PlayerActivity
|
| | | import PlayerBillboard
|
| | | import PlayerWeekParty
|
| | | import PlayerActLogin
|
| | | import EventReport
|
| | |
|
| | | import random
|
| | |
| | | #通关符印塔成就
|
| | | PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_PassRuneTower, 1, [passlv])
|
| | | PlayerBillboard.UpdateRuneTowerBillboard(curPlayer)
|
| | | PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_Tower, passlv, False, True)
|
| | | GameWorld.DebugLog(' 更新符印塔已通关数 %s' % passlv)
|
| | | return
|
| | |
|
| | |
| | | GameWorld.DebugLog("背包空间不够,发送邮件: mailItemList=%s" % str(prizeItemList), curPlayer.GetPlayerID())
|
| | | else:
|
| | | for itemID, itemCnt, isBind in prizeItemList:
|
| | | ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, isBind, [ShareDefine.rptRune],
|
| | | ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, 0, [ShareDefine.rptRune],
|
| | | event=["RuneTower", False, {}])
|
| | |
|
| | | moneyDict = {ShareDefine.TYPE_Price_Rune:addJH, ShareDefine.TYPE_Price_Ysog:RuneMagicEssence}
|
| | |
| | |
|
| | | def __GetEndAward(curPlayer, fbLevel):
|
| | | #结算奖励
|
| | | giveItemCountRateList = IpyGameDataPY.GetFuncEvalCfg('RuneAwardCntRate')
|
| | | giveItemCountRateList = GameWorld.GetDictValueByRangeKey(IpyGameDataPY.GetFuncEvalCfg('RuneAwardCntRate', 1, {}), fbLevel, [])
|
| | | giveItemCount = GameWorld.GetResultByRandomList(giveItemCountRateList)
|
| | | if not giveItemCount:
|
| | | return []
|
| | |
| | | InitRuneTypeColorInfo(curPlayer)
|
| | |
|
| | | giveItemList = []
|
| | | runeColorRateDict = IpyGameDataPY.GetFuncEvalCfg('RuneAwardColor')
|
| | | runeColorRateDict = GameWorld.GetDictValueByRangeKey(IpyGameDataPY.GetFuncEvalCfg('RuneAwardColor', 1, {}), fbLevel, {})
|
| | | for _ in xrange(giveItemCount):
|
| | | giveRuneType = random.choice(runeTypeList)
|
| | |
|
| | |
| | | giveRuneYsogDict = {}
|
| | | giveRunePoint = 0
|
| | | giveRuneYsog = 0
|
| | | giveItemCountRateList = IpyGameDataPY.GetFuncEvalCfg('RuneAwardCntRate', 2)
|
| | | runeColorRateDict = IpyGameDataPY.GetFuncEvalCfg('RuneAwardColor')
|
| | | |
| | | |
| | | ipyDataMgr = IpyGameDataPY.IPY_Data()
|
| | | for i in xrange(ipyDataMgr.GetRuneTowerCount()):
|
| | | ipyData = ipyDataMgr.GetRuneTowerByIndex(i)
|
| | |
| | | giveRunePoint += ipyData.GetSweepRunePoint()
|
| | | giveRuneYsogDict[floor] = giveRuneYsogDict.get(floor, 0) + ipyData.GetSweepYsog()
|
| | | giveRuneYsog += ipyData.GetSweepYsog()
|
| | | |
| | | giveItemCountRateList = GameWorld.GetDictValueByRangeKey(IpyGameDataPY.GetFuncEvalCfg('RuneAwardCntRate', 2, {}), towerLV, [])
|
| | | giveItemCount = GameWorld.GetResultByRandomList(giveItemCountRateList)
|
| | | if not giveItemCount:
|
| | | continue
|
| | | runeTypeList = GetRuneTypeByTowerLV(towerLV)
|
| | | if not runeTypeList:
|
| | | continue
|
| | | |
| | | runeColorRateDict = GameWorld.GetDictValueByRangeKey(IpyGameDataPY.GetFuncEvalCfg('RuneAwardColor', 2, {}), towerLV, {})
|
| | | for _ in xrange(giveItemCount):
|
| | | giveRuneType = random.choice(runeTypeList)
|
| | |
|
| | |
| | | GameWorld.DebugLog("背包空间不够,发送邮件: mailItemList=%s" % str(giveItemList), curPlayer.GetPlayerID())
|
| | | else:
|
| | | for itemID, itemCnt, isBind in giveItemList:
|
| | | ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, isBind, [ShareDefine.rptRune],
|
| | | ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, 0, [ShareDefine.rptRune],
|
| | | event=["RuneTowerSD", False, {}])
|
| | | overDict = {FBCommon.Over_isSweep:1, FBCommon.Over_dataMapID:ChConfig.Def_FBMapID_TrialTower,
|
| | | "SDTowerItem":jsonItemDict, "SDTowerPoint":giveRunePointDict, "SDTowerYsog":giveRuneYsogDict}
|
| | |
| | | PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_TowerSD, 1)
|
| | | #BOSS复活活动
|
| | | PlayerBossReborn.AddBossRebornActionCnt(curPlayer, ChConfig.Def_BRAct_TowerSweep, 1)
|
| | | PlayerActLogin.AddLoginAwardActionCnt(curPlayer, ChConfig.Def_LoginAct_TowerSweep, 1)
|
| | | return True |