ActionScripti õppematerjal

Sümbolitega manipuleerimine ActionScripti abil

Tagasi sirvima

Selles harjutusülesandes käsitleme dünaamilise MovieClip-sümboli loomist ning hiirekuularit.

Õpime:

Näidetest fail movieclip.fla, movieclip.swf

  1. Selles ülesandes vajame vaid ühte kihti ning ühte kaadrit, millele kirjutame ActionScripti. Kood genereerib lavale dünaamiliselt ühe MovieClip-tüüpi sümboli.

  2. Esmalt impordime juba tuttavaks saanud Tween- ja easing-klassid.

    import mx.transitions.Tween;
    import mx.transitions.easing.*;

  3. 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();

  4. 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;

  5. 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);
    };

  6. 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.

    Tagasi sirvima