1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/python
# -*- coding: GBK -*-
#-------------------------------------------------------------------------------
#
#-------------------------------------------------------------------------------
#
##@package Skill.GameSkills.SkillModule_31
#
# @todo:ÊÍ·ÅÕßħ·¨ÖµÉÏÏްٷֱȻØÄ§
# @author hxp
# @date 2015-3-5
# @version 1.1
#
# @change: "2015-04-17 10:30" hxp ÐÞ¸ÄΪ¿É¸ù¾Ý²»Í¬µÄ»ØÄ§ÀàÐͼÆËã»ØÄ§Á¿; »ØÄ§Á¿Îª0²»ÊÍ·Å
#
# ÏêϸÃèÊö: ÊÍ·ÅÕßħ·¨ÖµÉÏÏްٷֱȻØÄ§
#
#---------------------------------------------------------------------
"""Version = 2015-04-17 10:30"""
 
#µ¼Èë
import ChConfig
import GameWorld
import BaseAttack
import SkillCommon
import GameObj
#---------------------------------------------------------------------
#È«¾Ö±äÁ¿
#---------------------------------------------------------------------
 
#---------------------------------------------------------------------
##ÊÍ·ÅÕßѪÁ¿ÉÏÏްٷֱȻØÑª
# @param attacker ¹¥»÷Õß
# @param defender ·ÀÊØÕß
# @param curSkill ¼¼ÄÜʵÀý
# @param tagRoundPosX ÇøÓò¼¼ÄÜÆðµãX
# @param tagRoundPosY ÇøÓò¼¼ÄÜÆðµãY
# @param tick Ê±¼ä´Á
# @return ·µ»ØÖµ, ÊÇ·ñÊͷųɹ¦
# @remarks ÊÍ·ÅÕßѪÁ¿ÉÏÏްٷֱȻØÑª
def UseSkill(attacker, defender, curSkill, tagRoundPosX, tagRoundPosY, isEnhanceSkill, tick):
    attackDis = curSkill.GetAtkRadius()
    if attackDis not in ChConfig.Def_CureTypeList:
        GameWorld.ErrLog("¼¼ÄÜÄ£°å31 Ã»ÓУ¨GetAtkRadius£©ÀàÐÍ %s" % attackDis)
        return
    
    addValue = SkillCommon.GetRestoreMP(attacker, defender, curSkill, attackDis)
    if addValue <= 0:
        return
    
    SkillCommon.SkillAddMP(defender, curSkill.GetSkillTypeID(), addValue)
    
    #·Ç¹¥»÷Ðͼ¼ÄÜ(Ò²²»ÊÇBuff)ÐèÒªµ÷ÓÃÊ©·¨³É¹¦
    return BaseAttack.DoAttackSuccess(attacker, GameObj.GetHP(attacker), defender, curSkill, tick, addValue)