hxp
2019-12-17 3128b603606057b8b6ddbaf6a86e4493b4ce292a
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!/usr/bin/python
# -*- coding: GBK -*-
#
# @todo: Ôö¼ÓÖ¸¶¨Æ·ÖÊ×øÆïµÄij¸öÊôÐÔЧ¹û°Ù·Ö±È
#
# @author: Alee
# @date 2018-1-20 ÏÂÎç02:50:26
# @version 1.0
#
# @note: 
#
#---------------------------------------------------------------------
#µ¼Èë
import ChConfig
import PlayerControl
import ShareDefine
import IpyGameDataPY
import GameWorld
#---------------------------------------------------------------------
 
## buffÏßÐÔÔö¼ÓÊôÐÔ
#  @param defender Buff³ÐÊÜÕß
#  @param curEffect ¼¼ÄÜЧ¹û
#  @param calcDict ¼¼ÄÜЧ¹ûÀÛ¼Ó×ܱí
#  @return None
def OnCalcBuffEx(defender, curEffect, calcDict, curBuff):
    attrType = curEffect.GetEffectValue(1)
    value = GetHorseAttrByQuality(defender, curEffect.GetEffectValue(0), attrType)
    value = int(value*curEffect.GetEffectValue(2)*1.0/ChConfig.Def_MaxRateValue)
    
    #[ÊôÐÔË÷Òý, ÊÇ·ñ»ù´¡ÊôÐÔ£¬(·Ç)ÏßÐÔ]
    attrInfo = ChConfig.ItemEffect_AttrDict.get(attrType, [])
    if attrInfo == []:
        return
    
    for i in attrInfo[0]:
        GameWorld.AddDictValue(calcDict, {i:value})
    
    return
 
 
## ·µ»ØbuffÀàÐÍ£¬ÏßÐÔÓë·ñ
#  @param 
#  @return None
#  @remarks º¯ÊýÏêϸ˵Ã÷.  
def GetCalcType():
    return ChConfig.TYPE_Linear
 
def GetHorseAttrByQuality(curPlayer, quality, attrType):
    return 0
#    value = 0
#    ipyDataMgr = IpyGameDataPY.IPY_Data()
#    for i in xrange(ipyDataMgr.GetHorseCount()):
#        ipyData = ipyDataMgr.GetHorseByIndex(i)
#        horseID = ipyData.GetHorseID()
#        if ipyData.GetQuality() != quality:
#            # ·Ç´ËÆ·ÖÊÅųý
#            continue
#        lv = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_Horser_LV % horseID, 0, ChConfig.Def_PDictType_Horse)
#        if not lv:
#            continue
#    
#        horseUpData = IpyGameDataPY.GetIpyGameData("HorseUp", horseID, lv)
#        if not horseUpData:
#            continue
#        
#        attrTypeList = horseUpData.GetAttrType()
#        attrValueList = horseUpData.GetAttrValue()
#        if attrType not in attrTypeList:
#            continue
#        
#        value += attrValueList[attrTypeList.index(attrType)]
#
#    return value