summaryrefslogtreecommitdiff
path: root/src/map/pc.c
diff options
context:
space:
mode:
authorJedzkie <jedzkie13@rocketmail.com>2015-12-24 10:43:11 +0800
committerJedzkie <jedzkie13@rocketmail.com>2015-12-24 10:43:11 +0800
commit3f13598714f2d6cecb1c1e5c382592a904798624 (patch)
treeb527f2652e10f4b3bd446e26f6473aef0f358de9 /src/map/pc.c
parent9c137f8d979f9cde9f3c54c754d0a26912f4f208 (diff)
downloadhercules-3f13598714f2d6cecb1c1e5c382592a904798624.tar.gz
hercules-3f13598714f2d6cecb1c1e5c382592a904798624.tar.bz2
hercules-3f13598714f2d6cecb1c1e5c382592a904798624.tar.xz
hercules-3f13598714f2d6cecb1c1e5c382592a904798624.zip
Item Update:
- Fix items that uses SPVanishRate bonus are not working properly. - Fix Velum Katzbalger item effect. - Added HPVanishRate bonus.
Diffstat (limited to 'src/map/pc.c')
-rw-r--r--src/map/pc.c26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/map/pc.c b/src/map/pc.c
index 157f7faab..59232cc7b 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -3168,11 +3168,18 @@ int pc_bonus2(struct map_session_data *sd,int type,int type2,int val)
sd->left_weapon.sp_drain[RC_BOSS].type = val;
}
break;
+ case SP_HP_VANISH_RATE:
+ if (sd->state.lr_flag != 2) {
+ sd->bonus.hp_vanish_rate += type2;
+ sd->bonus.hp_vanish_per = max(sd->bonus.hp_vanish_per, val);
+ sd->bonus.hp_vanish_trigger = 0;
+ }
+ break;
case SP_SP_VANISH_RATE:
- if(sd->state.lr_flag != 2) {
+ if (sd->state.lr_flag != 2) {
sd->bonus.sp_vanish_rate += type2;
- sd->bonus.sp_vanish_per = max(sd->bonus.sp_vanish_per,val);
- sd->bonus.sp_vanish_trigger=0;
+ sd->bonus.sp_vanish_per = max(sd->bonus.sp_vanish_per, val);
+ sd->bonus.sp_vanish_trigger = 0;
}
break;
case SP_GET_ZENY_NUM:
@@ -3812,11 +3819,18 @@ int pc_bonus3(struct map_session_data *sd,int type,int type2,int type3,int val)
}
}
break;
+ case SP_HP_VANISH_RATE:
+ if (sd->state.lr_flag != 2) {
+ sd->bonus.hp_vanish_rate += type2;
+ sd->bonus.hp_vanish_per = max(sd->bonus.hp_vanish_per, type3);
+ sd->bonus.hp_vanish_trigger = val;
+ }
+ break;
case SP_SP_VANISH_RATE:
- if(sd->state.lr_flag != 2) {
+ if (sd->state.lr_flag != 2) {
sd->bonus.sp_vanish_rate += type2;
- sd->bonus.sp_vanish_per = max(sd->bonus.sp_vanish_per,type3);
- sd->bonus.sp_vanish_trigger=val;
+ sd->bonus.sp_vanish_per = max(sd->bonus.sp_vanish_per, type3);
+ sd->bonus.sp_vanish_trigger = val;
}
break;