Подскачащи топки :)
Привет. Ето един кратък пример какво можем да направим с манипулаторите на събитие ..
1.Сложете фрейм рейт 50-60 .Нарисувайте нещо (например кръг :) ) и го превърнете в moovie clip. Найменувайте го a_mc. Натиснете F9 докато е маркиран и сложете следния код отгоре :

onClipEvent (load) {
var speedX:Number = Math.random()*2+2;
var speedY:Number = Math.random()*2+2;
this._x = Math.random()*Stage.width;
this._y = Math.random()*Stage.height;
}
onClipEvent(enterFrame) {
this._x += speedX
this._y += speedY
if (this._x < 0 || this._x >Stage.width) {
speedX *=-1
}
if (this._y < 0 || this._y >Stage.height) {
speedY *=-1
}

}

Кода във onClipEvent(load) ще се извърши всеки път, щом инстанция на този клип "влезе" в сцената. В случая с 1 фрейм - само веднъж. Ще се създадат две променливи speedX , speedY, които по късно ще определят скоростта на движение. Задават се и прозиволни кординати за _x и _y
Кода във onClipEvent(onEnterFrame) ще се изпълни всеки път, като инстанция на този клип "влезе във фрейм", т.е. 60 пъти в секунда. С this._x += speedX задаваме координатата на _x да расте със стойността на speedX (която ще е между 2 и 4). Същото ще става и с _y.
С if (this._x < 0 || this._x >Stage.width) {speedX *=-1} следим дали _x ще стане по малко от 0 или повече от големината на сцената. Ако това е така сменяме стойността на speedX и получаваме движение в обратна посока. Същото правим и с speedY.
Ето какво се получава.
2. Сложете на фрейм едно следния код :

for (i=0; i<20; i++) {
duplicateMovieClip(a_mc, "a"+i+"_mc", this.getNextHighestDepth());
}

Сега това, което сте нарисували ще се дуплицира 20 пъти. Ето резултата
(добавил съм смяна на цветовете).
Ето фла файла.
Надявам се да ви е било полезно.
Наздраве.



/ Трябва да сте регистриран за да напишете коментар /