| | |
| | |
|
| | |
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_RecoverGainData % index, historyMaxLine)
|
| | | if dataMapID == ChConfig.Def_FBMapID_MunekadoTrial:
|
| | | historyStar = GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, historyMaxLine-1, False, [dataMapID])
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_RecoverGainDataEx % index, historyStar)
|
| | |
|
| | | #更新可找回次数
|
| | | curCommonCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_RecoverFBCommonCnt % index, 0)
|
| | |
| | |
|
| | | infoDict = {ChConfig.Def_Cost_Reason_SonKey:recoverWay}
|
| | | for moneyType, moneyCnt in costMoneyDict.items():
|
| | | PlayerControl.PayMoney(curPlayer, moneyType, moneyCnt, ChConfig.Def_Cost_RecoverGain, infoDict)
|
| | | costMoneyList = PlayerControl.HaveMoneyEx(curPlayer, moneyType, moneyCnt)
|
| | | GameWorld.DebugLog(' moneyType=%s,moneyCnt=%s,costMoneyList=%s'%(moneyType, moneyCnt, costMoneyList))
|
| | | if not costMoneyList:
|
| | | return
|
| | | for mType, mCnt in costMoneyList:
|
| | | PlayerControl.PayMoney(curPlayer, mType, mCnt, ChConfig.Def_Cost_RecoverGain, infoDict)
|
| | |
|
| | |
|
| | | if totalExp > 0:
|
| | |
| | | costMoney = int(normalCostJade * recoverSecond / float(3600))
|
| | | else:
|
| | | costMoney = min(commonCnt, recoverCnt) * normalCostJade + vipCostJade * max(0, recoverCnt - commonCnt)
|
| | | costMoneyList = PlayerControl.HaveMoneyEx(curPlayer, ShareDefine.TYPE_Price_Gold_Paper_Money, costMoney)
|
| | | costMoneyList = [[ShareDefine.TYPE_Price_Gold_Paper_Money, costMoney]]
|
| | | else:
|
| | | costCopper = ipyData.GetCostCopper()
|
| | | if index == Def_TJGRecoverID:
|
| | | costMoney = int(costCopper * recoverSecond / float(3600))
|
| | | else:
|
| | | costMoney = recoverCnt * costCopper
|
| | | if PlayerControl.HaveMoney(curPlayer, IPY_GameWorld.TYPE_Price_Silver_Money, costMoney, False):
|
| | | costMoneyList = [[IPY_GameWorld.TYPE_Price_Silver_Money, costMoney]]
|
| | | else:
|
| | | costMoneyList = []
|
| | | |
| | | costMoneyList = [[IPY_GameWorld.TYPE_Price_Silver_Money, costMoney]]
|
| | | |
| | | return costMoneyList, recoverCnt
|
| | |
|
| | | def __GetCanRecoverCnt(curPlayer, index):
|
| | |
| | | reExp = PlayerControl.GetPlayerReExp(curPlayer)
|
| | | expRate = PlayerControl.GetLimitExpRate(curPlayer, ChConfig.ExpRateLimitType_Recover)
|
| | | extraData = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_RecoverGainData % index, 0)
|
| | | dataEx = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_RecoverGainDataEx % index, 0)
|
| | | |
| | | tjgExp = 0 #脱机挂找回经验
|
| | | exp = 0
|
| | | sp = 0
|
| | |
| | | numInfoPack.RecoverCnt = commonCnt
|
| | | numInfoPack.ExtraCnt = vipExtraCnt
|
| | | numInfoPack.ExtraData = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_RecoverGainData % index, 0)
|
| | | numInfoPack.ExtraData2 = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_RecoverGainDataEx % index, 0)
|
| | | sendPack.NumInfo.append(numInfoPack)
|
| | | sendPack.Num = len(sendPack.NumInfo)
|
| | | NetPackCommon.SendFakePack(curPlayer, sendPack)
|