From 63baa62f703e39203387e7008e7520967a4cea5d Mon Sep 17 00:00:00 2001 From: Playtester <3785983+Playtester@users.noreply.github.com> Date: Sat, 21 Sep 2024 18:15:38 +0200 Subject: [PATCH] Finger Offensive Renewal Damage (#8668) - Fixed damage of Finger Offensive being 5 times too high - Added job stat bonus for Sura job level 61 - Fixes #8667 --- db/re/job_stats.yml | 6 ++++++ db/re/skill_db.yml | 2 +- src/map/battle.cpp | 10 ++++++++-- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/db/re/job_stats.yml b/db/re/job_stats.yml index e33272c57b..d0eca9f52e 100644 --- a/db/re/job_stats.yml +++ b/db/re/job_stats.yml @@ -5635,6 +5635,8 @@ Body: Str: 1 - Level: 60 Int: 1 + - Level: 61 + Str: 1 - Jobs: Genetic: true MaxWeight: 32000 @@ -6200,6 +6202,8 @@ Body: Str: 1 - Level: 60 Int: 1 + - Level: 61 + Str: 1 - Jobs: Genetic_T: true MaxWeight: 32000 @@ -7248,6 +7252,8 @@ Body: Str: 1 - Level: 60 Int: 1 + - Level: 61 + Str: 1 - Jobs: Baby_Genetic: true MaxWeight: 30000 diff --git a/db/re/skill_db.yml b/db/re/skill_db.yml index 348c45bac2..9d5d115e50 100644 --- a/db/re/skill_db.yml +++ b/db/re/skill_db.yml @@ -7535,7 +7535,7 @@ Body: TargetTrap: true Range: 9 Hit: Multi_Hit - HitCount: 5 + HitCount: -5 Element: Weapon CopyFlags: Skill: diff --git a/src/map/battle.cpp b/src/map/battle.cpp index 6f7cff4eef..bec3365ba7 100644 --- a/src/map/battle.cpp +++ b/src/map/battle.cpp @@ -3693,6 +3693,12 @@ static int battle_get_spiritball_damage(struct Damage& wd, struct block_list& sr // These skills used as many spheres as they do hits damage = (wd.div_ + sd->spiritball) * 3; break; +#ifdef RENEWAL + case MO_FINGEROFFENSIVE: + // These skills store the spheres used in spiritball_old + damage = (sd->spiritball_old + sd->spiritball) * 3; + break; +#endif case MO_EXTREMITYFIST: // These skills store the number of spheres the player had before cast damage = sd->spiritball_old * 3; @@ -6803,9 +6809,9 @@ static void battle_calc_attack_plant(struct Damage* wd, struct block_list *src,s return; } - // Triple Attack has a special property that it does not split damage on plant mode + // Triple Attack and Finger Offensive have a special property, they do not split damage on plant mode // In pre-renewal, it requires the monster to have exactly 100 def - if (skill_id == MO_TRIPLEATTACK && wd->div_ < 0 + if ((skill_id == MO_TRIPLEATTACK || skill_id == MO_FINGEROFFENSIVE) && wd->div_ < 0 #ifndef RENEWAL && tstatus->def == 100 #endif