Cursurile Movieclip și sprite în acțiuni 3

Poate că nu va trebui niciodată să creați o superclasă și apoi o subclasă care să o extindă. Dar, dacă sunteți serios de lucru cu AS3, adică a decis să depășească pur și simplu plasarea codului în cadru pe cronologie, atunci veți întâlni neapărat extinderea de clase, cum ar fi MovieClip și Sprite.







În această lecție veți învăța:

  1. Despre clasele MovieClip și Sprite din ActionScript 3 și care este diferența principală dintre cea de-a doua și prima;
  2. Cum să extindeți aceste clase;
  3. Cum se creează o clasă a documentului și în ce scop servește;
  4. Cum se creează o aplicație simplă în ActionScript 3 (un exemplu practic).

Clasa MovieClip este un șablon pentru toate proprietățile și metodele ActionScript 3. Acestea fac parte din obiectul MovieClip. Acesta conține proprietăți despre care s-ar putea să fiți deja familiarizați, cum ar fi x și y. determinarea locației obiectului pe scena, scara acestuia etc.

În plus față de MovieClip, există o clasă Sprite în AS3. Diferența sa principală față de MovieClip este următoarea: nu are o cronologie. În majoritatea cazurilor, atunci când manipulați obiecte numai cu cod, nu trebuie să vă ocupați de cronologie și cadre. Prin urmare, în astfel de situații este logic să folosiți o clasă mai ușoară de Sprite.

Dacă creați o clasă ActionScript. care extinde MovieClip sau Sprite. ea moșteneste automat toate proprietățile și metodele care pot fi moștenite din aceste clase. Apoi puteți adăuga metode și proprietăți specifice care vor aparține numai tipului de obiect pe care îl creați.

Să presupunem că faceți un joc și doriți să creați un obiect pentru el, de exemplu, o navă spațială. Desigur, acest obiect:

  • ar trebui să fie emise grafic;
  • poziționați-vă pe scenă;
  • mișcați într-un anumit fel;
  • roti;
  • ascultați evenimentele ENTER_FRAME pentru animație;
  • ascultați evenimentele mouse-ului și ale tastaturii pentru a interacționa cu utilizatorul.

Toate aceste lucruri sunt capabile să facă cum ar fi MovieClip. și Sprite. astfel încât să puteți extinde oricare dintre aceste clase.

Apoi puteți adăuga la clasa de extindere astfel de proprietăți unice, cum ar fi:

  • viteză;
  • stocul de combustibil;
  • gradul de deteriorare;

Să creați această clasă:

Observați! Primul lucru pe care trebuie să-l faceți este să importați clasa Sprite. care este în pachetul flash.display. Dacă decideți să extindeți MovieClip. atunci trebuie să importați mai întâi această clasă din același pachet: flash.display. MovieClip.

Crearea unei clase de documente

Aveți deja suficiente informații despre cursurile ActionScript 3 pentru a crea o clasă care ar fi foarte utilă. Am vorbit deja despre cât de importante sunt clasele în crearea unui fișier swf gestionat de AS3. Principalul motiv pentru aceasta este că în ActionScript 3 există un concept al unei clase de documente. În termeni simpli, clasa de documente extinde Sprite sau MovieClip și este utilizată ca clasă principală a SWF-ului dvs. După încărcarea unui astfel de SWF, constructorul său va fi apelat. Acesta va fi punctul de plecare, după care se va întâmpla tot ceea ce doriți:

Dacă lucrați în Flash CS3-CS6, aveți posibilitatea să utilizați clasa de documente ca o opțiune suplimentară. De asemenea, puteți înregistra codul chiar în cadru pe cronologie.







Așadar, să examinăm un exemplu al unei astfel de clase de documente:

Până acum nimic nou, nu-i așa? Toate acestea ați văzut deja în lecția anterioară, dar aici toate informațiile sunt colectate într-un singur loc:

  • Pachetul ActionScript este utilizat în mod implicit;
  • clasa Sprite este importată;
  • clasa Sprite se extinde.

În constructor, scriem linia care apelează metoda init. Puteți pune toate codurile direct în constructor și aceasta nu va fi o eroare, dar se consideră o bună practică de a limita cantitatea de cod în ea. Prin urmare, vom transfera codul nostru la o altă metodă (funcție), și o vom numi deja în constructor. De-a lungul acestui tutorial și următoarele, dacă vă arăt un mic fragment de cod pentru testarea ca exemplu, va trebui să îl încorporați în această metodă de inițializare. După compilarea și rularea filmului flash (swf-file), va fi apelat un constructor, care va gestiona codul. E simplu.

Acum, să învățăm cum să atașăm o clasă de documente într-un fișier swf.

Crearea unei aplicații simple în ActionScript 3.0

Până în prezent, există 3 instrumente care pot crea un fișier swf, care, de fapt, este o aplicație sau un program scris în ActionScript 3:

Toate cele trei produse sunt create de compania americană Adobe. Primele două sunt plătite, al treilea - sursă deschisă, liberă.

În acest curs, vom lucra numai în Flash Professional (în continuare, pur și simplu Flash).

Deci, să creăm o clasă a cărei sarcină va fi să atragem un cerc roșu pe scenă. Acest lucru este ușor, pe baza cunoștințelor acumulate în această lecție și în cursul precedent al cursului "Elementele de bază ale animației în ActionScript 3.0".

În plus, vom învăța despre noua clasă Graphics pentru noi. conținând un set de metode prin care puteți crea forme vectoriale.

Numărul de obiecte de afișare care acceptă capabilitățile de desenare include obiectele Sprite și Shape. Fiecare dintre aceste clase include proprietatea grafică. care este un obiect grafic.

Rețineți că această clasă este o copie exactă a ceea ce am notat atunci când discutăm tema creării unei clase de documente. Aici am adăugat câteva comenzi de desen la metoda init.

Cursurile Movieclip și sprite în acțiuni 3

Rețineți că trebuie să introduceți un nume de clasă, nu un nume de fișier, deci nu este necesar să adăugați o extensie. la sfârșit. Cu toate acestea, dacă clasa dvs. se află într-un pachet cu o anumită structură, specificați calea completă la aceasta, de exemplu, ru. urokiflashas3. Testul.

Cursurile Movieclip și sprite în acțiuni 3

Scalarea unui film flash

Încă un moment pentru notă înainte de a începe programarea reală: dacă vă testați filmul în mediul de dezvoltare Flash sau în Flash Player standalone, acesta va fi afișat în dimensiunile setate în câmpul Dimensiune din panoul Proprietăți.

Cursurile Movieclip și sprite în acțiuni 3

Dar dacă testați într-un browser sau într-un alt program capabil să redați fișiere swf, există posibilitatea ca filmul să umple tot spațiul disponibil, distorsionând dimensiunea inițială definită. Când se întâmplă acest lucru, pur și simplu adăugați următoarele două linii la metoda init () din clasa dvs.:

Acest cod exclude scalarea incorectă a clipului și îl plasează în colțul din stânga sus al ferestrei care îl afișează. Dacă decideți să utilizați acest cod, nu uitați să importați mai întâi clasele flash.display. StageScaleMode și flash.display. StageAlign. Exemplele care vor fi tratate în acest curs nu sunt utilizate de acest cod, deoarece nu este întotdeauna potrivit. Prin urmare, trebuie doar să vă amintiți despre existența sa și să o aplicați acolo unde este necesar.

Sunt sigur că materialul lecției este destul de simplu de înțeles, deci hai să ne îndreptăm direct spre întrebările de control.

Controlați întrebările pentru materialul lecției

  1. Care este diferența principală dintre clasa Sprite și MovieClip?
  2. Ce proprietăți ale acestor clase știți?
  3. Ce este o clasă de documente și ce este pentru ea?
  4. Ce clase din ActionScript 3 acceptă abilitatea de desen vectorial?
  5. Pot introduce codul pe cronologie dacă folosiți clasa de documente?

Puneți întrebări dacă ceva nu este clar. Voi răspunde tuturor.







Articole similare

Trimiteți-le prietenilor: