From d45ade4f3228c8ea6d1bfecebdeb6686699980bd Mon Sep 17 00:00:00 2001 From: ignizh Date: Mon, 23 Jul 2012 21:28:41 +0000 Subject: Fixed bugreport:5817. Hundred Spear now have his official behavior. (Thanks to Rytech for his base) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16486 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/battle.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/map/battle.c b/src/map/battle.c index e82b14247..74db9f7c6 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -2091,7 +2091,18 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo RE_LVL_DMOD(100); break; case RK_HUNDREDSPEAR: - skillratio += 500 + 40 * skill_lv; + skillratio += 500 + (80 * skill_lv) + (50 * pc_checkskill(sd,LK_SPIRALPIERCE)); + if( sd ) + { + short index = sd->equip_index[EQI_HAND_R]; + if( index >= 0 && sd->inventory_data[index] && sd->inventory_data[index]->type == IT_WEAPON ) + { + short spearwbd = 1000 - sd->inventory_data[index]->weight / 10;// Spear Weight Bonus Damage. + if ( spearwbd < 0 ) + spearwbd = 0;// If weight of weapon is more then 1000, bonus is set to 0 to prevent negative value. [Rytech] + skillratio += spearwbd; + } + } RE_LVL_DMOD(100); break; case RK_WINDCUTTER: -- cgit v1.2.3-60-g2f50