From f96f703a1252a0229b59a58951dc2ba55dd66736 Mon Sep 17 00:00:00 2001 From: skotlex Date: Tue, 8 Aug 2006 19:05:35 +0000 Subject: - Added a check to handle Spider Web as a targetted skill. If there's more than one character on the targetted cell, a different one may get trapped, but it will mostly do as it is now. - Added check to Asura so that it will move you to the target when it fails ONLY when you can cast the skill on the target (not stunned, asleep, target not hidden, etc) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8190 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/skill.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/map/skill.c b/src/map/skill.c index 2b3301547..3c505eb81 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -3233,7 +3233,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in return skill_castend_damage_id (src, bl, skillid, skilllv, tick, flag); default: //Skill is actually ground placed. - if (src == bl && skill_get_unit_id(skillid,0)) + if ((src == bl || skillid == PF_SPIDERWEB) && skill_get_unit_id(skillid,0)) return skill_castend_pos2(src,bl->x,bl->y,skillid,skilllv,tick,0); } @@ -5768,8 +5768,9 @@ int skill_castend_id (int tid, unsigned int tick, int id, int data) if (sc->data[SC_BLADESTOP].timer != -1) status_change_end(src,SC_BLADESTOP,-1); } - if (target && target->m == src->m) - { //Move character to target anyway. + if (target && target->m == src->m && + (tid == -1 || status_check_skilluse(src, target, ud->skillid, 1)) + ) { //Move character to target anyway. int dx,dy; dx = target->x - src->x; dy = target->y - src->y; -- cgit v1.2.3-60-g2f50