Formula

CommonFun.ModifyShapeDamage

function CommonFun.ModifyShapeDamage(srcUser, targetUser, skillParams, damage)
  if CommonFun.Shape.L == targetUser.shape and CommonFun.RollType.Magic == skillParams.RollType and 0 < damage then
    local largedam = 1
    if srcUser:HasBuffID(71930_11895_:MAX_STACK_0) then
      largedam = largedam + 0.25
    end
    local CardMedia = srcUser:GetEquipCardNum(7, 23265_CHANNELLER_CARD)
    largedam = largedam + CardMedia * 0.15
    local CardLabore = srcUser:GetEquipCardNum(7, 23284_MAGE_LAVURE_CARD)
    largedam = largedam + CardLabore * 0.1
    local CardSarahIrene = srcUser:GetEquipCardNum(3, 23358_BROKEN_COCOON_BUTTERFLY_CARD)
    largedam = largedam + CardSarahIrene * 0.1
    local CardPirate1 = srcUser:GetEquipCardNum(5, 23414_ALIEN_DRAKE_CARD)
    local CardPirate2 = srcUser:GetEquipCardNum(6, 23414_ALIEN_DRAKE_CARD)
    local RefineLv5 = srcUser:GetEquipedRefineLv(5_ACCESSORY)
    local RefineLv6 = srcUser:GetEquipedRefineLv(6_ACCESSORY)
    if 0 < CardPirate1 or 0 < CardPirate2 then
      largedam = largedam + CardPirate1 * 0.01 * RefineLv5 + CardPirate2 * 0.01 * RefineLv6
    end
    if srcUser:HasBuffID(29440_ARCANE_IMPACT_:MAX_STACK_0) then
      largedam = largedam + 0.04
    elseif srcUser:HasBuffID(29441_ARCANE_IMPACT_:MAX_STACK_0) then
      largedam = largedam + 0.08
    elseif srcUser:HasBuffID(29442_ARCANE_IMPACT_:MAX_STACK_0) then
      largedam = largedam + 0.2
    end
    damage = damage * largedam
  end
  if CommonFun.Shape.M == targetUser.shape and CommonFun.RollType.Magic == skillParams.RollType and 0 < damage then
    local mediumdam = 1
    local RefineLv = srcUser:GetEquipedRefineLv(8)
    if srcUser:HasBuffID(72280_12090_:MAX_STACK_0) then
      mediumdam = mediumdam + 0.05 + RefineLv * 0.01
    end
    if srcUser:HasBuffID(57300_HIGH_WIZARD_KATERINA_CARD_:MAX_STACK_0) then
      mediumdam = mediumdam + 0.02 + RefineLv * 0.01
    end
    if srcUser:HasBuffID(57310_HIGH_WIZARD_KATERINA_MVP_CARD_:MAX_STACK_0) then
      mediumdam = mediumdam + 0.05 + RefineLv * 0.01
    end
    local RefineLv1 = srcUser:GetEquipedRefineLv(1)
    if srcUser:HasBuffID(59000_ALIEN_MAYA_CARD_:MAX_STACK_0) then
      mediumdam = mediumdam + 0.05 + RefineLv1 * 0.01
    end
    damage = damage * mediumdam
  end
  return damage
end