#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#
|
# @todo: ¼¼ÄÜÉ˺¦Ôö¼Ó1010ºÍ1009Ч¹û
|
#
|
# @author: Alee
|
# @date 2017-12-7 ÏÂÎç04:48:02
|
# @version 1.0
|
#
|
# @note: Ö÷¼¼Äܹ¥»÷ÀàÊÜÆäËû¼¼ÄÜЧ¹û4000µÄÓ°Ïì
|
#
|
#---------------------------------------------------------------------
|
|
import SkillCommon
|
import ChConfig
|
import GameWorld
|
|
|
## ¼¼ÄÜÔöǿЧ¹û¸Ä±ä¼¼ÄÜÊý¾Ý
|
# @param skillData Ö÷Êͷż¼ÄÜ passiveEffectÓ°ÏìµÄ±»¶¯Ð§¹û
|
# @return None
|
def OnCalcSkillAttr(skillData, passiveEffect):
|
|
#
|
skillType = skillData.GetSkillType()
|
if skillType == ChConfig.Def_SkillType_Atk:
|
# Ö±½ÓµÄ¹¥»÷À༼ÄܸıäЧ¹ûÖµ
|
effect = SkillCommon.GetSkillEffectByEffectID(skillData, ChConfig.Def_Skill_Effect_Attack)
|
if effect:
|
effect.AddEffectValue(0, passiveEffect.GetEffectValue(1))
|
|
effect = SkillCommon.GetSkillEffectByEffectID(skillData, ChConfig.Def_Skill_Effect_AttackReplace)
|
if effect:
|
effect.AddEffectValue(0, passiveEffect.GetEffectValue(1))
|
|
return True
|
|
elif skillType == ChConfig.Def_SkillType_LstPlsBuffAtk:
|
# buffvalueµÚÒ»¸öÓÃÓÚ´æ´¢´ÎÊý£¬µÚ¶þ¸öÓÃÓÚ´æ´¢Ôö¼ÓÉ˺¦Öµ°Ù·Ö±È
|
skillData.AddBuffValueEx(1, passiveEffect.GetEffectValue(1))
|
|
return True
|
|
return False
|
|
# ¸ÅÂÊ´¥·¢
|
def CheckHappen(skillData, passiveEffect):
|
skillType = skillData.GetSkillType()
|
if skillType not in [ChConfig.Def_SkillType_Atk, ChConfig.Def_SkillType_LstPlsBuffAtk]:
|
return False
|
|
if not GameWorld.CanHappen(passiveEffect.GetEffectValue(2)):
|
return False
|
return True
|
|