Poniamo di avre una cosa del genere:
Codice PHP:
function rot() {
    
friction 0.15;
    
distanceR = (targetR-this._x)*friction;
    
this._x += distanceR;
}

function 
updateEnshu(r) {
    
targetR r;
    
# (...) Altre cose
}

yajirushi.onEnterFrame rot;

on (release) {
    
_root.updateEnshu(172);

Una funzione definita per un movimento non lineare, (in questo caso una movimento sull'asse x), un'altra funzione che fa l'update, e un bottone che richiama la funzione passandogli il parametro a cui si deve arrivare.

Indipendentemente dalla funzione (potrei averne anche solo una, ma non è questo il problema), i parametri passati dai bottoni possono avere valori positivi e negativi...
Quindi a volte la la _x attuale è positiva e si muove verso valori negativi e a volte viceversa.
Bene, spesso, facendo un trace di questi valori assunti dalla _x ho notato che questa non sempre raggiunge il target prefissato e di conseguenza ho difficoltà a inserire nella funzione un delete.this.onEnterFrame;.
Anche perchè come dicevo non posso scrivere un if del tipo if (current._x >= target._x) perchè avendo target positivi e negativi a seconda dei casi dovrei usare >= oppure <=
Inoltre non posso nemmeno usare == perchè non sempre il valore corrente arriva esattamente al target assegnato.

che fare?