Grunder och Filmklippsobjekt med animering Vi vill kunna visa olika typer av mediaobjekt i en och samma Flashfilm. Vi börjar med att titta på hur man kan visa och köra en animering samt stoppa och dölja densamma. Skapa ett lager med två knappar, en för att starta en befintlig animering och en för att stoppa den. (Bilden visa fler knappar.) (Skapa en knappkopia. Högerklicka på den i biblioteket och Duplicera den, så har du det mesta klart förutom lite småjusteringar.) Sen vill vi skapa ett filmklipp, dvs en symbol som sparas som filmklipp. Ett filmklipp får en egen tidslinje som är skild från huvudtidslinjen. Vi kan alltså skapa något som lever sitt eget liv. Ett förslag är att rita en lite cirkel med vit kantlinje och vit fyllning på den vita bakgrunden upp i högra kanten.markera, F8 (Konvertera till symbol ), Filmklipp. Ange ett namn på filmklippet. OCH skapa ett förekomstnamn på det här objektet. Skillnaden mellan filmklippsnamnet och detta namn är att filmklippet kan du ju använda fler gånger genom att dra in flera instanser av det till Flashfilmen. Då måste dessa instanser få egna förekomstnamn. Detta för att vi ska /PB Sida 1 av 5
kunna ropa på rätt instans av just det filmklippet. Alla objekt vi vill styra med ActionScript måste ha ett förekomstnamn. Dubbelklicka för att gå in och skapa filmklippet. T ex en figurinterpolering, MEN gör första bildrutan tom. Högerklicka i Bildruta 1 och välj Åtgärder. Välj Expertläge när du skriver ActionScriptkod. Skriv in eller klicka fram koden (hoppa över kommentarerna, det efter //): stop( ); //om vi inte stoppar här kommer animeringen köras direkt när Flashfilmen startar På motsvarande sätt i sista Bildrutan : gotoandplay(2); //loopa genom att hoppa tillbaks till start i denna animering Gå tillbaks till Scen1. Klicka på den knapp som ska starta animeringen, skriv in följande ActionScriptkod : animeringfilmklipp.gotoandplay(2); och på motsvarande stoppknapp: animeringfilmklipp.gotoandstop(1); Vi ropar alltså på bildrutsnummer i tidslinjen som tillhör filmklippsinstansen animeringsfilmklipp. /PB Sida 2 av 5
Filmklippsobjekt med video Gör på motsvarande sätt som ovan, men börja med att importera din videofilm (mpg eller avi format) genom att i Flash välja Arkiv/Importera till bibliotek, och välj videon. Den hamnar då automatiskt i det aktuella biblioteket (F11). Rita en liten helvit symbol på Scen1 och spar som filmklippssymbol. Ge den även ett förekomstnamn. Gå in i filmklippet och så ska vi skapa visning av en videofilm. Bildruta 1: Skapa en tom nyckelbildsruta. Skriv in följande ActionScriptkod: stop(); Samma orsak som tidigare. Så att inte videon startar när Flashfilmen startar. Bidruta 2: Infoga nyckelbildsruta. (Se till att rutan är markerad) Dra in videon från biblioteket och släpp den någonstans på scenytan så placeras den automatiskt i ruta 2 och svara sen ja, så fixar Flash så många bildrutor som behövs. Skriv in ActionScriptkoden (högerklicka i bildruta 1 och välj Åtgärder). stop( ); Gå tillbaks till Scen1 och skriv in följande ActionScriptkod : videofilmklipp.gotoandplay(2); videofilmklipp.gotoandstop(1); /PB Sida 3 av 5
Styra ljudobjekt Ljud som extern fil Skapa ett nytt lager med två knappar, en för att starta ljudet och en för att stoppa det. (Bilden visa fler knappar.) (Skapa en knappkopia. Högerklicka på den i biblioteket och Duplicera den, så har du det mesta klart förutom lite småjusteringar.) Denna variant är den klart enklaste men kräver att du lägger filen i samma mapp som swffilen (eller anger en fullständig webbadress till filen på servern). I bildruta 1 på lagret Ljud1 så skriver vi in följande ActionScriptkod: (Högerklicka i Bildruta 1 och välj Åtgärder. Välj Expertläge när du skriver ActionScriptkod.) Kör lokalt sound1 = new sound(); sound1.loadsound("enya.mp3"); Kör från servern sound1 = new sound(); sound1.loadsound("http://www.bestonline.info/%7edata/webbdesign/flash/flash%20vt2004/ lektstyraobjekt/enya.mp3",true); sound1.stop(); I det senare fallet sätter filen igång vid start när du testkör i Flash (konstigt nog, trots stop(); ). Med true sist menas att den är strömmande, dvs startar spelningen innan hela filen är laddad. Denna variant medger att du kan ladda in många filer och styra var och en för sig eftersom vi namger varje fil. Klicka på den knapp som ska starta ljudet, skriv in följande ActionScriptkod : sound1.start(0,1); parentesen kan lämnas tom eller med argument som betyder sekundfördröjning och slingor På motsvarande stoppknapp: sound1.stop(); /PB Sida 4 av 5
Filmklippsobjekt med en annan Flashfilm (swf-fil) Vi ska inte importera något denna gång utan för enkelhetens skull kopiera in en swf-fil till samma mapp som din aktuella fil ligger i. Rita en lagom stor vit (som bakgrunden) ruta, där Flashfilmen ska visas, på Scen1 och spar som filmklippssymbol. (Lägg längst bak i lagret, Ändra/Justera/Längst bak.) Ge den även ett förekomstnamn (här i exemplet swffilmklipp). Det är nog snyggast att lägga lagret längst bak så inte de delar från filmen som halkar utanför sin ordinarie scen visas. Vi går inte in i filmklippet och gör något, utan vi ska styra det hela med knapparna. På startknappen skriver vi in ActionScriptkoden: swffilmklipp.loadmovie("demo3.swf"); dvs vi laddar in en Flashfilm(swf-fil) som här ligger i samma mapp som den vi skapar just nu. Samt så skriver vi in på stoppknappen : swffilmklipp.unloadmovie(); För att bli av med den från vår Flashfilm så använder vi unloadmovie();. Med kommandot stop( ); så stannar bara filmen och syns fortfarande i det frysta läget. Vid import av en Flashfilm så görs den om till en ruta-till-ruta-animering. Testkör! Håll till godo och använd nu dina kunskaper till något nyttigt och fantasifullt! Haenbradag! /PB Sida 5 av 5