diff options
author | rud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-06-15 14:57:54 +0000 |
---|---|---|
committer | rud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-06-15 14:57:54 +0000 |
commit | 26c532c222acf2f68dfa41c3ce5fa1acd3898429 (patch) | |
tree | 02d0b6611551d9b1bd1d89d41ab8dc532cc47eff | |
parent | ba2220a201d44b090e96bbcdcd60334a7368d7b1 (diff) | |
download | hercules-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
-rw-r--r-- | db/pre-re/skill_cast_db.txt | 2 | ||||
-rw-r--r-- | db/re/skill_cast_db.txt | 2 | ||||
-rw-r--r-- | src/map/skill.c | 5 | ||||
-rw-r--r-- | src/map/status.c | 3 |
4 files changed, 9 insertions, 3 deletions
diff --git a/db/pre-re/skill_cast_db.txt b/db/pre-re/skill_cast_db.txt index fdc5d09cb..7c11857e0 100644 --- a/db/pre-re/skill_cast_db.txt +++ b/db/pre-re/skill_cast_db.txt @@ -1608,7 +1608,7 @@ //-- GN_HELLS_PLANT_ATK 2491,0,0,0,20000,0,0,0 //-- GN_MANDRAGORA -2492,1000,500,0,30000,0,10000 +2492,1000,500,0,10000:15000:20000:25000:30000,0,15000,0 //-- GN_SLINGITEM //CHECK Whats durations 1 and 2 used for? 2493,0,0,0,77000,10000,1000 diff --git a/db/re/skill_cast_db.txt b/db/re/skill_cast_db.txt index 928f8f1d9..ee17a8f7e 100644 --- a/db/re/skill_cast_db.txt +++ b/db/re/skill_cast_db.txt @@ -1609,7 +1609,7 @@ //-- GN_HELLS_PLANT_ATK 2491,0,0,0,20000,0,0,0 //-- GN_MANDRAGORA -2492,1000,500,0,30000,0,10000,0 +2492,1000,500,0,10000:15000:20000:25000:30000,0,15000,0 //-- GN_SLINGITEM //CHECK Whats durations 1 and 2 used for? 2493,0,0,0,77000,10000,1000,0 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)) |