summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
authorignizh <ignizh@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-07-23 21:28:41 +0000
committerignizh <ignizh@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-07-23 21:28:41 +0000
commitd45ade4f3228c8ea6d1bfecebdeb6686699980bd (patch)
tree20ebaac889d7278424180d5afbe056aa0effc971 /src/map
parent98e833dc83ad9f0642bdbf6b90b239704292f15f (diff)
downloadhercules-d45ade4f3228c8ea6d1bfecebdeb6686699980bd.tar.gz
hercules-d45ade4f3228c8ea6d1bfecebdeb6686699980bd.tar.bz2
hercules-d45ade4f3228c8ea6d1bfecebdeb6686699980bd.tar.xz
hercules-d45ade4f3228c8ea6d1bfecebdeb6686699980bd.zip
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
Diffstat (limited to 'src/map')
-rw-r--r--src/map/battle.c13
1 files changed, 12 insertions, 1 deletions
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: