| | |
| | |
|
| | |
|
| | | def OnCalcBuffEx(defender, curEffect, calcDict, curBuff):
|
| | | if defender.GetGameObjType() != IPY_GameWorld.gotPlayer:
|
| | | return
|
| | | suitsLV = ChEquip.GetEquipSuitsLVByType(defender, ChConfig.EquipSuitType_Plus, ChConfig.EquipGroupType_Armor)
|
| | | if not suitsLV:
|
| | | return
|
| | | attrList = PlayerControl.GetCalcAttrListValue(defender, curEffect.GetEffectValue(2))
|
| | | attrType = curEffect.GetEffectValue(1)
|
| | | attrTypeList = [attrType]
|
| | | # 攻击力有最大最小 特殊处理
|
| | | if attrType in [ChConfig.TYPE_Calc_AttrATKMin, ChConfig.TYPE_Calc_AttrATKMax]:
|
| | | attrTypeList = [ChConfig.TYPE_Calc_AttrATKMin, ChConfig.TYPE_Calc_AttrATKMax]
|
| | | for tmpType in attrTypeList:
|
| | | value = int(attrList[2].get(tmpType, 0)*curEffect.GetEffectValue(0)*suitsLV*1.0/ChConfig.Def_MaxRateValue)
|
| | | calcDict[tmpType] = calcDict.get(tmpType, 0) + value
|
| | | |
| | | # 境界装备改版,暂取消
|
| | | return
|
| | | # if defender.GetGameObjType() != IPY_GameWorld.gotPlayer:
|
| | | # return
|
| | | # suitsLV = ChEquip.GetEquipSuitsLVByType(defender, ChConfig.EquipSuitType_Plus, ChConfig.EquipGroupType_Armor)
|
| | | # if not suitsLV:
|
| | | # return
|
| | | # attrList = PlayerControl.GetCalcAttrListValue(defender, curEffect.GetEffectValue(2))
|
| | | # attrType = curEffect.GetEffectValue(1)
|
| | | # attrTypeList = [attrType]
|
| | | # # 攻击力有最大最小 特殊处理
|
| | | # if attrType in [ChConfig.TYPE_Calc_AttrATKMin, ChConfig.TYPE_Calc_AttrATKMax]:
|
| | | # attrTypeList = [ChConfig.TYPE_Calc_AttrATKMin, ChConfig.TYPE_Calc_AttrATKMax]
|
| | | # for tmpType in attrTypeList:
|
| | | # value = int(attrList[2].get(tmpType, 0)*curEffect.GetEffectValue(0)*suitsLV*1.0/ChConfig.Def_MaxRateValue)
|
| | | # calcDict[tmpType] = calcDict.get(tmpType, 0) + value
|
| | | # |
| | | # return
|
| | |
|
| | |
|
| | | ## 返回buff类型,线性与否
|