#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#-------------------------------------------------------------------------------
|
#
|
##@package UseItem.Item_AddFBCnt
|
#
|
# @todo:Ôö¼Ó¸±±¾¿É½øÈë´ÎÊý
|
# @author xdh
|
# @date 2018-03-09
|
# @version 1.0
|
#
|
# ÏêϸÃèÊö: Ôö¼Ó¸±±¾¿É½øÈë´ÎÊý
|
#
|
#-------------------------------------------------------------------------------
|
#"""Version = 2018-03-09 12:00"""
|
#-------------------------------------------------------------------------------
|
|
import ItemCommon
|
import FBCommon
|
import PlayerControl
|
import ChConfig
|
import IpyGameDataPY
|
import time
|
|
def BatchUseItem(curPlayer, curRoleItem, tick, useCnt, exData):
|
##ÅúÁ¿Ê¹ÓÃÎïÆ·
|
itemTypeID = curRoleItem.GetItemTypeID()
|
curEff = curRoleItem.GetEffectByIndex(0)
|
mapID = curEff.GetEffectValue(0)
|
mapID = FBCommon.GetRecordMapID(mapID)
|
oldMaxCnt = FBCommon.GetEnterFBMaxCnt(curPlayer, mapID)
|
itemAddCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ItemAddFbCnt % mapID)
|
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ItemAddFbCnt % mapID, itemAddCnt+useCnt)
|
|
ItemCommon.DelItem(curPlayer, curRoleItem, useCnt, True, ChConfig.ItemDel_AddFBCnt)
|
FBCommon.Sync_FBPlayerFBInfoData(curPlayer, mapID)
|
PlayerControl.NotifyCode(curPlayer, 'AddActivityCount_1', [itemTypeID, mapID, useCnt])
|
|
#·âħ̳´ÎÊý³¬¹ýÉÏÏÞʱҪ¼Ç¼µ¹¼ÆÊ±Ê£Óàʱ¼ä
|
lastRegainTime = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FbCntRegainStartTime % mapID)
|
if lastRegainTime:
|
ipyData = FBCommon.GetFBIpyData(mapID)
|
if ipyData:
|
maxDayTimes = ipyData.GetDayTimes()
|
enterCnt = FBCommon.GetEnterFBCount(curPlayer, mapID)
|
if oldMaxCnt - enterCnt < maxDayTimes and oldMaxCnt - enterCnt + useCnt >= maxDayTimes:
|
curTime = int(time.time())
|
needTime = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FbCntRegainTotalTime % mapID)
|
if not needTime:
|
needTime = IpyGameDataPY.GetFuncCfg('FBCntRegainInterval')
|
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FbCntRegainTotalTime % mapID, needTime - (curTime-lastRegainTime))
|
FBCommon.NotifyFBCntRegainInfo(curPlayer)
|
return True, useCnt
|
|