From 386421a953a51e90fa56da5e294ecdac58647549 Mon Sep 17 00:00:00 2001 From: skotlex Date: Mon, 20 Nov 2006 17:25:05 +0000 Subject: - Fixed itemskill variable being cleared before parsing the skill, this causes auto-casted teleport to fail to skip the skill menu. It is now cleared on castend_pos/id directly. - The item skill/lv variables now use 0 as default to signal they aren't being used (instead of -1) - Skills with state 'move_enable' will now do a "walk path" check between target cell/object and caster instead of a "shoot path" check, this would fix skills like snap or charge from letting you "teleport" across pits. - Fixed a possible double map_addblock when hatching a pet egg right before going through a warp. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9275 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/clif.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/map/clif.c') diff --git a/src/map/clif.c b/src/map/clif.c index b268818ce..0d04d0bc3 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -9822,14 +9822,14 @@ void clif_parse_UseSkillToId(int fd, struct map_session_data *sd) { if(target_id<0 && -target_id == sd->bl.id) // for disguises [Valaris] target_id = sd->bl.id; - if (sd->skillitem >= 0 && sd->skillitem == skillnum) { + if (sd->skillitem == skillnum) { if (skilllv != sd->skillitemlv) skilllv = sd->skillitemlv; unit_skilluse_id(&sd->bl, target_id, skillnum, skilllv); return; } - sd->skillitem = sd->skillitemlv = -1; + sd->skillitem = sd->skillitemlv = 0; if (skillnum == MO_EXTREMITYFIST) { if ((sd->sc.data[SC_COMBO].timer == -1 || (sd->sc.data[SC_COMBO].val1 != MO_COMBOFINISH && @@ -9918,12 +9918,12 @@ void clif_parse_UseSkillToPosSub(int fd, struct map_session_data *sd, int skilll if (sd->invincible_timer != -1) pc_delinvincibletimer(sd); - if (sd->skillitem >= 0 && sd->skillitem == skillnum) { + if (sd->skillitem == skillnum) { if (skilllv != sd->skillitemlv) skilllv = sd->skillitemlv; unit_skilluse_pos(&sd->bl, x, y, skillnum, skilllv); } else { - sd->skillitem = sd->skillitemlv = -1; + sd->skillitem = sd->skillitemlv = 0; if ((lv = pc_checkskill(sd, skillnum)) > 0) { if (skilllv > lv) skilllv = lv; -- cgit v1.2.3-70-g09d2