
*EDIT* upon some research this has been a bug for over a year now;
http://www.eathena.ws/board/index.php?a ... howbug=852" TARGET="_blank
is there any hope for the ninjas out there in the world!
The movepos function works like this:case NJ_SHADOWJUMP:
if( !map_flag_gvg(src->m) && !map[src->m].flag.battleground )
{ //You don't move on GVG grounds.
unit_movepos(src, x, y, 1, 0);
clif_slide(src,x,y);
}
if (sc && sc->data[SC_HIDING])
status_change_end(src, SC_HIDING, -1);
break;
If you look at the skill.c code, it is sending a 0 for the boolean value for checkpath, meaning it's saying that it shouldn't be checking path.int unit_movepos(struct block_list *bl, short dst_x, short dst_y, int easy, bool checkpath)
TK High Jump works the same way (unit_movepos(src, x, y, 1, 0);), but Flying Kick sends a (1 -- unit_movepos(src, bl->x, bl->y, 1, 1)) to give you an idea of the differences.if( checkpath && (map_getcell(bl->m,dst_x,dst_y,CELL_CHKNOPASS) || !path_search(NULL,bl->m,bl->x,bl->y,dst_x,dst_y,easy,CELL_CHKNOREACH)) )
return 0; // unreachable