summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
authorrud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-06-15 14:57:54 +0000
committerrud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-06-15 14:57:54 +0000
commit26c532c222acf2f68dfa41c3ce5fa1acd3898429 (patch)
tree02d0b6611551d9b1bd1d89d41ab8dc532cc47eff /src/map
parentba2220a201d44b090e96bbcdcd60334a7368d7b1 (diff)
downloadhercules-26c532c222acf2f68dfa41c3ce5fa1acd3898429.tar.gz
hercules-26c532c222acf2f68dfa41c3ce5fa1acd3898429.tar.bz2
hercules-26c532c222acf2f68dfa41c3ce5fa1acd3898429.tar.xz
hercules-26c532c222acf2f68dfa41c3ce5fa1acd3898429.zip
Fixed bugreport:5788 no 2 Releasing Spells should now update/reset sp reduction while WL_READING_SB is active.
Fixed bugreport:6029 GN_MANDRAGORA is now updated its success chance percentage. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16305 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r--src/map/skill.c5
-rw-r--r--src/map/status.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 9be2d9266..5fe5f551d 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -4117,6 +4117,9 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
rsb_skillid = sd->rsb[i].skillid;
rsb_skilllv = sd->rsb[i].level;
+ if( sc && sc->data[SC_READING_SB] && sc->data[SC_READING_SB]->val2 > 0 )
+ sc->data[SC_READING_SB]->val2 -= sd->rsb[i].points;
+
if( skilllv > 1 )
sd->rsb[i].skillid = 0; // Last position - only remove it from list
else
@@ -8474,7 +8477,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
case GN_MANDRAGORA:
if( flag&1 ) {
if ( clif_skill_nodamage(bl, src, skillid, skilllv,
- sc_start(bl, type, 35 + 10 * skilllv, skilllv, skill_get_time(skillid, skilllv))) )
+ sc_start(bl, type, 25 + 10 * skilllv, skilllv, skill_get_time(skillid, skilllv))) )
status_zap(bl, 0, status_get_max_sp(bl) / 100 * 25 + 5 * skilllv);
} else
map_foreachinrange(skill_area_sub, bl, skill_get_splash(skillid, skilllv), BL_CHAR,
diff --git a/src/map/status.c b/src/map/status.c
index 09e574ee2..33d9f5670 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -5852,6 +5852,9 @@ int status_get_sc_def(struct block_list *bl, enum sc_type type, int rate, int ti
case SC_VACUUM_EXTREME:
tick -= 50*status->str;
break;
+ case SC_MANDRAGORA:
+ sc_def = (status->vit+status->luk)/5;
+ break;
default:
//Effect that cannot be reduced? Likely a buff.
if (!(rnd()%10000 < rate))