viewing paste asa | Athena

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
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;
Viewed 838 times, submitted by Guest.