Почему вы зацикливаете функцию Boomclat ()?Ясно, что эффект анимации не будет завершен и, вероятно, даже не будет запущен, прежде чем вы снова активируете анимацию, по сути, сбрасывая анимацию.[РЕДАКТИРОВАТЬ]Оппс, почему-то я думал, что вызов функции был внутри функции.
В любом случае, вы убедились, что переменные доступны внутри функции.
function Boomclat() {
trace( this._x )
trace( this._y _ )
trace( listY )
var TweenX:Tween = new Tween(this, "_x", mx.transitions.easing.Strong.easeOut, this._x, 16.9, 1, true);
var TweenY:Tween = new Tween(this, "_y", mx.transitions.easing.Strong.easeOut, this._y, listY, 1, true);
}
Boomclat();
[EDIT2]
//remove the onClipEvent completely and you should be ok
import mx.transitions.Tween;
import mx.transitions.easing.*;
startX = this._x;
startY = this._y;
this.onRollOver = function() {
this.gotoAndStop("over");
};
this.onRollOut = function() {
this.gotoAndStop("up");
};
this.onPress = function() {
this.gotoAndStop("down");
};
this.onReleaseOutside = function() {
this.gotoAndStop("up");
};
// you might have to fix the references to this._parent to get it target what you want.
this.onRelease = function() {
this.gotoAndStop("up");
this.enabled = false;
this.arrow.gotoAndStop("ordered");
if (_global.hasAnswered != 1) {
this.arrow.listNumber = this._parent.Order.length+1;
listY = 35+(74.9*this._parent.Order.length);
this._parent.Order.push(this);
orderTween();
this._parent.buttonHolder.previousOrder.push(this);
} else {
for (i=0; i<this._parent.trueOrder.length; i++) {
if (this == this._parent.trueOrder[i]) {
_global.previousButton.enabled = true;
_global.previousButton.gotoAndStop("up");
myColor = new Color(_global.previousButton);
myColor.setTint(255,255,255,0);
myColor = new Color(this);
myColor.setTint(113,205,0,23);
this.gotoAndStop("down");
var TweenX:Tween = new Tween(_global.lastText, "_x", mx.transitions.easing.Back.easeOut, 276.4, -210, 0.7, true);
_global.whichText = this._parent.textFile[i];
var TweenX:Tween = new Tween(_global.whichText, "_x", mx.transitions.easing.Back.easeOut, 760, 276.4, 0.7, true);
_global.lastText = whichText;
_global.previousButton = this;
}
}
}
};
// as you can see I put it last
function orderTween() {
var TweenX:Tween = new Tween(this, "_x", mx.transitions.easing.Strong.easeOut, this._x, 16.9, 1, true);
var TweenY:Tween = new Tween(this, "_y", mx.transitions.easing.Strong.easeOut, this._y, listY, 1, true);
}