// hercules
static unsigned short status_calc_dmotion(struct block_list *bl, struct status_change *sc, int dmotion) {
if( !sc || !sc->count || map_flag_gvg2(bl->m) || map->list[bl->m].flag.battleground )
return cap_value(dmotion,0,USHRT_MAX);
if( sc->data[SC_ENDURE] )
return 0;
if( sc->data[SC_RUN] || sc->data[SC_WUGDASH] )
return 0;
return (unsigned short)cap_value(dmotion,0,USHRT_MAX);
}
// eathena
static unsigned short status_calc_dmotion(struct block_list *bl, struct status_change *sc, int dmotion)
{
if( !sc || !sc->count || map_flag_gvg(bl->m) || map[bl->m].flag.battleground )
return cap_value(dmotion,0,USHRT_MAX);
if( sc->data[SC_ENDURE] )
return 0;
if( sc->data[SC_CONCENTRATION] )
return 0;
if( sc->data[SC_RUN] )
return 0;
return (unsigned short)cap_value(dmotion,0,USHRT_MAX);
}