summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-07-13 20:25:13 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-07-13 20:25:13 +0000
commit692914bd8b2ec74f185eac77be3479d5a5235cb4 (patch)
tree750a6a469d8c780e6b4765918c019072b528f4b2 /src/map
parent6301743e9002b391f83dca77a8e03fcbcd5f6d33 (diff)
downloadhercules-692914bd8b2ec74f185eac77be3479d5a5235cb4.tar.gz
hercules-692914bd8b2ec74f185eac77be3479d5a5235cb4.tar.bz2
hercules-692914bd8b2ec74f185eac77be3479d5a5235cb4.tar.xz
hercules-692914bd8b2ec74f185eac77be3479d5a5235cb4.zip
- Corrected NJ_KAENSIN as per description.
- Fixed a leaking map_freeblocklock on skill_del_unitgroup. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7659 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r--src/map/skill.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index dc6194691..b55c6bea8 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -3069,7 +3069,6 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
//case NJ_KASUMIKIRI:
//case NJ_KIRIKAGE:
//case NJ_KOUENKA:
- case NJ_KAENSIN:
//case NJ_HYOUSENSOU:
//case NJ_HYOUSYOURAKU:
//case NJ_HUUJIN:
@@ -6409,8 +6408,8 @@ struct skill_unit_group *skill_unitsetting (struct block_list *src, int skillid,
if (sd) val1 = sd->status.child;
break;
case NJ_KAENSIN:
- val1 = skilllv;
- val2 = (skilllv+1)/2 + 4;
+ val1 = (skilllv+1)/2 + 4;
+ skill_clear_group(src,1);
break;
case GS_GROUNDDRIFT:
@@ -7032,9 +7031,8 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns
case UNT_KAENSIN:
skill_attack(BF_MAGIC,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
- src->val2--;
- if (--src->val2<=0)
- skill_delunit(src);
+ if (--sg->val1 <= 0)
+ skill_delunitgroup(NULL,sg);
break;
}
@@ -8895,6 +8893,7 @@ int skill_clear_group (struct block_list *bl, int flag)
case SA_VIOLENTGALE:
case SA_LANDPROTECTOR:
case NJ_SUITON:
+ case NJ_KAENSIN:
if (flag&1)
group[count++]= ud->skillunit[i];
break;
@@ -9441,7 +9440,6 @@ int skill_delunitgroup (struct block_list *src, struct skill_unit_group *group)
group->valstr=NULL;
}
- map_freeblock((struct block_list*)group->unit); /* aFree()の替わり */
group->unit=NULL;
group->group_id=0;
group->unit_count=0;