| | |
| | | dMaxHP = defObj.GetMaxHP()
|
| | | GameWorld.DebugLog("结算dot: atkID=%s,defID=%s,buffID=%s,skillID=%s,ownerID=%s,hurtValue=%s,hurtTypes=%s,dHP=%s/%s"
|
| | | % (atkID, defID, buffID, skillID, ownerID, hurtValue, hurtTypes, dHP, dMaxHP))
|
| | | costLayer = kwargs.get("costLayer")
|
| | | layer = curBuff.GetLayer()
|
| | | if layer > 0:
|
| | | hurtValue *= layer
|
| | | GameWorld.DebugLog(" 多层buff伤害: hurtValue=%s,layer=%s" % (hurtValue, layer))
|
| | | if costLayer > 0:
|
| | | hurtValue *= min(costLayer, max(1, layer))
|
| | | GameWorld.DebugLog(" 消耗buff层伤害: hurtValue=%s,costLayer=%s,layer=%s" % (hurtValue, costLayer, layer))
|
| | | else:
|
| | | if layer > 0:
|
| | | hurtValue *= layer
|
| | | GameWorld.DebugLog(" 多层buff伤害: hurtValue=%s,layer=%s" % (hurtValue, layer))
|
| | | if "FinalDamPer" in kwargs:
|
| | | FinalDamPer = kwargs["FinalDamPer"]
|
| | | hurtValue *= (10000 + FinalDamPer) / 10000.0
|