| | |
| | | # @param tick 当前时间
|
| | | # @return None
|
| | | # @remarks 函数详细说明.
|
| | | def SetSkillRemainTime(curSkill, reduceSkillCDPer, tick, atkObj=None):
|
| | | def SetSkillRemainTime(curSkill, reduceSkillCDPer, tick, atkObj=None, forceSync=False):
|
| | | #GameWorld.Log(GameWorld.GetScript().OutputTrace())
|
| | | curSkill.SetLastUseTick(tick)
|
| | | coolDownTime = curSkill.GetCoolDownTime()
|
| | |
| | |
|
| | | # 被动技能的处理和主动技能区分
|
| | | curSkill.SetRemainTime(remainTime)
|
| | | if forceSync:
|
| | | curSkill.Sync_Skill()
|
| | | return
|
| | |
|
| | | # 减CD固定值
|
| | |
| | | remainTime = int(remainTime * max(0, ShareDefine.Def_MaxRateValue - reduceSkillCDPer) / ShareDefine.Def_MaxRateValue)
|
| | |
|
| | | curSkill.SetRemainTime(remainTime)
|
| | | if coolDownTime != remainTime:
|
| | | if forceSync or coolDownTime != remainTime:
|
| | | curSkill.Sync_Skill()
|
| | |
|
| | | #GameWorld.Log("技能: %s 剩余时间: %d"%(curSkill.GetSkillName(), curSkill.GetRemainTime()))
|