NoCD, большое спасибо за пример и за внимание к вопросу!
Я только сегодня увидела ответ, поэтому вчера сама тоже до чего-то дошла.
Во-первых, предположительно, анимация с помощью класса Tween более плавная, чем если писать координаты, куда мувику переместиться (и удобнее - легко варьировать скорость движения в секундах).
Поэтому, я сделала вот так:

Код AS1/AS2:
import mx.transitions.Tween;
import mx.transitions.easing.*;
import mx.utils.Delegate;
class Ball extends MovieClip {
var initX:Number;
var initY:Number;
var FunnyAnimation:Tween;
var FunnyAnimation1:Tween;
var duration:Number = 2;
var comeBack:Boolean = false;
// максимальный сдвиг от начального положения. Можно сделать больше, для наглядности анимации
static var vibrShift = 10;
var lastShift:Number = 0;
var yo:Boolean = false;
function funAnimProlong() {
FunnyAnimation1.onMotionFinished = null;
FunnyAnimation.onMotionFinished = null;
Vibration();
}
public function shift(x_shift:Number, y_shift:Number):Void {
FunnyAnimation = new Tween(this, "_x", None.easeNone, this._x, initX+x_shift, duration, true);
FunnyAnimation1 = new Tween(this, "_y", None.easeNone, this._y, initY+y_shift, duration, true);
FunnyAnimation.onMotionFinished = Delegate.create(this, funAnimProlong);
}
public function Vibration():Void {
var direct:Number = Math.floor(Math.random()*4);
if (direct == lastShift) {direct = (direct+1)%4;}
lastShift = direct;
var shX:Number = 5+Math.floor(vibrShift*Math.random());
var shY:Number = 5+Math.floor(vibrShift*Math.random());
switch (direct) {
case 0 :shift(shX,shY);break;
case 1 :shift(shX,(-1)*shY);break;
case 2 :shift((-1)*shX,shY);break;
case 3 :shift((-1)*shX,(-1)*shY);break;
}
}
public function Ball() {
initY = this._y;
initX = this._x;
Vibration();
}
}
Вот здесь можно лицезреть результат:
vibr.rar
И, пока мувиклипов, которые двигаются таким образом мало (25) всё работает хорошо. Но когда их 100 начинаются подёргивания. Но мне-то нужно 100

Может можно переписать как-нибудь, чтобы не дёргалось? Вообще-то правильность функции funAnimProlong() вызвает у меня сомнения

И ещё вопрос - можно ли сделать чтобы анимация из одной точки в другую была не по прямой, а по какой-нибудь плавной линии?