case MO_EXTREMITYFIST: { short x, y, i = 2; // Move 2 cells for Issen(from target) struct block_list *mbl = bl; short dir = 0; skill_attack(BF_WEAPON,src,src,bl,skill_id,skill_lv,tick,flag); if(skill_id == MO_EXTREMITYFIST) { mbl = src; i = 3; // for Asura(from caster) status->set_sp(src, 0, 0); status_change_end(src, SC_EXPLOSIONSPIRITS, INVALID_TIMER); status_change_end(src, SC_BLADESTOP, INVALID_TIMER); #if VERSION == 1 sc_start(src, src,SC_EXTREMITYFIST2,100,skill_lv,skill_get_time(skill_id,skill_lv)); #endif }else{ status_change_end(src, SC_NJ_NEN, INVALID_TIMER); status_change_end(src, SC_HIDING, INVALID_TIMER); #if VERSION == 1 status->set_hp(src, max(status_get_max_hp(src) / 100, 1), 0); #else status->set_hp(src, 1, 0); #endif } dir = map->calc_dir(src,bl->x,bl->y); if(dir > 0 && dir < 4) x = -i; else if(dir > 4) x = i; else x = 0; if(dir > 2 && dir < 6) y = -i; else if(dir == 7 || dir < 2) y = i; else y = 0; if((mbl == src || (!map_flag_gvg2(src->m) && !map->list[src->m].flag.battleground)) && // only NJ_ISSEN don't have slide effect in GVG unit_movepos(src, mbl->x+x, mbl->y+y, 1, 1)) { clif_slide(src, src->x, src->y); clif_fixpos(src); clif_spiritball(src); } } break;