Formula

CommonFun.calcBuff_4170

function CommonFun.calcBuff_4170(srcUser, targetUser, a, b, c, d, lv)
  if srcUser == nil or targetUser == nil then
    return 0
  end
  local RefineLv1 = srcUser:GetEquipedRefineLv(5_ACCESSORY)
  local RefineLv2 = srcUser:GetEquipedRefineLv(6_ACCESSORY)
  local Ring1 = srcUser:GetEquipedID(5_ACCESSORY)
  local Ring2 = srcUser:GetEquipedID(6_ACCESSORY)
  local order1 = srcUser:getEquipLv(5)
  local order2 = srcUser:getEquipLv(6)
  local a = 0
  local b = 0
  local c = 0
  local d = 0
  local A = 5
  local aa = 0
  local bb = 0
  local cc = 0
  local dd = 0
  if srcUser:HasBuffID(90001679_MATYR_S_LEASH_R10_:MAX_STACK_0) and (Ring1 == 44021_MATYR_S_LEASH_MATYR_S_LEASH or Ring1 == 144021_MATYR_S_LEASH_1_MATYR_S_LEASH_1) and 10 <= RefineLv1 and 10 <= order1 then
    a = 1
  end
  if srcUser:HasBuffID(90001679_MATYR_S_LEASH_R10_:MAX_STACK_0) and (Ring2 == 44021_MATYR_S_LEASH_MATYR_S_LEASH or Ring2 == 144021_MATYR_S_LEASH_1_MATYR_S_LEASH_1) and 10 <= RefineLv2 and 10 <= order2 then
    b = 1
  end
  if srcUser:HasBuffID(90001679_MATYR_S_LEASH_R10_:MAX_STACK_0) and (Ring1 == 44021_MATYR_S_LEASH_MATYR_S_LEASH or Ring1 == 144021_MATYR_S_LEASH_1_MATYR_S_LEASH_1) and 15 <= RefineLv1 and 10 <= order1 then
    c = 2
  end
  if srcUser:HasBuffID(90001679_MATYR_S_LEASH_R10_:MAX_STACK_0) and (Ring2 == 44021_MATYR_S_LEASH_MATYR_S_LEASH or Ring2 == 144021_MATYR_S_LEASH_1_MATYR_S_LEASH_1) and 15 <= RefineLv2 and 10 <= order2 then
    d = 2
  end
  if (Ring1 == 44053_FOX_TEETH_FOX_TEETH or Ring1 == 144053_FOX_TEETH_1_FOX_TEETH_1) and 10 <= RefineLv1 then
    aa = 1
  end
  if (Ring2 == 44053_FOX_TEETH_FOX_TEETH or Ring2 == 144053_FOX_TEETH_1_FOX_TEETH_1) and 10 <= RefineLv2 then
    bb = 1
  end
  if (Ring1 == 44053_FOX_TEETH_FOX_TEETH or Ring1 == 144053_FOX_TEETH_1_FOX_TEETH_1) and 15 <= RefineLv1 then
    cc = 2
  end
  if (Ring2 == 44053_FOX_TEETH_FOX_TEETH or Ring2 == 144053_FOX_TEETH_1_FOX_TEETH_1) and 15 <= RefineLv2 then
    dd = 2
  end
  local aaa = 0
  local bbb = 0
  local ccc = 0
  local ddd = 0
  local equipRingSD5 = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_SHADOWEQUIP, CommonFun.EquipPos.EEQUIPPOS_ACCESSORY1)
  if equipRingSD5.id == 44053 or equipRingSD5.id == 144053 then
    if 10 <= equipRingSD5.refinelv then
      aaa = 1
    end
    if 15 <= equipRingSD5.refinelv then
      ccc = 2
    end
  end
  local equipRingSD6 = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_SHADOWEQUIP, CommonFun.EquipPos.EEQUIPPOS_ACCESSORY2)
  if equipRingSD6.id == 44053 or equipRingSD6.id == 144053 then
    if 10 <= equipRingSD6.refinelv then
      bbb = 1
    end
    if 15 <= equipRingSD6.refinelv then
      ddd = 2
    end
  end
  local A = 5 + math.min(1, a + b + aa + bb + aaa + bbb) + math.min(2, c + d + cc + dd + ccc + ddd)
  if srcUser:HasBuffID(35755_UNIT_01_BUFF_:MAX_STACK_0) then
    A = 8
  end
  return A
end