Sistem za delce Flash CS3 ActionScript 3
Druga sporočila o napakah so se zgodila, ker smo funkcijo sneženja odstranili znotraj funkcije snežinke. Zaradi tega funkcija sneženja ne ve, kako prepoznati snežinke. Spremeniti moramo funkcijsko kodo snežnih padavin, da bomo lahko prepoznali trenutno ustvarjeno snežinko. Na štirih mestih, do katerih bo prišlo, bomo spremenili "_Snowflake" v "event.target".

Imamo še en popravek, preden bomo lahko še enkrat preizkusili svoj film. Vrnimo se k funkciji kode snežinke. Poslušalec dogodkov znotraj te kode pokliče funkcijo sneženja. A na odru se še vedno posluša. To moramo spremeniti tako, da bo poslušalec dogodkov pritrjen na vsako novo snežinko, ko je ustvarjena, in ne na vsak nov okvir animacije. Na sprednji strani kode poslušalca dogodkov spremenite "fazo" v "_Snowflake".

Preizkusi še enkrat. Brez napak in vseh 70 snežink pademo na dno odra. Toda potem se animacija ustavi, ker ne ustvarjamo novih snežink po prvih 70 snežink. Dodati moramo nekaj kode, ki bo reciklirala teh 70 snežink nazaj do vrha odra. Ko premikamo te snežinke nazaj na vrh, uporabimo isto kodo Math.random (), ki smo jo uporabili pri funkciji snežinke, da naključno namestimo reciklirane snežinke. Toda tokrat moramo uporabiti "event.target" namesto "_Snowflake".

Končno moramo odstraniti kodo removeEventListener iz funkcije sneženja. Ne želimo več preprečiti, da bi naše snežinke padle več. Želimo, da gredo na vrh in spet padejo dol. Tu je nova koda pogojne izjave.

Preizkusite še enkrat in videli boste, da 70 snežink pada z vrha na oder, nato pa sledijo reciklirane snežinke. Toda nekaj sekund mine, ko reciklirane snežinke začnejo padati. Veliko bolj gladka bi bila animacija, če bi lahko spremenili kodo, tako da bi bilo začetnih 70 snežink nameščenih na celotnem odru namesto samo na vrhu. Vrnimo se k funkciji snežinke in spremenimo vrednost "40" v "400" za lastnost__Snowflake.y. Tako bo 70 začetnih snežink postavljeno na naključne položaje od 0 do 400 vzdolž osi Y, ki bodo pokrivale celoten oder.

Preizkusite še enkrat in imamo uspeh. Shranite snežni prizor kot SnowScene10.fla.

Zdaj smo svojo animacijo optimizirali in animirali odlično, tu bi se lahko ustavili. Toda z le nekaj spremembami bi lahko to kodo naredili za bolj modularni sistem delcev. Potem bi lahko uporabili kodo, da bi karkoli od dežja do prašičev padlo z neba. To bomo storili naprej.

← Nazaj

Avtorske pravice 2018 Adobe Systems Incorporated. Vse pravice pridržane. Posnetki zaslona izdelkov Adobe so bili ponatisnjeni z dovoljenjem 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, Fireworks, Prispevaj, Captivate, Flash Catalyst in Flash Paper so ali so [a] registrirana blagovna znamka (-e) ali blagovna znamka Adobe Systems Incorporated v Združenih državah Amerike in / ali drugih državah.