ActionScript 3 - uputstvo za pocetnike

ActionScript 3 - uputstvo za pocetnike

offline
  • C# and PHP Developer
  • Pridružio: 16 Feb 2011
  • Poruke: 1630
  • Gde živiš: Pancevo

Napisano: 13 Avg 2011 22:04

Uvod u ActionSrcipt 3 - Za Pocetnike!!!

Dakle u pitanju je domaci, opsti ActionScript 3 tutrial koji sam ja napisao.
Napisan je donekle po skolskom programu tako da je namenjen kao pomoc onima koji ActionScript tek pocinju da uce tako i onima koji ga vec znaju moze posluziti kao podsedtnik.

Vecina materijala je nekima poznata iz AS3 Help-era koji se nalazi na Adobe sajtu.

U ovom tutorialu spominjacu opste stvari AS3 namenjene pocetnicima.
Pre samog pocetka objasnicu cu razlike izmedju verzija AS1, AS2, AS3. Tutorial nije sveobuhvatni i neocekujte hiljade strana od kojih ce vam se zivot smuciti.

ActionScript sintaksa i razlike

Primena ActionScript verzije 3.0 znatno unapredjuje funkcionalnost Flash'a. Iako izgleda
komplikovano za one koji nisu koristili Script jezike, možete postići odlične rezultate sa
veoma jednostavnim Script'om.

ActionScript je vrlo sličan JavaScript'u, omogućava vam da dodate interakcije
animacijama. ActionScript možete koristiti za zaustavljanje animacije, za dodavanje funkcija tasterima, učitavanje teksta sa neke URL adrese i za razne kompleksne programerske zahteve.

Actionscript 1.0 je bio proceduralni jezik, verzija 2.0 je postala objektno orjentisana, ali na početnom nivou, dok verzija 3.0 donosi potpuno objektno orjentisano
programiranje sto vam daje vise slobode i prednosti. Pre nego sto se pocnete raspitivati Objektno orjentisanom Programiranju u ActionScriptu najpre da se upoznamo sa osnovnim terminima.

Promenljiva (Variable)

Promenljiva predstavlja tip podatka koji najčešće nije konstantan. Kada definišete
promenljivu, ujedno definišete i tip podatka, što odredjuje koje podatke će promenljiva
predstavljati. Za razliku od PHP programskog jezika mozete definisati promenljivu ali nemorate da definisete tip podataka.

U ActionScriptu imamo tri vrste tipova podataka:

1. Primitivni Tipovi Podataka
2. Referentni Tipovi Podataka
3. Specijalni Tipovi Podataka

*Primitivni Tipovi Podataka mogu biti - STRING, NUMBER i BOOLEAN
*Referentni Tipovi Podataka mogu biti - OBJECT, FUNCTION, MovieClip
*Specijalni Tipovi Podataka mogu biti - NULL i UNDEFINED

var untyped:*;    // () Nedefinasano var boolean:Boolean; // false var number:Number; // NaN var integer:int; // 0 var unsignedInteger:uint;  // 0 var string:String;   // null var object:Object;   // null

Promenljiva String može sadržati brojeve i slova.
Promenljiva Number može sadržati samo brojeve.
Promenljiva Boolean koristi se za podatke tacno ili netacno (True, False)
Promenljiva INT je 32 bitni inticer izmedju -2,142,483,648 i 2,147 , 483, 647
Promenljiva NULL koaja sadrzi samo jednu nulu.
var promenljiva = 1;

Promenljive moraju imati jedinstveno ime, i morate voditi računa o malim i velikim
slovima. Imena promenljivih mogu sadržati samo brojeve, slova i donje crte, a ne mogu
počinjati brojem.

Rezervisana reč (Keyword)

Rezervisana reč, predstavlja reč koja se koristi da pokrene odredjeni postupak ili
operaciju. Na primer, jedna od ključnih reči je VAR koja kreira promenljivu.

Rezervisane reči se ne mogu koristiti kao promenljive, zbog toga što ih ActionScript
koristi za pokretanje operacija.

Parametri (Parameters)

Parametri omogućuju dodavanje specifičnih detalja, zadavanjem vrednosti izmedju
zagrada, u liniji koda. Na primer, u kodu gotoAndPlay(5); parametar 5 upućuje skript da
predje na frejm 5.

Stringovi (String)

U AS3 i ostalim verzijama String je tekstualna vrenost slova, brojeva ili drugih vrednosti.
U sledecem primeru napravicu promenljivu koja sadrzi String tip podataka i dodeljuje slovni niz vrednosti promenljive...Stringove bi trebalo da svi ukapirate jer su veoma jednostavni i cesto cete se susretati sa ovim delom gradiva. Vrednost Stringa se uvek nalazi izmedju navodnika ("") ili (' ')

Deklarisanje stringa:
var imeAlbuma:String = "Nojeva Barka";

Također možete napraviti String pomoću NEW operatora:
var imeAlbuma:String = new String("Nojeva Barka");

Ova dva stringa su Ekvivalentna!

Primer 2
var  imeAlbuma:String = " <span>Nojeva Barka</span>"; var  imeAlbuma:String = '<item>Nojeva Barka</item>';

Duzinu Stringa
Ako zelimo da vidimo koliko nas string sadrzi broj karatera to mozemo uciti sledecom metodom.

length
var imeAlbuma:String = new String('Nojeva Barka'); trace(imeAlbuma.length); //Rezultat : 11

Povezivanje Stringova vrsimo nardbom Concat();

concat();

var str1:String = "Bonjour"; var str2:String = "from"; var str3:String = "Paris"; var str4:String = str1.concat(" ", str2, " ", str3); // str4 == "Bonjour from Paris"

Možete koristiti indexOf () i lastIndexOf () metode kako bi pronašli odgovarajuće podnizove unutar znakovnog niza, kao u sljedećem primeru*
var str:String = "The moon, the stars, the sea, the land"; trace(str.indexOf("the")); // Rezultat je : 10
Uočite da indexOf () metoda sadrzi velika i mala slova.

Pored ovoga postoje mnogobrojne metode za rad sa stringovima koje ja sada necu nabrajati jer ih ima jako puno. Napisacu jos jednu jako korisnu koja vam omogucava da konvertujete string u velika i mala slova.

Konvertovanje stringa radi se uz pomoc dve metode
1. toLowerCase() - Mala Slova
2. toUpperCase() - Velika Slova

var str:String = "Nojeva Barka, #9." trace(str.toLowerCase()); // Rezultat je =  nojeva barka, #9. trace(str.toUpperCase()); // Rezultat je = NOJEVA BARKA, #9.

Za sada je dovoljno o stringovima nadam se da su ova par primera pomogla da ukapirate sta su stringovi i neke osnovne metode stringova.... POstoje mnogobrojne metode koje mozete da pogledate u AS3 manuelu koje se koriste za rad sa stringovima...
Preporucene metode koje bi trebali nauciti za rad sa stringovima:
charAt(), charCodeAt(), fromCharCode(), toString(), substr(), substring(), indexOf(), lastIndexOf(), split(), match(), search() i replace().


Funkcija (Function)

Funkcija predstavlja grupu iskaza kojima pristupate pomoću imena. Funkcija omogućava
da koristite skup iskaza više puta, a da ne morate da kucate sve iskaze, već samo naziv
funkcije.

Na primer, ako imate skript koji ima jednu liniju koda (jedan iskaz), nije problem da ga
otkucate ponovo za svaki taster ili neki drugi simbol. Ako imate skript koji ima mnogo
više iskaza i želite da primenite taj skript za nekoliko tastera, mnogo je lakše da kreirate
funkciju.

Postoje dva nacina kojim mozemo kreirati funkciju. Mozemo kreirati imenovanu funkciju a mozemo napraviti i anonimnu.
Definicija imenovane funkcije u praksi je
function [imeFunkcije] ([parameter1, parametar2]) {    [kod funkicje] }

i anonimne funkcije
var [imeFunkcije] = function ([parameter1, parametar2]) {  [kod funkcije] }

Jednostavn Primer u praksi

function izlistajAlbume() {       trace("Album 1");       trace("Album 2");       trace("Album 3");      } izlistajAlbume();  //Pozivanje funkcije

Jednostavn Primer u praksi za parametrima

function izlistajAlbume(album1:String, album2:String, album3:String) {       trace(album1);       trace(album2);       trace(album3);      } izlistajAlbume('Nojeva Barka', 'My City', 'Sumer Day');  //Pozivanje funkcije

Primer u praksi vracanje vrednosti funkcije

function cenaAlbuma():Number{    var nojevaBarka:Number = 3.99;    var sumerDay:Number = 8.99;    return nojevaBarka + sumerDay; //Rezevisana rec RETURN } trace(cenaAlbuma()); //Rezultat je 12.98



Klasa (Class)

Klasa predstavlja apstraktni prikaz objekta. Svaki objekat u ActionScript"u 3.0 je
definisan klasom. Klasa je kategorija objekata koji imaju iste metode i svojstva. Ako na
primer, imate klasu automobil, njegova svojstva sadrže četiri točka i sl.

ActionScript sadrži preko 100 ugradjenih klasa koje su predefinisani tipovi podataka. Da
biste pristupili metodima i svojstvima klase, potrebno je kreirati primerak (instancu)
klase deklarisanjem promenljive i odreñivanjem tipa podataka.


Domen (Scope)

Domen definiše oblast u Flash fajlu u kome se promenljive mogu referencirati.
Promenljive mogu biti lokalne, globalne ili Timeline (vremenske).

1. Lokalne promenljive ukazuju samo na jednu oblast, na primer frejm ili funkciju. Kada prestane izvršavanje te oblasti, lokalna promenljiva nestaje. Unutar
funkcije, lokalne promenljive se definišu unutar vitičastih zagrada {}.

2. Globalne promenljive su dostupne bilo gde, bilo kada i mogu ukazivati na bilo šta. Možete ih definisati, a zatim koristiti na ostalim frejmovima pa čak i drugim
SWF fajlovima koji su smešteni u glavni Movie fajl.

3. Timeline promenljive su dostupne bilo kom skriptu u okviru istog Timeline"a. Pošto je promenljiva definisana na Timeline"u, dostupna je svim frejmovima koji
se u njoj nalaze.

Metodi (Methods)

Metodi su ključne reči koji daju rezultat akcije. Na primer dva metoda koja su povezana
sa MovieClip klasom su stop() i gotoAndPlay().

Svojstva (Properties)

Svojstva opisuju objekat u klasi. Na primer, svojstva video fajla sadrže visinu i širinu, X i Y koordinate i sl.

Sintaksa (Syntax)

* Tačka i zarez (;) na kraju reda obaveštava ActionScript da je stigao do kraja linije koda i da predje u novu.
* Svaka otvorena zagrada mora da ima i odgovarajuću zatvorenu zagradu. Isto pravilo važi za sve tipove zagrada. (), [], {}.
* Tačka (.) omogućava pristup svojstvima i metodima objekta. Otkucajte ime primerka (instance), zatim stavite tacku, zatim naziv svojstva ili metoda.
* Kada unosite niz karaktera (String) ili naziv fajla, koristite znake navoda.
* Kao i u drugim jezicima i u ActionScript"u možete dodavati komentare koji služe kao podsetnik ili objašnjenje o tome šta ste kojim delom skripta želeli da
postignete. Da biste dodali jednoredni komentar, započnite ga sa dve kose crte
(//), a višeredni komentar započnite sa /* i završite sa */.

Actions panel

Actions panel otvaramo pritiskom na F9 ili iz menija Window > Actions.



Dok pišete skript u Action panelu, Flash vam nudi pomoć na nekoliko načina:

* Reči koje imaju specifično značenje u ActionScript"u, kao što su rezervisane reči, predstavljene su plavom bojom dok ih pišete u Action panelu.
* Reči koje nisu rezervisane, kao na primer nazivi promenljivih, predstavljene su crnom bojom.
* Stringovi (nizovi karaktera) predstavljeni su zelenom bojom.
* Komentari, koje ActionScript ignoriše (ne prevodi), sive su boje.
* Dok pišete ActionScript, Flash može da otkrije koju akciju pišete na osnovu unetih početnih slova i prikazuje moguće kodove.
Postoje dva načina pogotka koda (Code Hint): predlog (Tooltip) koji sadrži celu sintaksu za odredjenu akciju; pop"
up meni koji prikazuje listu mogućih ActionScript elemenata.
* Da biste proverili sintaksu koju ste napisali, kliknite na ikonu AutoFormat ( ) koja će prekontrolisati i formatirati skript tako da bude pregledniji za čitanje; ili kliknite na ikonu Check Syntax ( ), sintaksne greške će biti izlistane u panelu Compiler Errors.

Paleta sa alatima Action toolbox, pruža brz pristup osnovnim elementima ActionScript"a.
Grupisani su po kategoriji. Da biste ih dodalu u vaš skript, kliknite dvaput na njih.

U Action toolbox"u nalazi se više kategorija. Kategorija Top Level sadrži najčešće
korišćene klase. Ako izaberete klasu, možete pristupiti njenim metodima i svojsvima.

Ako tražite odredjenu grupu kodova, ali niste sigurni kako da ih napišete, možete ih
pronaći u listi Index. U zavisnosti od izabrane verzije Actionscript, pri kreiranju novog
filma zavise i Actionscript akcije koje će se pojaviti u spisku. Na vrhu se nalazi meni
kojim možete preći iz spiska Actionscript 1.0 i 2.0 u Actionscript 3.0 komande. Ono što
je bitno jeste da ne možete kombinovati ove dve vrste Actionscript"a, pa vodite računa.

Ne morate koristiti Toolbox da biste dodavali kod u skript, ali vam može pomoći da kod
bude ispravno unet.


Primena promenljivih

Promenljive predstavljaju podatke, a njihove vrednosti se mogu menjati. Upotrebite
promenljivu Tekst da biste utvrdili tekstualni fajl koji će se učitati kada kliknete na
taster. Vrednost promenljive će se promeniti za svaki taster, tako da se svakog puta
učitava drugi fajl.

Neke akcije su jednostavne kao stop akcija, dok su neke veoma komplikovane i
zahtevaju parametre pa je teško utvrditi koje opcije koristiti za odreñene akcije. Zbog
toga je poželjno koristiti Script Assist mode koji vam nudi da dodajete metode,
parametre ili promenljive u zavisnosti od akcije, a zatim sam prikupi informacije koristeći
ispravnu sintaksu.

Script Assist neće sam napisati skript. On samo pomaže da prikupljene informacije ispravno složite u sintaksu.

Kliknite na Script Assist u Actions panelu, zatim dvaput kliknite na opciju u Actions toolbox"u da biste je dodali na Script panel.



Gornji deo Action panela prikazuje polja i opcije koje su dostupna za odreñenu akciju.
Izaberite Options i unesite vrednosti koji odgovaraju vašem skriptu.

Da biste nastavili, morate da definišete promenljive. Upotrebite rezervisanu reč var i dodelite promenljivoj ime i vrednost.

1. Kliknite na Script Assist u Action panelu.
2. U Action toolbox"u kliknite na Statements > Variable.
3. Dva put kliknite na rezervisanu reč var da biste je dodali na Script panel. Script Assist otvara dva polja: Variables i Type.
4.U polju Variables upišite: Tekst = ”Ovo je neki tekst” , dok kucate pojavljuje se odgovarajuća sintaksa u Script panelu.
5. Iz padajućeg menija Type izaberite String.
6. Kliknite Script Assist da biste izašli iz Script Assist moda.

Putanje simbola

Već je rečeno da Actionscript može da kontroliše odredjene parametre simbola. Medjutim,
tu nam nisu od koristi imena simbola, s obzirom na to da se jedan simbol može više puta
pojaviti na sceni. Zato je uveden koncept Instance Name, koji svakom simbolu dodeljuje
jedinstveno ime. Samo ime instance odreñujete sami u Properties panelu.

Kako bi smo Actionscript"om mogli da kontrolišemo neki simbol, moramo znati kako da
postavimo putanju do tog simbola.

Glavna scena svakog filma je _root nivo. Ovo je osnovni nivo i možete postaviti putanju
tako da uvek kreće od ovog osnovnog nivoa. Ako na glavnoj sceni imamo neki simbol čiji
je Instance name na primer Krug (dakle, Instance name, a ne ime simbola), onda je
putanja do tog simbola:

_root.Krug

Primeticete tacku izmedju ovde dve reci. Tacka mora da stoji tu i nisu dozvoljeni razmaci
jer ceo izraz cini putanju.

Sada pretpostavimo da u okviru simbola koji se nalazi na glavnoj sceni i ima Instance Name krug imamo jos jedan simbol koji ima Instance Name Kvadrat. Dakle u simbolu Krug imamo simbol Kvadrat ( i dalje pricamo o Instace Name-u).

Putanja takvog simbola bi bila:
_root.Krug.Kvadrat._x = 100;

Parametar _X je rezervisana rec koja se odnosi na X koordinatu simbola.

Medjutim, sta se desava ako imate simbol u simbolu pa u njemu jos jedan simbol, i jos jedan....
Slozicemo se da bi bilo naporno pisati ovakvu putanju do tog simbola jer bi ona izgledala ovako:

_root.simbol1.simbol2.simbol3.simbol4....sinbolX._x = 100;

Umesto toga, uvodimo koncept relativnih putanja.

Naime, ako imamo malopredjasnju situaciju i na sceni imamo MovieClip simbol sa Instance Name-om Krug, a u njemu Movie Clip sa Instance Name-om Kvadrat i jos jedan MovioClip simbol sa Instance Name-om Elipsa. Aku u akciju dodamo frejm koji se nalazu u SIMBOLU kvadrat, onda ce na tom mestu Timeline simbola Krug biti _parent. Dakle, ako zelimo da odemo samo jedan korak unazad, onda cemo koristiti _parent.

Dakle, ako iz Timeline-a simbola Kvadrat zelimo da editujemo X koordinatu simbola Elipsa, to mozemo uciniti na dva nacina :

1. Apsolutnom adresom: _root.Krug.Elipsa._x
2. Relativnom adresom: _parent.Elipsa._x

Relativnom adresom _parent "izlazimo" jedam nivo iznad, a zatim u tom nivou trazimo simbol odredjenog Instance Name-a.

Takodje, mozemo vise puta upotrebljavati _parent

_parent._parent._parent.imeSimbola

Ovime cemo izaci tri nivo iznad nivoa na kojem dodajemo kod, a zatim tu kontrolisati simbol.

Ukoliko se nalazite na timeline-u simbola Krug i zelite da kontrolisete X koordinatu simbola Elipsa, bice dovoljno samo da upisete:

elipsa._x = 100;

Jako je bitno da razumete koncept putanja simbola, kako biste mogli da kontrolisete koji film zelite da pustite ilu kojem filmu zelite da zaustevite animaciju.
Flash ima mogucnost da u jednom trenutku pusta vise vilmova (animacija) i bice vam potrebno da kontrolisete koji ce biti pusten, koji ne.

Sintaksa Akcije

U okviru ActionScript 1.0 i 2.0 postoje akcije koje su kopatibalne te ih mozete kombinovati. Razlika je u nacinu kojima dodeljujete akcije.

stop()

Akcija stop() sluzi za zaustavljanje glave za citanje na nekom frejmu. Naime, pimetili ste da pri pustanju filma koji ima vise od jednog frejma, glava za citanje krece od prvog frejma i ide do poslednjeg brzinom definisanom Frame Rate-om, i nakon poslednjeg frejma skace na privi i ponavlja pustanje filma. Da bi se to izbeglo, moguce je dodati akciju kojom zaustavljamo glavu za citanje.

Ako imate neki film koji treje odredjeni broj frejmova, mozete dodati akciju stop u bilo kom kljucnom frejmu.

1. Selektujte kljucni frejm u Timeline panelu.
2. Pozovite Action panel pritiskom na F9.
3. Dodajte akciju stop();.

Primeticete da se sada film zausttavlja u tom frejmu. I ako imate vise slojeva, nije potrebno dodeljivati akcije u sve slojeve. Dovoljno je na jednom mestu dodati akciju stop(); i fil ce biti zaustavljen.


play()


Suproto akciji stop() postokji akcija play(). No, ona ne moze da stoji sama jer se fim podrazumevano pusta. Ova akcije se dodaje uz neki uslov u trenutku kada je film stopiran. Recimo, ako imamo film koji je stopiran u nekom frejmu i jedan taster na sceni, mozemo dodati akciju play() u trenutku kada se klikne na taster. O tome ce biti detaljnije pisano u nastavku.
  on(uslov) {         akcija;   }

Uslovna akcija ON se moze dodati MovieClip i Button simbolima kako bi se na neki uslov izvrsila odredjena akcija. Recimo, ako zelimo da se desi akcija kada predjemo misem preko tastera na sceni, upotrebicemo ovu akciju. Ovakva sintaksa odgovara Acrtonscript 1.0 verziji i dodaje se simbou, dakle selektovanjem simbola, a zatim upisivanjem koda.

Najcesce korisceni uslovi su:

* rollOver - na prelazak kursora preko simbola
* rollOut - sklanjanje kursora sa simbola
* press - na pritisak tastera misa dok je kursor iznad simbola
* release - na pustanje tastera misa dok je kursor iznad simbola
* releaseOutside - na pustanje tastera misa dok je kursor van granica simbola

Primer

Napravicemo neku animaciju na sceni i na posebnom sloju neki Button simbol. Simbolu cemo dodati akciju:
on (press) {       stop(); } on (release) {     play(); }

Ukoliko zelite da dodate AcitonScript 2.0 kod iste namene, moracete dodeliti Instance Name tom tastreu (nps. taster1) a zatim dodeliti sledeci kod, ovog puta frejm:

taster1.onPress=function() { stop(); } taster1.onRelease=function(){ play(); }

Kao rezultat dobicete animaciju koja traje dokle god se ne pritisne simbol na sceni (i zadrzi pritisnut).
Tada se animacija stopira. Nakon pustanja tastera misa, animacija ponovo krece.
Mozete dotati i vise akcioja u odgovarajucem delum dakle nije neophodno zadrzati se samo na jednoj akaciji kao rezultat uslova.

gotoAndPlay()

Ukoliko vam je potrebni da iz nekog frejma skocite na neki drugi frejm vaseg filma (i odatle nastavite prikazivanje), mozete koristiti akciju:

gotoAndPlay(broj_frejma);

Takodje, ukoliko ste oznacili ime frejma u properties panelu mozete upisati i

gotoAndPlay(ime_frejma);

Mozete i ovu akciju dodati u uslov. Ako zelite da glava za citanje skoci na frejm broj 100 ako se klikne na simbol, tom simbolu cete dodati akciju:

on (press){ gotoAndPlay(100); }

getURL()

Ukoliko je portrebno skociti na odredjeni sajt sa vaseg sajta, koristicemo ovu komantu.
Naime, ponekad je potrebno na sajtu imati linkove koji ce na klik otvarati neki novi sajt ili neku stranicu na sajtu. Ovu akciju mozete dodati i i simbolu na sceni uz on() uslov a moguce je i postaviti direktno na frejm.

Kreiramo simbol i dodajemo mu akciju:

on(press) {     getURL("http://www.mycity.rs", "_blank"); }

Ovim cete kao rezultat klika na simbol dobiti otvoren novi prozor sajta ciju ste adresu uneli (zbog parametra _blank). Ukoliko zelite da se sajt otvara u istom prozoru, umesto "_blank", upiste "_self".

Uslovi iskazi - IF/ELSE


Uslovi iskazi ocekuju od skripta da odredi da li je nesto tacno TRUE ili netacno FALSE i da deluje u zavistosti od toga. Uslovni iskazi imaju siroku primenu. Na primer, da odredi da li se neki video ucitao, da proceni unos korisnika kao sto je sifra, odgovori na pitanje iz ankete itd...

Najcesce korisceni uslovni iskazi su IF iskazi, koji proveravaju vrednost ili izraz u zagradi.
Ako je vrednost TRUE, linija koda u viticastim zagradame se izvrsava, a ako je vrednost FALSE
Skript ih ignorise. Cesto se u ovakve iskaze dodaje ELSE iskaz koji nudi alternativne instrukcije ako uslov true.

Nakon toga se u viticastim zagradama dodaje metod, kako bi se skriptu dale instrukcije.
Na primer, ako scripta proverava sifru korisnika i ako je sifra pogresna, script prelazi na frejm koji je oznacen kao odobreno. Ako je sifra tacna, script prelazi na frejm PRIHVACENO.

* Script koristi IF iskaz da bi proverio da li je vrednost sifre NULL;.
* Iskaz ELSE provera da li je sifra jednaka reci korisnik (ukoliko ste postavili za sifru);

Primer

if (password == null) {        gotoAndStop("Rejection");  }  else if (password == "Korisnik") {       gotoAndPlay ("Acceptance"); }

onClipEvent()

Kao sto smo vec videli upotrebom uslova on() mozemo dotati neke akcije koje se izvrsavaju na prelazak kursora misa preko simbola ili na klik. Pored tog uslova, imamo jos jedan koji se takodje dodaje simbolu samo su uslovi drugaciji:

* enterFrame - Akcija se izvrsavaju kada god se simbol pojavi na sceni u nekom frejmu. U praksi to znaci da se akcije izvrsavaju onoliko puta u sekundi koliki je frame rate tog frejma.
* load - Akcije se izvrsavaju samo kada se simbol pojavi na sceini (ucita filmu).
* unload - Akcije ce se izvrsiti samo kada se film ukloni
* mouseMove - Akcije ce se izvrsiti na svkao pomeranje kursora

recimo ako zelimo da se neki simbol pomera po 30 px u sekindi ( ako je frame rate 30 FPS)
ali postepeno, piksel po piksel, mozemo nekom simbolu dodati kod:

onClipEvent(enterFrame){       imeSimbola._x++; }

Na ovaj nacin smo u svakom frejmu pomerili vrednost X simbola imeSimbola za po 1 podeljak.


loadMovie()

U flashu kreiramo simbole i animacije koje se pri izbvozu nalaze u jednom SWF fajlu.
Medjutim moguce je u jedan SWF fajl u toku emitovanja uvuci drugi SWF fajl i prikazati ga kao deo glavnog filma.

Akcija koja zsluzi za to je loadMovei(). Njom je moguce neki postojeci simbol na sceni ucitati neki eksterni SWF fajl i prikazati ga.

Ako na primer imamo simbol na glavnoj sceni koji ima X,Y koordinate 0,0 i instance name myCity i ako dodamo akciju na glavni timeline:

loadMovie(dodani_fajl.swf, myCity);

kada glava za citanje dodje do tog frejma, umesto simbola myCity pojavice se film iza faja dodani_fajl.swf

mogli bismo da dodamo i apsolutnu putanju:

loadMovie(dodani_fajl.swf, _root.myCity);

i rezultat ovoga bi bio isti. Fajl dodani_fajl.swf mora biti u istom folderu kai i fajl koji ga uvlaci a ako nisi u istom Folderu onda je potrebno naznaciti putanju do dodatnog fajla:

loadMovie(flash/files/dodani_fajl.swf, _root.myCity);

Na ovaj nacin mozemo ucitati i JPG slike a upotrebim AS3 jezika mozemo praviti i mnogo naprednije kombinacije fajlova.

No, kao sto sam rekao na samom pocetko da je ovo samo uvod u action script u nesto naj jednostavnije. Ako bih sada pisao sve moguce onda bih to bilo nesto jako ogromno sto bi zahtevalo dosta vremena. Sada znate nesto jednostavno koje vam je pokazalo neki pravac. Pisao sam manje koda vise teorije kako bi ukapirali bolje... Sada je potreban svakodnevni rad i ucenje ostalih funkcija.

Ovih dana cu dodati jos nekoliko prmera koda tako da ce tutorial svakodnevno biti obogacen novim funkcijama i primerima.. Za sada ovoliko od mene.

Nadam se da vam se dopalo i da vam je pomoglo...

Pozdrav!!! Ziveli

Dopuna: 15 Avg 2011 18:44

Dopuna: Rad sa STRINGOVIMA !!!

Dopuna: 16 Avg 2011 18:46

Dopuna: Rad sa parametrima i vracanje vrednosti funkcije !!!



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 1047 korisnika na forumu :: 37 registrovanih, 6 sakrivenih i 1004 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: _Rade, A.R.Chafee.Jr., ArchaBasha, avijacija, bigfoot, Bobrock1, bojan_t, bokisha253, ccoogg123, darkojbn, Dežurni pod palubom, Dogma21, galerija, HrcAk47, ikan, Jeremiah, Kriglord, Krusarac, kybonacci, loon123, mercedesamg, Metanoja, MiG-29M2, NoOneEver Dreams, ozzy, pein, raptorsi, Romibrat, Silvertooth, Sirius, Srle993, stegonosa, Tas011, Vatreni Zmaj, VJ, wolverined4, Čivi