| | |
| | | import IpyGameDataPY
|
| | | import ItemCommon
|
| | | import ChConfig
|
| | | import SkillShell
|
| | |
|
| | | ##批量使用物品
|
| | | # @param curPlayer: 玩家实例
|
| | |
| | | def BatchUseItem(curPlayer, curRoleItem, tick, useCnt, exData):
|
| | | curEff = curRoleItem.GetEffectByIndex(0)
|
| | | effectID = curEff.GetEffectID()
|
| | | if effectID not in ChConfig.Def_Effect_ResetAttrPoint:
|
| | | if effectID != ChConfig.Def_Effect_ResetAttrPoint:
|
| | | return
|
| | | resetID = curEff.GetEffectValue(0)
|
| | | resetPoint = curEff.GetEffectValue(0) * useCnt
|
| | | if not DoResetAttrPoint(curPlayer, resetID, resetPoint):
|
| | | if not resetID and exData:
|
| | | resetID = exData
|
| | | resetPoint = curEff.GetEffectValue(1) * useCnt
|
| | | if not DoResetAttrPoint(curPlayer, resetID, resetPoint, curRoleItem.GetItemTypeID()):
|
| | | return
|
| | |
|
| | | #扣除物品
|
| | |
| | | realResetPoint = curPoint
|
| | | else:
|
| | | realResetPoint = min(resetPoint, curPoint)
|
| | | if not realResetPoint:
|
| | | continue
|
| | | resetPointTotal += realResetPoint
|
| | | updPoint = max(curPoint - realResetPoint, 0)
|
| | | PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_AddPointValue % resetID, updPoint)
|
| | |
| | | #刷新人物所有状态
|
| | | playerControl = PlayerControl.PlayerControl(curPlayer)
|
| | | playerControl.RefreshPlayerAttrState()
|
| | | |
| | | #更新技能专精
|
| | | SkillShell.RefreshElementSkillByAttr(curPlayer, resetIDList)
|
| | | return True
|
| | |
|
| | | ## 逻辑实现 //返回值为是否使用成功(外层通知特效)
|