From 5dc4b0231db1b45e01a4576250ce2c4497da382c Mon Sep 17 00:00:00 2001 From: markzd Date: Wed, 26 Dec 2012 07:06:29 +0000 Subject: - Fixed Server Rainstorm damage formula. (bugreport:5786) - Fixed shadow formation, to reflect damage with SF caster as source and not the attacker.(bugreport:7045) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17044 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/battle.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/map/battle.c b/src/map/battle.c index b148305f5..ab26febf6 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -1143,7 +1143,7 @@ int battle_calc_damage(struct block_list *src,struct block_list *bl,struct Damag if( s_bl->type == BL_PC ) ((TBL_PC*)s_bl)->shadowform_id = 0; } else { - status_damage(src, s_bl, damage, 0, clif_damage(s_bl, s_bl, gettick(), 500, 500, damage, -1, 0, 0), 0); + status_damage(bl, s_bl, damage, 0, clif_damage(s_bl, s_bl, gettick(), 500, 500, damage, -1, 0, 0), 0); return ATK_NONE; } } @@ -2822,7 +2822,10 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo RE_LVL_DMOD(100); break; case WM_SEVERE_RAINSTORM_MELEE: - skillratio = 50 + 50 * skill_lv; + //ATK [{(Caster’s DEX + AGI) x (Skill Level / 5)} x Caster’s Base Level / 100] % + skillratio = (sstatus->dex + sstatus->agi) * (skill_lv * 2); + RE_LVL_DMOD(100); + skillratio /= 10; break; case WM_GREAT_ECHO: skillratio += 800 + 100 * skill_lv; @@ -3899,9 +3902,13 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list case WM_METALICSOUND: skillratio += 120 * skill_lv + 60 * ( sd? pc_checkskill(sd, WM_LESSON) : 10 ) - 100; break; - case WM_SEVERE_RAINSTORM: + /*case WM_SEVERE_RAINSTORM: skillratio += 50 * skill_lv; break; + + WM_SEVERE_RAINSTORM just set a unit place, + refer to WM_SEVERE_RAINSTORM_MELEE to set the formula. + */ case WM_REVERBERATION_MAGIC: // MATK [{(Skill Level x 100) + 100} x Casters Base Level / 100] % skillratio += 100 * (sd ? pc_checkskill(sd, WM_REVERBERATION) : 1); -- cgit v1.2.3-60-g2f50