summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
authormalufett <malufett.eat.my.binaries@gmail.com>2015-05-31 12:06:28 +0800
committermalufett <malufett.eat.my.binaries@gmail.com>2015-05-31 12:06:28 +0800
commita5a86059b8e70420f0a78d6a377b5702cdfe6792 (patch)
treebb9910dd32b6a299a1b25f71bcc33371a4506fa7 /src/map/status.c
parentaaa82f2f8fb70858048d1e199b40bbb797b9604d (diff)
downloadhercules-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.c13
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: