
Rumble
Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 50%%. Has a 50% chance to remove 2 negative effects.
Aesir Effects
Skill Levels
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 50%%. Has a 40% chance to remove 2 negative effects.
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 50%%. Has a 30% chance to remove 2 negative effects.
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 50%%. Has a 20% chance to remove 2 negative effects.
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 50%%. Has a 10% chance to remove 2 negative effects.
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 50%.
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 40%.
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 30%.
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 20%.
• Releases a pleasant grunt to heal all teammates within 5 meters and using [Groom] on them, recovering an additional 10%.
Formula
1function CommonFun.calcDamage_15301(srcUser, targetUser, params, damageParam, logger)
2 local BaseLv = srcUser.BaseLv
3 local Int = srcUser:GetProperty("Int")
4 local HealEncPer = srcUser:GetProperty("HealEncPer")
5 local BeHealEncPer2 = targetUser:GetProperty("BeHealEncPer")
6 local damChangePer = damageParam.damChangePer
7 local Num = srcUser:GetRunePoint(153033_AESIR_GROOM_S_HEALING_EFFECT_5)
8 local A = -1 * math.floor((BaseLv / 50 + 1) * Int * damChangePer * (1 + HealEncPer) * (1 + BeHealEncPer2)) * (1 + Num * 0.05)
9 local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
10 if skillID == 1630_BLADE_SOUL:RUMBLE then
11 local skilllv_1 = srcUser:GetLernedSkillLevel(1621_BLADE_SOUL:GROOM)
12 local skilllv_2 = srcUser:GetLernedSkillLevel(1630_BLADE_SOUL:RUMBLE)
13 skilllv_2 = math.min(skilllv_2, 5)
14 A = -1 * math.floor((BaseLv / 50 + 1) * Int * (skilllv_1 * 3 + 11) * (1 + HealEncPer) * (1 + BeHealEncPer2)) * (1 + skilllv_2 * 0.1) * (1 + Num * 0.05)
15 end
16 local HealtoDam = targetUser:GetBuffLevel(129100_CURE_BARRIER_:MAX_STACK_0)
17 local DamRatio = 1
18 if targetUser:HasBuffID(129100_CURE_BARRIER_:MAX_STACK_0) then
19 DamRatio = -0.1 * HealtoDam
20 end
21 local HealReduce = targetUser:GetBuffLevel(136500_10783_:MAX_STACK_0)
22 if targetUser:HasBuffID(136500_10783_:MAX_STACK_0) then
23 DamRatio = 1 - (0.2 + 0.03 * HealReduce)
24 end
25 local RateNum = 0
26 if srcUser:HasBuffID(90004614_GIANT_FOX_GRASS_1_TIER_5_:MAX_STACK_0) then
27 RateNum = 15
28 end
29 if CommonFun.IsInRate(RateNum, srcUser:GetRandom()) then
30 return A * 2 * DamRatio, CommonFun.DamageType.Crit
31 else
32 return A * DamRatio
33 end
34end