#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#
|
#
|
##@package SkillModule_14.py
|
#
|
# @todo:·¨Á¦È¼ÉÕ(ȼÉÕÄ¿±ê·¨Á¦°Ù·Ö±È)
|
#
|
# @author jiang
|
# @date 2012-07-13
|
# @version 1.0
|
# @note:
|
#
|
#------------------------------------------------------------------------------
|
"""Version = 2012-07-13 15:30"""
|
#------------------------------------------------------------------------------
|
# µ¼Èë
|
import ChConfig
|
import SkillCommon
|
import BaseAttack
|
import IPY_GameWorld
|
import GameWorld
|
#------------------------------------------------------------------------------
|
|
## ·¨Á¦È¼ÉÕ(ȼÉÕÄ¿±ê·¨Á¦°Ù·Ö±È)
|
# @param attacker ¹¥»÷ÕßʵÀý
|
# @param defender ·ÀÊØÕßʵÀý
|
# @param curSkill ¼¼ÄÜʵÀý
|
# @param tagRoundPosX ÇøÓò×ø±êX
|
# @param tagRoundPosY ÇøÓò×ø±êY
|
# @param isEnhanceSkill ÊÇ·ñΪ¸½¼Ó¼¼ÄÜ
|
# @param tick ʱ¼ä´Á
|
# @return ·µ»ØÖµÎªÕæ, Êͷųɹ¦
|
def UseSkill(attacker, defender, curSkill, tagRoundPosX, tagRoundPosY, isEnhanceSkill, tick):
|
skillEffect = curSkill.GetEffect(0)
|
skillPer = skillEffect.GetEffectValue(0) / float(ChConfig.Def_MaxRateValue)
|
skillEnhance = skillEffect.GetEffectValue(1)
|
skillTypeID = curSkill.GetSkillTypeID()
|
|
if defender.GetGameObjType() != IPY_GameWorld.gotPlayer:
|
GameWorld.ErrLog("·¨Á¦È¼ÉÕ skillId = %s Ä¿±ê²»ÊÇÍæ¼Ò"%(skillTypeID))
|
return
|
|
lostMPValue = max(defender.GetMP(), int(defender.GetMP() * skillPer + skillEnhance))
|
|
SkillCommon.SkillLostMP(defender, skillTypeID, attacker, lostMPValue, tick)
|
|
#´¦Àí¼¼ÄÜ´¥·¢ºÍ¹¥»÷³É¹¦Âß¼
|
return BaseAttack.DoSkillEx_AttackSucess(attacker, defender, curSkill, tick, isEnhanceSkill)
|
|