Selles harjutusülesandes käsitleme dünaamilise MovieClip-sümboli loomist ning hiirekuularit.
Õpime:
Näidetest fail movieclip.fla, movieclip.swf
Selles ülesandes vajame vaid ühte kihti ning ühte kaadrit, millele kirjutame ActionScripti. Kood genereerib lavale dünaamiliselt ühe MovieClip-tüüpi sümboli.
Esmalt impordime juba tuttavaks saanud Tween- ja easing-klassid.
import mx.transitions.Tween; import mx.transitions.easing.*;
Loome objekti, mille ülesandeks on "kuulata", millal kutsutakse välja sündmus loadInit. "mc" tähistab muutujanimedes MovieClip'i ning "mcl" MovieClip Loader'it ehk MovieClip'i laadijat.
var mclKuular:Object = new Object();
Järgnevalt paneme paika, mis toimub siis, kui mclKuular püüab sündmuse onLoadInit (laadimise algus):
mclKuular.onLoadInit = function(siht_mc:MovieClip) {
siht_mc._visible = false;
//Joondame MovieClip-sümboli lava keskele
siht_mc._x = (Stage.width - siht_mc._width) / 2;
siht_mc._y = (Stage.height - siht_mc._height) / 2;Loome MovieClip-sümboli maskClip ning määrame selle ala raamiga.
var maskClip:MovieClip = siht_mc.createEmptyMovieClip("mask_mc", 20);
with (maskClip) {
beginFill(0xFF00FF, 100);
moveTo(0, 0);
lineTo(siht_mc._width, 0);
lineTo(siht_mc._width, siht_mc._height);
lineTo(0, siht_mc._height);
lineTo(0, 0);
endFill();
}
siht_mc.setMask(maskClip);
siht_mc._visible = true;
var mask_tween:Object = new Tween(maskClip, "_yscale", Strong.easeOut, 0, 100, 2, true);
};Ning viimaks loome tühja MovieClip-sümboli pilt-mc, lisame kuulari, mis aktiveerub pilt_mcl.loadClip() käivitumisel ning edasi asub tööle ülalkirjeldatud funktsioon mclKuular.onLoadInit.
this.createEmptyMovieClip("pilt_mc", 10);
var pilt_mcl:MovieClipLoader = new MovieClipLoader();
pilt_mcl.addListener(mclKuular);
pilt_mcl.loadClip("http://www.liiklus.net/liiklus.png", pilt_mc);
Sarnaselt võib pilt_mc asemel laaditavaks objektiks olla ka teine Flash-animatsioon.