ActionScript 3 partikelsystem Snefald i Flash
Metode to

Den anden metode giver os mulighed for kun at bruge et par snefnug i stedet for kontinuerligt at oprette nye. Men for at gøre dette, bliver vi nødt til at finde en måde at genanvende de snefnug, som vi skaber. Det første trin er at ændre den måde, vi kalder snefnugfunktionen, som skaber snefnugene. Vi ønsker ikke længere at oprette en ny snefnug med hver nye ramme, så vi bliver nødt til at fjerne Event Listener øverst på koden.

stage.addEventListener (Event.ENTER_FRAME, snefnug);

Nu tilføjer vi koden, der skaber et lille antal snefnug. Vi bruger en for loop-erklæring inden for snefnugfunktionen til at kontrollere antallet af snefnug, der skal oprettes. Vi har brug for omkring 70 snefnug. Hvis vi øger dette antal meget højere, bliver animationen igen til opgave. Placer din markør inde i snefnugfunktionskoden, lige efter åbningens krøllede beslag, og tilføj koden, som fortæller Flash at gentage snefnugfunktionen 70 gange. Derefter tilføjes åbningens krøllede beslag til løkken. Du kan genkende dette for loop-kode fra den anden tutorial i denne serie.

funktion snefnug (begivenhed: begivenhed): annulleret
{
for (var i: Antal = 0; i <70; i ++)
{


Resten af ​​snefnugfunktionskoden skal forblive den samme. Nu er vi nødt til at lukke for-loopen med et lukke krøllet beslag. Placer dette beslag lige efter sidste linie i funktionen. Her er koden. Jeg har flyttet funktionen til højre for at gøre den mere læsbar. Dette er dog ikke nødvendigt for at koden fungerer.

Endelig er vi nødt til at fjerne snefaldsfunktionen inden for snefnugfunktionen. Dette er let at gøre. Flyt bare det krøllede beslag, der lukker snefnugfunktionen fra bunden af ​​programmet til lige under slutningen af ​​for loop-koden. Nu har vi to funktioner, der er helt adskilt fra hinanden.

Da vi ikke længere ringer til snefnugfunktionen med Event Listener, som vi fjernede fra toppen af ​​koden, bliver vi nødt til at ringe til den med et simpelt funktionsopkald i stedet. Da vi bruger en for loop-sætning inden for funktionen til at gentage funktionen 70 gange, behøver vi kun at kalde selve funktionen én gang. I slutningen af ​​hele programkoden skal du placere dette funktionskald.

snefnug ();

Endelig er vi nødt til at fjerne removeChild-koden, som vi føjede til vores kode til metode én. Husk, at vi ønsker at genanvende disse snefnug i stedet for at fjerne dem fra displaylisten. Fjern følgende kode.

removeChild (_Snowflake);

Hvis du tester din film, får du fejlmeddelelser. Lad os tage os af den sidste fejl på listen. Vi fik denne fejlmeddelelse, fordi vi har et argument inden for parenteserne i snefnugfunktionskoden. Men vi bruger ikke længere dette "begivenhed: begivenhed" -argumentet, da vi fjernede begivenhedslytteren. Vi er nødt til at fjerne "begivenhed: begivenhed" fra parenteserne.

funktion snefnug (): annulleret

← Tilbage | Næste →

Copyright 2018 Adobe Systems Incorporated. Alle rettigheder forbeholdes. Adobe-produktskærmbilleder (r) genudtrykt med tilladelse fra Adobe Systems Incorporated. Adobe, Photoshop, Photoshop Album, Photoshop Elements, Illustrator, InDesign, GoLive, Acrobat, Cue, Premiere Pro, Premiere Elements, Bridge, After Effects, InCopy, Dreamweaver, Flash, ActionScript, fyrværkeri, Bidrage, Captivate, Flash Catalyst og Flash Paper er / er enten [a] registreret varemærke [er] eller et varemærke [s] fra Adobe Systems Incorporated i USA og / eller andre lande.


Video Instruktioner: Fire Particle Animation in Adobe Flash [Adobe Animate] (Kan 2024).