, send julehilsener med lidt klaver julekort,,,,, andel,,,,,,,,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, træt af de gammeldags animeret julekort med julemanden griner, kane flyve i himlen med en masse træer og mousserende lys?det år du har ingen undskyldning.jeg vil vise dig, hvordan at opbygge et virtuelt tastatur, der spiller jingle bells.du kan selv være i stand til at udvide begrebet og tilføje flere sange, og bemærker, at det klaver. for dette - jeg vil bruge en kombination af tweenlite, flex sdk, flash ide og flash udvikle.,,,,,,, trin 1: nye fil, start adobe flash og skabe en actionscript 3 flash fil.,, trin 2: ejendomme, åbne egenskaber og fps - 30 og fase størrelse til 600 x 380px.,, trin 3: lag 1, omdøbe lag 1 som "baggrund" og skabe en hvide rektangel af 580x360.konvertere det til en movieclip symbol, der hedder "frame_mc" og fastsætte sin holdning - x: 10. 10.,, trin 4: drop shadow, tilsættes en dråbe skygge filter med følgende parametre:,, løntrin 5: tastatur lag, der tilføjes et nyt lag, kaldet "tastatur -" skabe en primitiv rektangel 60x190 med 5 pixel hjørne radius, og der er ingen slagtilfælde.gør det til en movieclip symbol og kalde det "keybase_mc".,, trin 6: overvejelser og glød lag, ramte f8 og skabe en ny movieclip kaldet "key_mc".skabe yderligere to lag i key_mc (ud over den allerede med keybase_mc).navn: "tænkepause" og "glød".kopi af rammen for nyoprettede lag.,, trin 7: glow_mc, note: jeg har ændret frame_mc farver for en tid at tillade mig at se ændringerne om nøglerne.vælg movieclip i skæret lag, hedder det "glow_mc" åbne filtre og redigere i henhold til billedet nedenfor:,, trin 8: reflection_mc, udvælge movieclip i overvejelserne lag, hedder det "reflection_mc" åbne filtre og redigere matcher billedet nedenfor:,, trin 9: base_mc nu vælge den movieclip i grund lag, hedder det "base_mc" åbne filtre og redigere matcher billedet nedenfor:,, trin 10: nøgle, kopiere og pasta nøglen, før du ender med 7 tilfælde.få dem ligeligt over scenen.,, trin 11: tilpasse, åbne tilpasse værktøj og klik på "vandret afstand" ikon.,, trin 12: bemærker, at skabe et nyt lag, kalder det "konstaterer".så skriv ned, c d e f g a b, om nøglerne tilføje teksten til en ny movieclip.åben den movieclip filtre og redigere f.eks. billedet nedenfor:,, trin 13: antal, skabe et nyt lag, kalder det "numre".skriv tallene fra 1 til 7, vil dette være de tal, de vil presse på for at få dit tastatur ecard centrale fremhæve.,, trin 14: flex sdk vej, gå til edit > præferencer > actionscript > actionscript 3,0 indstillinger og finde din flex sdk vej (du får brug for det at integrere filer direkte gennem code), trin 15: flash udvikle, åbne flash udvikle (jeg bruger bare det her, fordi jeg kan lide det så meget mere end de sædvanlige actionscript redaktør fra flash ide når pakker) og skabe 2 blanke as3 filer.navn "vigtigste. som" og "baggrund." red dem, i den samme mappe som din. fla, trin 16: dokument, klasse i - ide, der main.as som deres dokument klasse.,, skridt 17: autoplay knap, skabe en autoplay movieclip og kalder det "autoplay_mc".dette vil være en autoplay knap.,, gå 18: snefnug, at skabe et snefnug, der skaber en ny movieclip, udarbejde en smalll hvide cirkel indeni og tilføje en sammenkædning identifikator for "snehvide".,, skridt 19: vigtigste. som i flash udvikle åbne main.as, definere deres vigtigste klasse af en movieclip og skabe en funktion kaldes vigtigste. begynd med at importere disse klasser i din pakke:, import flash.display.movieclip; import flash.events.event; import flash.events.mouseevent; import flash.events.timerevent; import flash.display.stagescalemode; import flash.events.keyboardevent; import flash.utils.timer; import com.greensock.tweenlite; import kom. greensock. lempelse. *; import baggrund; //vil vi skabe en baggrund klasse baseret på pr.lin støj og omdanne matrix sammen med et par fyldt former, så vi kan få en dejlig blød overgang import sne; //jeg tog kirupas sne og pakkede det - > http://troyworks.com/blog/2008/11/26/flash-kirupa-snow-in-as30/import flash. medier. forsvarlig skridt 20: variabler, inde i din klasse, definere disse variabler: //vil det være vores baggrund private var _background: baggrund; //vil dette være vores snestorm private var sne sne; //- > bemærker, //embeding på denne måde kræver flex sdk - > alternativ metode er at tilføje disse lyder til dit bibliotek og tilføje en sammenkædning id til dem.\t\t[Embed(source="assets/A.mp3")] \t\tprivate var A:Class; \t\tprivate var a:Sound = new A() as Sound; \t\t \t\t[Embed(source="assets/B.mp3")] \t\tprivate var B:Class; \t\tprivate var b:Sound = new B() as Sound; \t\t \t\t[Embed(source="assets/C.mp3")] \t\tprivate var C:Class; \t\tprivate var c:Sound = new C() as Sound; \t\t \t\t[Embed(source="assets/D.mp3")] \t\tprivate var D:Class; \t\tprivate var d:Sound = new D() as Sound; \t\t \t\t[Embed(source = "assets/E.mp3")] \t\tprivate var E:Class; \t\tprivate var e:Sound = new E() as Sound; \t\t \t\t[Embed(source="assets/F.mp3")] \t\tprivate var F:Class; \t\tprivate var f:Sound = new F() as Sound; \t\t \t\t[Embed(source="assets/G.mp3")] \t\tprivate var G:Class; \t\tprivate var g:Sound = new G() as Sound; \t\t \t\t \t\t//Storaf bemærkninger i et system vil gøre det lettere at knytte til tastaturet private var noter: array = [c, d, e, f, g, a, b] //note sekvens for musik - private var notesequence: array = [f, f, f, f, f, f, f, a, d, e, f, g, g, g, g, g, e, e, d, b, a, f, d, c) //nuværende bestemmelse, der spiller private var curnote: antal = 0 //sekvens af forsinkelser, at musikken skal have mellem sedler private var. notedelay: array = [100 - 300, 100, 100, 100, 300, 100, 100, 100100200, 100, 100, 200, 90, 90 - 100, 100, 120, 120, 120, 120, 300] //timer at spille musik private var tunetimer: timer = andetr (notedelay [0]), gå 21: main(), den vigtigste funktion, //hovedfunktion venter på den maintimeline tilføjes til fase offentlig funktion main(): ugyldig (addeventlistener (event.added_to_stage, addedtostage)}, skridt 22: sæt, efter at være blevet føjet til fase vil vi nulstille baggrund og virtuelt tastatur: //, når det lægges til fase, vi kan fastsætte et tidspunkt omfang tilstand, baggrund og tage den virtuelle klaver privat funktion addedtostage e: begivenhed): ugyldig (stage.scalemode = stagescalemode.no_scale; addbackground(); startmachine();}, gå 23: baggrundsvirkninger, lad os ordne sig baggrund og sne. //tilføjer baggrund privat funktion addbackground(): ugyldig (_background = nye background (150150); //på grund af den størrelse er mindre, er, at det er meget cpu 'en intensiv _background. x = 5; //give en hvid margen for rammen _background. y = 5, _background.width = 570 //omfang op til størrelsen passer _background.height = 350 frame_mc. addchild (_background); //giver baggrund for rammen sne = ny sne (570, 350) //skaber en snestorm eksempel skridt 24: virtuelt tastatur, initialization til virtuelt tastatur, privat funktion startmachine e: mouseevent = null): ugyldig (//associates tastaturet begivenheder fase. addeventlistener (keyboardevent.key_down, onkeydown) fase. addeventlistener (keyboardevent.key_up, onkeyup) //medarbejdere en autoplay metode til autoplay knapautoplay_mc. addeventlistener (mouseevent.click, startautoplay); autoplay_mc.buttonmode = sandt; //associates noterne til nøgler var jeg: int = 0, mens (< 7) (denne ["nøgle" + jeg]. anm. = bemærkninger [i] jeg + +) //er højdepunktet af nøglerne væk lowlightkeys();}, gå 25: fremhæve, er vi nødt til at skabe en funktion til at fjerne fokus fra de nøgler:, privat funktion lowlightkeys() (var - jeg: int = 0, mens (< 7) (tweenlite. (dette ["nøgle" + i). glow_mc, 0, 5, {- 0}); jeg + +), gå 26: de vigtigste begivenheder, lad os nu klare det centrale og afgørende ned begivenheder:, privat funktion onkeydown e: keyboardevent): ugyldig (var - jeg: int = 0 skift (e.keycode) (sag 49: //keycode for 1.jeg = 0 bryde; sag 50: //keycode 2 i = 1 pause, sag 51: //keycode til 3 i = 2 pause, sag 52: //keycode til 4, i = 3 pause, sag 53: //keycode for 5 - = 4 bryde; sag 54: //keycode for 6 = 5 pause, sag 55: //keycode til 7 i = 6 pause.} bemærkninger [i]. play(); tweenlite. (dette ["nøgle" + i). glow_mc, 0, 5, 1} {-); //understreger de vigtigste} privat funktion onkeyup e: keyboardevent): ugyldig (var - jeg: int = 0 skift (e.keycode) (sag 49: i = 0 bryde; sag 50: i = 1, pause, sag 51: i = 2, pause, sag 52: i = 3 pause, sag 53: i = 4 bryde; sag 54: i = 5.pause, sag 55: i = 6 pause.} tweenlite. (dette ["nøgle" + i). glow_mc, 0, 5, 0} {-); //lowlights nøglen}, skridt 27: autoplay funktioner, start og stop autoplay, privat funktion startautoplay e: mouseevent = nul) (curnote = 0; //, når jeg begynder at autoplay jeg nulstille den nuværende spiller note tunetimer.delay = notedelay [curnote] * 3 //dette øger den forsinkelse, der tidligere tunetimer. addeventlistener (timerevent.timer, autoplaytune) //tilføjer en til at lytte til den her begivenhed for hver gang timeren er sat tunetimer start() //begynder. timeren} privat funktion stopautoplay e: mouseevent = null) (tunetimer. stop() //stopper her tunetimer. removeeventlistener (timerevent.timer, autoplaytune) //fjerner tilfælde}, skridt 28: ajourføring, ajourføring af virtuelt tastatur med musik, privat funktion updatemachine(): ugyldig (lowlightkeys(); //nulstiller nøgler fremhæver var jeg: int = 0, mens (< 7) (hvis dette ["nøgle" + jeg]. anm. = = notesequence [curnote]) (tweenlite. (dette ["nøgle" + i). glow_mc, 0, 5, 1} {-); //, hvis den nuværende bestemmelse er en associeated med nøglen, så fremhæver det} jeg + +) curnote + //går til næste besked hvis (curnote > notesequence. længde) (curnote = 0; //nulstiller nuværende bestemmelse stopautoplay(); //stopper autoplay}}, skridt 29: komplet kode, her er den fulde main.as kode, pakke (import flash.display.movieclip; import flash.events.event. jegmport flash.events.mouseevent; import flash.events.timerevent; import flash.display.stagescalemode; import flash.events.keyboardevent; import flash.utils.timer; import com.greensock.tweenlite; import kom. greensock. lempelse. *; import baggrund; import sne import flash.media.sound; offentlige klasse vigtigste udvider movieclip (private var _background: baggrund og private var sne sne; [omfatter (kilde: "aktiver /a.mp3")] private var en: klasse; private var en: sunde = nye a() som sunde; [omfatter (kilde: "aktiver /b.mp3")] private var b: klasse; private var b: sunde = nye b() som sunde; [omfatter (kilde: "aktiver /c.mp3")] private var c: klasse; private var c: sunde = nye kom som sunde; [omfatter (kilde: "assets/D.mp3")] \t\tprivate var D:Class; \t\tprivate var d:Sound = new D() as Sound; \t\t \t\t[Embed(source = "assets/E.mp3")] \t\tprivate var E:Class; \t\tprivate var e:Sound = new E() as Sound; \t\t \t\t[Embed(source="assets/F.mp3")] \t\tprivate var F:Class; \t\tprivate var f:Sound = new F() as Sound; \t\t \t\t[Embed(source="assets/G.mp3")] \t\tprivate var G:Class; \t\tprivate var g:Sound = new G() as Sound; \t\t \t\tprivate var notes:Array = [c,d,e,f,g,a,b] \t\t\t\t\t\t\t\t\t \t\tprivate var noteSequence:Array = [f, f, f, \t\t\t\t\t\t f, f, f, \t\t\t\t\t\t f, a, d, e, f, \t\t\t\t\t\t g, g, g, \t\t\t\t\t\t g, g, e, e, \t\t\t\t\t\t d, b, a, f, d, c] \t\tprivate var curnote:Number = 0 \t\t\t \t\tprivate var noteDelay:Array = [100, 100 , 300, \t\t\t\t\t 100, 100 ,300, \t\t\t\t\t 100,100, 100100200, 100, 100, 200, 90, 90 - 100, 100, 120, 120, 120, 120, 300] private var tunetimer: timer = nye timer (notedelay [0]); offentlig funktion main(): ugyldig (addeventlistener (event.added_to_stage, addedtostage)} privat funktion addedtostage e: begivenhed): ugyldig (stage.scalemode = stagescalemode.no_scale; addbackground(); startmachine();} //tilføjer baggrund privat funktion addbackground(): ugyldig (_background = ny baggrund (150150); _background. x = 5, _background. y = 5, _background.width = 570 _background.height = 350 frame_mc. addchild (_background); sne = ny sne (570. 350); frame_mc.addchild (sne)} privat funktion startmachine e: mouseevent = null): ugyldig (fase. addeventlistener (keyboardevent.key_down, onkeydown) fase. addeventlistener (keyboardevent.key_up, onkeyup) autoplay_mc. addeventlistener (mouseevent.click, startautoplay); autoplay_mc.buttonmode = sandt, var jeg: int = 0, mens (< 7) (denne ["nøgle" + jeg]. anm. = bemærkninger [i] jeg + +) lowlightkeys();} privat funktion lowlightkeys() (var - jeg: int = 0, mens (< 7) (tweenlite. (dette ["nøgle" + i). glow_mc, 0, 5, 0} {-); jeg + +) privat funktion onkeydown e: keyboardevent): ugyldig (var - jeg: int = 0 skift (e.keycode) (sag 49: i = 0 bryde; sag 50:i = 1 pause, sag 51: i = 2, pause, sag 52: i = 3 pause, sag 53: i = 4 bryde; sag 54: i = 5 pause, sag 55: i = 6 pause.} bemærkninger [i]. play(); tweenlite. (dette ["nøgle". jeg]. glow_mc, 0, 5, 1} {-)} privat funktion onkeyup e: keyboardevent): ugyldig (var - jeg: int = 0 skift (e.keycode) (sag 49: i = 0 bryde; sag 50: i = 1, pause, sag 51: i = 2, pause, sag 52: = 3 pause, sag 53: i = 4 bryde; sag 54: i = 5 pause, sag 55: i = 6 pause.} tweenlite. (dette ["nøgle" + i). glow_mc, 0, 5, 0} {-)) //- spille funktionerprivat funktion startautoplay e: mouseevent = null) (curnote = 0, tunetimer.delay = notedelay [curnote] * 3 tunetimer. addeventlistener (timerevent.timer, autoplaytune) tunetimer. start()} privat funktion stopautoplay e: mouseevent = null) (tunetimer. stop() tunetimer. removeeventlistener (timerevent.timer, autoplaytune) privat funktion autoplaytune e: timerevent) (hvis (curnote < notesequence. længde) (notesequence [curnote]. play(); //spiller note tunetimer.delay = notedelay [curnote] * 3} updatemachine()} privat funktion updatemachine(): ugyldig (lowlightkeys(), var jeg: int = 0, mens (< 7) (hvis dette ["nøglen". jeg]. anm. = = notesequence [curnote]) (tweenlite. (dette ["nøgle" + i). glow_mc, 0, 5, 1} {-)} jeg + +) curnote + +, hvis (curnote > notesequence. længde) (curnote = 0, stopautoplay();}}}}, gå 30: baggrund, klasse, - på den baggrund klasse.vi begynder med at importere disse klasser..., import flash.display.shape; import flash.events.event; import flash.display.sprite; import flash.display.movieclip; import flash.display.bitmap; import flash.display.bitmapdata; import flash.display.blendmode; import flash.geom.colortransform; import flash.geom.rectangle; import flash.geom.point; import flash.geom.matrix; import flash.filters.colormatrixfilter; import flash.display.gradienttype; import flash.display.graphics; import flash.display.interpolationmethod; import flash. udstilling. spreadmethod;, skridt.: variabler,.. så definition af variabler: //støj private var dir: array private var punkt: punkt private var bd: bitmapdata; privatevar bmp: bitmap; private var bdmultiply: bitmapdata; private var bms: sprite; private var korrekte: rektangel private var cmf: colormatrixfilter; private var w: antal private var h: //lineær gradient fylde private var gshape: form private var gmetrics: rektangel private var gmatrix: matrix private var gtype: string private var gspread: string private var ginterpolation: string private var gcolours: array private var galphas: array private var gratios: system //fast stof fylde private var sshape: form, trin 32: oprindelige funktion, her er den oprindelige funktion: offentlige funktion baggrund ($bredde: antal = 100 $højde: antal = 100) (w = $bredde, højde h = $direkte = nye rektangel (0,0 w h); punkt = det nye punkt (0, 0); dir = [litra 1 262), det nye punkt (400, 262)]; //dette er blot for at give en solid baggrund for hele scenen initbackgroundsolid(); //vil kontrollere bightness modsætning og mætning af den støj, initcolormatrix(); //vil der være to støj baggrunde vil indlede dem initbackgroundnoise(); //en gradient tilføjes, så vi ikke får noisiated...- få det?for meget støj, får du noisiated?haha... hmmm) initbackgroundgradient();}, skridt 33: initcolormatrix(), denne funktion vil kontrollere bightness kontrast, og mætningen af støj, det er en meget magtfuld filter, privat funktion initcolormatrix(): ugyldig (cmf = nye colormatrixfilter ([2, 0 0, 0 - 20 //røde 0, 2 0, 0 - 20 //grøn 0, 0, 2, 0 - 20 //blå 0, 0 0, 1 - 20]); //alfa -}, skridt 34: solid baggrund farve, dette er blot for at give en solid baggrund for hele scenen. privat funktion initbackgroundsolid(): ugyldig (sshape = nye shape(); sshape. grafik. beginfill (0x170a02,1) sshape. grafik. drawrect (0, 0 w h); sshape. grafik. endfill(); addchild (sshape)}, skridt 35: støj, støj, priva:te funktion initbackgroundnoise(): ugyldig (//første støj bd nye bitmapdata (m, h, falske, 0) bmp - = nye bitmap (b (nl)); bmp.smoothing = sandt. addchild (bmp); //anden støj, der overlapper det første støj gennem en overlay - blanding tilstand bdmultiply = nye bitmapdata (m, h, falsk, 0); bms = nye sprite(); bms. addchild (nye bitmap (bdmultiply)) addchild (bms) bms.blendmode = "overlay"; //gør baggrund, så støj synes at gå addeventlistener (event.enter_frame, renderbg)}, trin 36: maske, her er den gradient maske. privat funktion initbackgroundgradient() (//det er en grundlæggende gradient æske med alfa - og drejes 90 º, således at det starter fra bunden i stedet for venstre - højre gsh topabe = nye shape(); gmetrics = nye rectangle(); gmatrix = nye matrix(); gtype = gradienttype.linear; gspread = spreadmethod.pad; ginterpolation = interpolationmethod.linear_rgb; gcolours = [0x170a02, 0x170a02] galphas = [0, 1]; gratios = [0, 225] gmatrix. creategradientbox (w h (matematik. pi /180) * 90); gshape. grafik. clear(); gshape. grafik. begingradientfill (gtype, gcolours, galphas, gratios, gmatrix, gspread, ginterpolation); gshape. grafik. drawrect (0, 0 w h); gshape. grafik. endfill(); addchild (gshape)}, skridt 37: gøre det er de!privat funktion renderbg (ref.: begivenhed): ugyldig (//opdateringer støj retning dir [0]. x = 1, 5 db [0]. y - = 0 //disse er her, du kan lege med dir. [1] x - = 0 //disse er her for dig at lege med. dir. [1] y - = 0 //disse er her, du kan lege med //definerer den første baggrund bitmap har perlin støj bd.perlinnoise (m, h, 2, 10, falske sande, 7, sandt, dir); //farver (spille med disse værdier) bd.colortransform (deres nye colortransform (1, 7, 0, 5); //aplies den lyset kontrast og mætning ændringerne tidligere bd.applyfilter (bd, korrekte, punkt, cmf) //andre perlin støj bdmultiply. perlinnoise (m, h, 3, 21, falske sande, 7, sandt, dir) ////////den anden perlin støj collors bdformere sig. colortransform (direkte, nye colortransform (1, 0 0, 4)}, går 38: fuldstændig baggrund klasse, her er hele baggrunden, klasse:, pakke (import flash.display.shape; import flash.events.event; import flash.display.sprite; import flash.display.movieclip; import flash.display.bitmap; import flash.display.bitmapdata; import flash.display.blendmode; import flash.geom.colortransform; import flash.geom.rectangle, import flash.geom.point; import flash.geom.matrix; import flash.filters.colormatrixfilter; import flash.display.gradienttype; import flash.display.graphics; import flash.display.interpolationmethod; import flash.display.spreadmethod; offentlige klasse baggrund omfatter movieclip (private var dir: array private var punkt: punkt private var bd: bitmapdata; private var bmp: bitmap; private var bdmultiply: bitmapdata; private var bms: sprite; private var korrekte: rektangel private var cmf: colormatrixfilter; private var w: antal private var h: antal private var gshape: form private var. gmetrics: rektangel private var gmatrix: matrix private var gtype: string private var gspread: string private var ginterpolation: string private var gcolours: array private var galphas: array private var gratios: array private var sshape: form offentlige funktion baggrund ($bredde: antal = 100 $højde: antal = 100) (w = $bredde, højde h = $direkte = nye direktevinkel (0, 0 w h); punkt = det nye punkt (0, 0); dir = [litra 1 262), det nye punkt (400, 262)]; initbackgroundsolid(); initcolormatrix(); initbackgroundnoise(); initbackgroundgradient();} privat funktion initcolormatrix(): ugyldig (cmf = nye colormatrixfilter ([2 - 0, 0 0, 20, //røde 0, 2 0, 0 - 20 //grøn 0, 0, 2, 0 - 20 //blå 0, 0 0, 1 - 20]); //alfa) privat funktion initbackgroundsolid(): ugyldig (sshape = nye shape(); sshape. grafik. beginfill (0x170a02,1) sshape. grafik. drawrect (0, 0 w h); sshape. grafik. endfill(); addchild (sshape) privat funktion initbackgroundnoise(): ugyldig (bd nye bitmapdata (m, h, false., 0) bmp - = nye bitmap (b (nl)); bmp.smoothing = sandt. addchild (bmp); bdmultiply = nye bitmapdata (m, h, falske, 0); bms = nye sprite(); bms. addchild (nye bitmap (bdmultiply)) addchild (bms) bms.blendmode = "overlay" addeventlistener (event.enter_frame, renderbg)} privat funktion initbackgroundgradient() {gshape = nye shape(); gmetrics = nye rectangle(); gmatrix = nye matrix(); gtype = gradienttype.linear; gspread = spreadmethod.pad; ginterpolation = interpolationmethod.linear_rgb; gcolours = [0x170a02, 0x170a02] galphas = [0, 1]; gratios = [0, 225] gmatrix. creategradientbox (w h (matematik. pi /180) * 90); gshape.graphics.clear(); \t\t\tgshape.graphics.beginGradientFill(gtype, gcolours, galphas, gratios, gmatrix, gspread, ginterpolation ); \t\t\t \t\t\tgshape.graphics.drawRect( 0, 0, w, h ); \t\t\tgshape.graphics.endFill(); \t\t\taddChild(gshape) \t\t} \t\t \t\tprivate function renderBG(event:Event):void { \t\t\tdir[0].x-= 1.5 \t\t\tdir[0].y-= 0 \t\t\tdir[1].x-= 0 \t\t\tdir[1].y -= 0 \t\t\tbd.perlinNoise(w, h, 2, 10, false, true, 7, true, dir); \t\t\tbd.colorTransform(rect, new ColorTransform(1, 0.7, 0.5)); \t\t\tbd.applyFilter(bd, rect, point, cmf) \t\t\tbdmultiply.perlinNoise(w, h, 3, 21, false, true, 7, true, dir) \t\t\tbdmultiply.colorTransform(rect, new ColorTransform(1, 0.6, 0.4)); \t\t} \t\t \t} },Step 39: Snow,The snow class is not mine, it was written by Troy gardner, jeg tilpassede det fra den tidsplan for en pakke, det er derfor jeg ikke kommentere den kode.skabe et "snow." og kopi koden ind., pakke (import flash.display.movieclip; import flash.events.event; import flash.utils.dictionary; offentlige klasse sne udvider movieclip {var snefnug: array = nye array(), var snowflakeprops: ordbog = nye ordbog (korrekt), var max_snowsize: antal =. 04; //pixel var snowflakescnt: antal = 150; var oheight: nummer var owidth: antal; offentlige funktion sne ($bredde, $højde): ugyldig (owidth = $bredde; oheight = $højde; //mængde (var - jeg: int = 0. jeg < snowflakescnt; jeg + +) (var - t: movieclip = nye snowflake(); //t.name = "snehvide" + i t.alpha = 20 + matematik. random() * 60; t.x = - (owidth /2) + matematik. random() * (1, 5 * owidth); \t\t\t\tt.y = -(oheight/2)+Math.random()*(1.5*oheight); \t\t\t\tt.scaleX = t.scaleY=.5+Math.random()*(max_snowsize*10); \t\t\t\tvar o:Object = new Object(); \t\t\t\to.k = 1+Math.random()*2; \t\t\t\to.wind = -1.5+Math.random()*(1.4*3); \t\t\t\tsnowflakeProps[t] = o; \t\t\t\taddChild(t); \t\t\t\tsnowflakes.push(t); \t\t\t} \t\t\taddEventListener(Event.ENTER_FRAME,snowFlakeMover) \t\t} \t\tprivate function shakeUp():void{ \t\t\tfor (var i:int=0; i<snowflakes.length; i++) { \t\t\t\tvar t:MovieClip = snowflakes[i] as MovieClip; \t\t\t\tt.x = -(owidth/2)+Math.random()*(1.5*owidth); \t\t\t\tt.y = -(oheight/2)+Math.random()*(1.5*oheight); \t\t\t} \t\t} \t\tprivate function snowFlakeMover(evt:Event):void { \t\t\tvar dO:MovieClip; \t\t\tvar o :Object; \t\t\tif(visible && parent.visible) (for (var - jeg: int = 0. jeg < snowflakes.length; jeg + +) (do = snefnug [i] som movieclip; o = snowflakeprops [kan];. y + = o.k;. x + = o.wind; hvis (. y > oheight + 10.) {. y = - 20} hvis (. x > owidth + 20) {. x = - (owidth /2) + matematik. random() * (1, 5 * owidth). y = - 20} andre, hvis (. x < - 20) {. x = - (owidth /2) + matematik. random() * (1, 5 * owidth). y = - 20}}}}}}, indgåelse, min musik færdigheder er ikke den bedste, musikken lyder måske lidt mærkeligt.ja, med denne lektion du burde nu være i stand til at skabe deres egne sange med flere sedler og forskellige farver:).jeg håber, du kan lide denne forelæsning, og du vil finde den kommenterede kode, og begge cs4 og cs3 udgaver på zip fil.tak for det!,
- glædelig jul, med en flash klaver julekort
Previous:ubooks fakturering luft app
Next Page:at skabe en fire