diff options
author | malufett <malufett.eat.my.binaries@gmail.com> | 2015-05-31 12:06:28 +0800 |
---|---|---|
committer | malufett <malufett.eat.my.binaries@gmail.com> | 2015-05-31 12:06:28 +0800 |
commit | a5a86059b8e70420f0a78d6a377b5702cdfe6792 (patch) | |
tree | bb9910dd32b6a299a1b25f71bcc33371a4506fa7 /src/map/status.c | |
parent | aaa82f2f8fb70858048d1e199b40bbb797b9604d (diff) | |
download | hercules-a5a86059b8e70420f0a78d6a377b5702cdfe6792.tar.gz hercules-a5a86059b8e70420f0a78d6a377b5702cdfe6792.tar.bz2 hercules-a5a86059b8e70420f0a78d6a377b5702cdfe6792.tar.xz hercules-a5a86059b8e70420f0a78d6a377b5702cdfe6792.zip |
Fixed Bug#8673
-http://hercules.ws/board/tracker/issue-8673-gt-energy-gain/?gopid=25265#entry25265
-Fixed some skills related to spiritball, should now work like official.
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
Diffstat (limited to 'src/map/status.c')
-rw-r--r-- | src/map/status.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/map/status.c b/src/map/status.c index 8d228c763..cb9b67299 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -8806,6 +8806,9 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t else val2 = val2 / 4 * val1; // STAT DEF increase: [(Caster VIT / 4) x Skill Level] break; + case SC_GENTLETOUCH_ENERGYGAIN: + val2 = 10 + 5 * val1; + break; case SC_PYROTECHNIC_OPTION: val2 = 60; break; @@ -10127,15 +10130,11 @@ int status_change_end_(struct block_list* bl, enum sc_type type, int tid, const map->foreachinrange(status->change_timer_sub, bl, battle_config.area_size,BL_CHAR, bl, sce, SC_CURSEDCIRCLE_TARGET, timer->gettick()); break; case SC_RAISINGDRAGON: - if( sd && sce->val2 && !pc_isdead(sd) ) { + if ( sd && sce->val2 && !pc_isdead(sd) ) { int i; - i = min(sd->spiritball,5); - pc->delspiritball(sd, sd->spiritball, 0); + if ( (i = (sd->spiritball - 5)) > 0 ) + pc->delspiritball(sd, i, 0); status_change_end(bl, SC_EXPLOSIONSPIRITS, INVALID_TIMER); - while( i > 0 ) { - pc->addspiritball(sd, skill->get_time(MO_CALLSPIRITS, pc->checkskill(sd,MO_CALLSPIRITS)), 5); - --i; - } } break; case SC_CURSEDCIRCLE_TARGET: |