Flash CS3 ActionScript 3 Partikelsystem
Die anderen Fehlermeldungen sind aufgetreten, weil wir die Schneefallfunktion aus der Schneeflockenfunktion entfernt haben. Aus diesem Grund kann die Schneefallfunktion die Schneeflocken nicht erkennen. Wir müssen den Schneefall-Funktionscode ändern, damit er die gerade erstellte aktuelle Schneeflocke erkennt. Wir werden "_Snowflake" an den vier Stellen, an denen es auftritt, in "event.target" ändern.

Wir haben noch eine Korrektur, bevor wir unseren Film erneut testen können. Kehren wir zum Funktionscode der Schneeflocke zurück. Der Ereignis-Listener in diesem Code ruft die Schneefallfunktion auf. Aber es hört immer noch auf die Bühne. Wir müssen dies ändern, damit der Ereignis-Listener bei der Erstellung an jede neue Schneeflocke und nicht an jeden neuen Frame der Animation angehängt wird. Ändern Sie am Anfang des Ereignislistener-Codes "stage" in "_Snowflake".

Nochmal testen. Keine Fehler und wir haben alle 70 Schneeflocken, die auf den Boden der Bühne fallen. Aber dann stoppt die Animation, weil wir nach den ersten 70 Schneeflocken keine neuen Schneeflocken erstellen. Wir müssen Code hinzufügen, der diese 70 Schneeflocken wieder an die Spitze der Bühne zurückführt. Wenn wir diese Schneeflocken wieder nach oben verschieben, verwenden wir denselben Math.random () - Code, den wir in der Schneeflockenfunktion verwendet haben, um unsere recycelten Schneeflocken zufällig zu platzieren. Diesmal müssen wir jedoch "event.target" anstelle von "_Snowflake" verwenden.

Schließlich müssen wir den Code removeEventListener aus der Schneefallfunktion entfernen. Wir wollen nicht mehr verhindern, dass unsere Schneeflocken fallen. Wir wollen, dass sie nach oben gehen und wieder hinfallen. Hier ist der neue Code für die bedingte Anweisung.

Testen Sie erneut und Sie werden 70 Schneeflocken von oben auf die Bühne fallen sehen, gefolgt von den recycelten Schneeflocken. Es dauert jedoch einige Sekunden, bis die recycelten Schneeflocken zu fallen beginnen. Es wäre eine viel flüssigere Animation, wenn wir den Code so ändern könnten, dass die ersten 70 Schneeflocken auf der gesamten Bühne platziert werden und nicht nur oben. Kehren wir zur Schneeflockenfunktion zurück und ändern Sie "40" in "400" für die Eigenschaft_Snowflake.y. Dadurch werden die 70 anfänglichen Schneeflocken an zufälligen Positionen von 0 bis 400 entlang der Y-Achse platziert, die die gesamte Stufe abdecken.

Testen Sie erneut und wir haben Erfolg. Speichern Sie Ihre Schneeszene als SnowScene10.fla.

Jetzt haben wir unsere Animation optimiert und perfekt animiert, wir könnten hier aufhören. Mit nur wenigen Änderungen könnten wir diesen Code zu einem modulareren Partikelsystem machen. Dann könnten wir den Code verwenden, um alles vom Regen bis zum Fallen von Schweinen vom Himmel fallen zu lassen. Wir werden das als nächstes tun.

← Zurück

Copyright 2018 Adobe Systems Incorporated. Alle Rechte vorbehalten. Screenshots von Adobe-Produkten mit Genehmigung von Adobe Systems Incorporated. Adobe, Photoshop, Photoshop-Album, Photoshop-Elemente, Illustrator, InDesign, GoLive, Acrobat, Cue, Premiere Pro, Premiere-Elemente, Bridge, After Effects, InCopy, Dreamweaver, Flash, ActionScript, Fireworks, Contribute, Captivate, Flash Catalyst und Flash Paper ist / sind entweder [eine] eingetragene Marke (n) oder eine Marke (n) von Adobe Systems Incorporated in den USA und / oder anderen Ländern.


Video-Anleitungen: Fire Particle Animation in Adobe Flash [Adobe Animate] (Kann 2020).