Build en Dynamic Flash og XML Show med skriptede Transitions
Del
Del
Del
Del
Dette Cyber mandag Envato Tuts + kurs vil bli redusert til bare $ 3. Ikke gå glipp av.
Innhold oppdateringer i Flash kan være vanskelig og tidkrevende på grunn av de mange trinnene involvert. Bare lese innhold fra en XML-fil betyr at du importerer nye eiendeler og rekompileres swf er ikke lenger nødvendig. Denne opplæringen vil dekke dynamisk lasting av bilder fra en XML-fil og deretter håndtere uoverensstemmelser i bilde dimensjoner ved hjelp av GreenSock Tween Max animasjon bibliotek.
Endelig resultat Forhåndsvisning
La oss ta en titt på en skjermdump av den endelige lysbilde vi skal jobbe mot:
Bakgrunn
Interface bilder og eksempler er gitt ved hjelp av Flash CS4 og Actionscript 2, men andre versjoner av Flash så langt tilbake som versjon 8 skal kunne følge med uten problemer. Denne opplæringen forutsetter minst en fungerende kunnskap om Action siden jeg ikke kommer til å forklare hver linje, men selv om du bare kopiere og lime du bør være i stand til å få dette til å fungere
Trinn 1 -. Lag en Prosjektet Folder
Med et prosjekt av denne typen er det viktig å holde alt organisert slik at Flash kan finne ting som det er behov for dem. Så oppretter et prosjekt mappe på datamaskinen hvor du kan plassere alle filene knyttet til dette prosjektet
Trinn 2 -. Prep Eiendeler
Finn bilder for lysbildeserien. Jeg brukte flere bilder fra http://www.sxc.hu (sxc_hu_410471_5588.jpg, sxc_hu_1151936_79441078.jpg, sxc_hu_1152040_85122875.jpg, sxc_hu_1154131_54136948.jpg).
Lag en "eiendeler" mappen i prosjektmappen. Åpne opp din favoritt bilde editor og endre størrelse på bildene dine så de er alle en lignende størrelse. Jeg endret for bildene mine, slik at den lengste siden (høyde eller bredde) er 700px og tillot bilde redigering programvare for å opprettholde andelen bildet.
Siden eksterne midler ikke dra nytte av en Flash preloader dette ville være en utmerket tid til å optimalisere bildene dine for raske nedlastinger. Flash kan lastes PNG, JPEG eller GIF-filer så sørg for at den endelige bildene er i en av disse formatene, og lagre dem i eiendelene mappen du nettopp opprettet
Trinn 3 -. Opprett en ny Actionscript to Flash File
Trinn 4 - Sette opp scenen
Endre størrelsen på scenen for å være litt større enn de bildene du opprettet i trinn 2. Målet er å sørge for at det noen gang bilder vises ikke få kuttet av i den endelige presentasjonen. Jeg brukte 800px x 800px å gi 700px bilder 50 piksler plass på alle sider. Nå er også en fin tid for å endre bildefrekvens på 30 bilder per sekund for fine jevne overganger og plukke en bakgrunnsfarge du velger
Trinn 5 -. Sette opp Tidslinje
Gi nytt navn "lag 1" til "bakgrunn". Lag et nytt lag, og kaller det "innhold". Lag ett lag, og kaller det "script" og det er en god idé å låse dette laget. Noe du plasserer på bakgrunnslaget vil vise bak lysbildefremvisningen. Hvis du ser på eksempelet, er teksten i dette laget
Trinn 6 -. Lag et skall for Loaded Images
Bruk tegneobjektet til å lage en hvit firkant på scenen. Velg torget og konvertere den til et symbol (F8). Kontroller at registreringspunktet er i øvre venstre hjørne og kaller klippet "skall". Gi klippet en forekomst navnet "shell_mc"
Trinn 7 -. Tilsett Photo Bakgrunn
Inside "shell_mc" velg den hvite boksen og konvertere den til et symbol (F8). Igjen, sørg for at registreringen er i øvre venstre og navngi klippet "bakgrunn". Gi den nye MovieClip en forekomst navnet "background_mc". Endelig lagnavnet "bakgrunn" og låse den
Trinn 8 -. Lag Loading Text
Inside "shell_mc" opprette et nytt lag som heter "tekst". Bruk tekstverktøyet til å lage statisk tekst som sier "loading image". Flytte teksten til x: 20 og y: 20 slik at det ender opp under bildet
Trinn 9 - Legg et bilde Load Target
Lag en ny layer inni "shell_mc" heter ". bilder ". Opprett en tom MovieClip heter "pics" og deretter dra den fra biblioteket til den nyopprettede "bilder" lag. Flytt klippet til x: 10 og y:. 10 og gi den en forekomst navnet "pics_mc"
Trinn 10 - Lag en Shape å maskere bildet
Inside "shell_mc" skape en lag over "bilder og navnet" maske ". Lag en ny firkant, konvertere den til en MovieClip kalt "maske" og gi den en forekomst navnet "mask_mc". Flytt klippet til x: 10 og y: 10
Trinn 11 - Konverter form til en maske
Høyreklikk på "maske" lag og velg Mask.. Kontroller at "maske" og "image" lag Ikonene endres for å se ut som eksempelet
Trinn 12 -. Lag en bilderamme
Inside "shell_mc" skape et lag over "maske" og gi den navnet "ramme". I verktøypaletten, velg et slag farge og et annet fyllfarge, og deretter opprette en firkant på "ramme" lag. Velg fyllområdet og slette det slik at bare grensen. Dobbelklikk på grensen til å velge den og konvertere den til en MovieClip kalt "grensen". Gi MovieClip og instans navnet "border_mc" og plassere den ved x: 10 og y: 10
Trinn 13 - Legg til en Drop Shadow
Gå tilbake til roten tidslinjen og velg ". shell_mc ". Gå til egenskapspanelet og snurre ned Filters pilen. Klikk på det lille "side" ikonet og velg skygge. Dette vil legge litt dybde
Trinn 14 -. Lag XML File og Legg Structure
Vi er ferdige med Flash for øyeblikket og trenger for å lage en XML-fil for å holde orden på våre bilder . Åpne din favoritt teksteditor (stort sett alt som kan redigere HTML vil fungere) og opprette en ny fil. Lagre filen i prosjektmappen som content.xml. Nå må vi legge en struktur til filen slik Flash kan forstå hvordan de skal bruke informasjonen, kan vi gjøre det med følgende kode:?
≪ xml version = "1.0" encoding = "UTF-8" >?; < gallery > < /gallery >
Trinn 15 - Legg Bilde Paths to XML File
Nå må vi legge baner til alle bildene i lysbildefremvisningen (dette er hvordan Flash kommer til å " finner "bildene). Inne < gallery > tags legge til en ny tag som heter "image" og gi det en egenskap av "imgurl". Dette attributtet skal tilsvare et bilde banen i forhold til xml fil. Du må lage en ny "image" tag for hvert bilde du har tenkt å bruke i lysbilde
. ≪? Xml version = "1.0" encoding = "UTF-8" >? ≪ gallery > < image imgurl = "assets /sxc_hu_410471_5588.jpg" > < /bilde > < image imgurl = "assets /sxc_hu_1151936_79441078.jpg" > < /bilde > < image imgurl = "assets /sxc_hu_1152040_85122875.jpg" > < /bilde > < image imgurl = "assets /sxc_hu_1154131_54136948.jpg" > < /bilde > < /galleri >
Lagre filen og lukk din tekst editor
Trinn 16. - Last ned Tween Max
Vi kommer til å bruke en tweening bibliotek for å hjelpe oss å animere overganger mellom bilder, så åpne opp nettleseren din, gå til http://blog.greensock.com/tweenmaxas2/og klikk den "download AS2" -knappen øverst. Åpne zip-filen du lastet ned, og deretter kopiere "gs" mappen og dens innhold til prosjektmappen.
Det er på tide å gå tilbake til Flash-fil og begynne å skrive noen Actionscript. Velg første rammen Det første vi må gjøre er å inkluderer tween klassen vi lastet ned slik at den kompilerer når swf er opprettet. Legg til følgende kode i skriptet: (Ekstra linjer: 3-15).. Dette er å skape en ny XML objekt som er rettet mot vår "content.xml" fil. Siden XML-filer ikke laster kjapt, er det viktig å se etter en fullført belastning. Vi gjør dette med onLoad tilbakeringing som venter på xml filen som skal lastes og deretter utfører en handling Først må vi lage en matrise kalt "imageList". Når xml filen er lastet, kommer vi til å tilordne dataene til array, slik at det er lettere å få tilgang senere (Ekstra linjer: 7,10).. Lag et bilde loader objekt med MovieClipLoader klassen og bruk call backs å initiere kommandoer når filmen starter /ferdig lasting (Ekstra linjer: 17-27) Etter eksisterer loader objektet vi trenger en funksjon for å bestemme de riktige bildene. Vi må også legge til en variabel for å holde styr på det aktuelle bildet. Inne i "loadImage" funksjonen "loadURL" er satt til XML-attributtet for bildet banen. Definere en ny MovieClip (targetClip) for en container for å laste bildet inn og satt som beholder til å ha null opasitet med _alpha eiendommen. Det siste trinnet i funksjon er å laste bildet inn i beholderen (imageLoader .loadClip). Vi ønsker også å kjøre "loadImage" kommandoen så snart XML har lykkes ferdig lastet (Ekstra linjer: 11,18,31-38).. Bygg en timerfunksjon som vil kalle "loadImage" funksjons hver 5000 miliseconds (5 sekunder). Initiere timeren når når bildet har fullført (Ekstra linjer: 29,32-34).. Vi trenger å endre størrelsen på "background_mc", "border_mc" og "mask_mc" til være størrelsen på den belastede bildet. Den TweenMax /TweenLite biblioteket er ganske enkel å bruke. Syntaksen er TweenLite.to (målklippet, tid i sekunder, {egenskaper: verdi, enkel typen}); Vi ønsker også at bildet skal visne i etter at den er lastet, så sett _alpha til Tween til 100% inne i onLoadComplete (Ekstra linjer: 25-27,31).. Først finne midten av scenen ved å dele scenen høyden ved 2 og scenebredde av 2. Deretter siden registreringen punktet av skallet er i øvre venstre, flytt klippet til venstre for midten av scenen til det halve skallet bredde og opp ved halv skallets høyde (variabler clipXTarg og clipYtarg beregne tallene for hvert nytt bilde). Det er viktig å bruke Math.round () -funksjonen, slik at det endelige antallet ikke inneholder en desimal - dette tvinger den endelige posisjon til en full pixel (Ekstra linjer: 28-30) Vi må finne den tidligere lastet bilde, slik at den kan fjernes. Selvfølgelig hvis det aktuelle bildet er noen der i midten av listen da det forrige bildet er én mindre enn curentImage nummeret. Men hvis currentImage er lik null da det forrige bildet (forutsatt at lysbilde har gikk gjennom hvert bilde) ville være det siste bildet i rekken eller imageList.length - 1. Ta det forrige bildet nummeret og finne ut av MovieClip banen til forrige bilde skallet (Ekstra linjer: 32-37).. Det neste vi ønsker å fade ut det forrige bildet, og deretter når det kommer til null _alpha vi trenger å fjerne klippet fra scenen helt. Den onComplete: removePrevious venter til fade er ferdig og kaller en av "removePrevious". Som en sikkerhetsforans det alltid en god idé å sørge for at klippet vi prøver å fjerne faktisk eksisterer. Bruk derfor en "hvis" statement å sjekke at klippet ikke er udefinert plakater (Flash ord for ikke eksisterer (Ekstra linjer. 38,50 -54) Nå må vi øke den currentImage slik at når timeren er ferdig, Flash kjenner hvilket bilde å laste neste. Akkurat som previousImage, hvis det aktuelle bildet er et tall unntatt det siste bildet i listen vi bare legge den ene til den currentImage nummeret. . Men hvis det aktuelle bildet er det siste elementet i listen og deretter på "neste" bilde ville starte en liste over med det første bildet i listen (posisjon null i rekken) (Ekstra linjer: 55 -59) De fleste Actionscript funksjoner skje nesten umiddelbart, men innlasting av bilder krever litt tid. Denne mengden avhenger av størrelsen av nettverkstilkoblingen hastighet og bilde, og kan derfor være flere sekunder. Vi må fjerne timeren til bildet er ferdig lastet, slik at fremvisningen er en konsekvent lang tid etter at bildet er lastet inn. En enkel linje med kode (clearInterval) fjerner fem sekunders intervall inntil den tilbakestilles av setInterval går igjen (Ekstra linje: 66).. Til slutt må vi stoppe tidslinjen. Flash standard funksjon er å spille tidslinjen kontinuerlig med mindre sagt noe annet. I det tilfelle hvor det bare er en ramme på tidslinjen Flash fortsetter å forsøke å kjøre den samme koden om og om igjen, noe som resulterer i det samme bildet prøver å gjentatte ganger belastning (Tilleggs linje: 72). Test filmen (Command + Enter for Mac, Ctrl + Enter for Windows). Du skal se en fungerende lysbildeserie som endrer og sentre basert på størrelsen på bildene. Jeg håper du likte å følge denne tut! Anmeldelser
av "script" lag og åpne Handlinger Panel (Vindu > Actions). Følgende trinn alt krever at du redigere innholdet i Handlinger vinduet, så fra nå av jeg bare kommer til å referere til dette som "script". Som vi gå gjennom trinnene nedenfor vil du se hele manuset skapt til det punktet med de nyeste tilskuddene uthevet
Trinn 17 -. Inkluder Tween Max
import gs. *; import gs.easing *;
Trinn 18 - Fortell Flash legge i XML File
import gs *; import gs.easing. *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; photos_xml.onLoad = function (suksess) {if (suksess) {//---- ------- belastning vellykket} else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} photos_xml.load (XMLPATH);
Trinn 19 -. Konverter XML-data til en Array
Import gs *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} photos_xml.load (XMLPATH);.
Trinn 20 - Bygg MovieClip Loader Work
import gs. *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number): void {} loadListener.onLoadComplete = function (target_mc: MovieClip): void {} photos_xml.load (XMLPATH);
Trinn 21 - Lag en Load Funksjon
Import gs *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {} loadListener.onLoadComplete = function (target_mc: MovieClip): void {} funksjon loadImage () {var loadURL = imageList [currentImage] .attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; //Laste det nye bildet imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH);
Trinn 22 - Legg en Timer Bruke setInterval Function
lasting, ved å plassere samtalen i onLoadComplete tilbakeringing
Import gs *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {} loadListener.onLoadComplete = function (target_mc: MovieClip): Void {setTimer ();} funksjon setTimer () {timer = setInterval (loadImage, 5000);} funksjon loadImage () {var loadURL = imageList [currentImage]. attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH);
Trinn 23 - Resize Image Frame
Import gs *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {TweenLite.to (shell_mc.background_mc, 0,25, {_width: target_mc._width + 20, _height: target_mc._height + 20, letthet: Quad.easeOut}); TweenLite.to (shell_mc.border_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); TweenLite.to (shell_mc.mask_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, letthet: Quad.easeOut});} loadListener.onLoadComplete = function (target_mc: MovieClip): Void {TweenLite.to (target_mc , 0,25, {autoAlpha: 100, delay: 0,25}); setTimer ();} funksjon setTimer () {timer = setInterval (loadImage, 5000);} funksjon removePrevious () {if {removeMovieClip (prevImg) (prevImg = udefinert!); } //Øke det aktuelle bildet if (currentImage < imageList.length -1) {currentImage = currentImage + 1; } else {currentImage = 0; }} funksjon loadImage () {var loadURL = imageList [currentImage] .attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH);
Trinn 24 - Senter bilde
. import gs. *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {TweenLite.to (shell_mc.background_mc, 0,25, {_width: target_mc._width + 20, _height: target_mc._height + 20, letthet: Quad.easeOut}); TweenLite.to (shell_mc.border_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); TweenLite.to (shell_mc.mask_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); Var clipXTarg = Math.round ((Stage.width /2) - ((target_mc._width + 20) /2)); Var clipYTarg = Math.round ((Stage.height /2) - ((target_mc._height + 20) /2)); TweenLite.to (shell_mc, 0,25, {_x: clipXTarg, _y: clipYTarg, letthet: Quad.easeOut});} loadListener.onLoadComplete = function (target_mc: MovieClip): Void {TweenLite.to (target_mc, 0,25, {autoAlpha: 100, delay: 0,25}); setTimer ();} funksjon setTimer () {timer = setInterval (loadImage, 5000);} funksjon loadImage () {var loadURL = imageList [currentImage] .attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH);
Trinn 25 - Identifiser Forrige bilde
import gs *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {TweenLite.to (shell_mc.background_mc, 0,25, {_width: target_mc._width + 20, _height: target_mc._height + 20, letthet: Quad.easeOut}); TweenLite.to (shell_mc.border_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); TweenLite.to (shell_mc.mask_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); Var clipXTarg = Math.round ((Stage.width /2) - ((target_mc._width + 20) /2)); Var clipYTarg = Math.round ((Stage.height /2) - ((target_mc._height + 20) /2)); TweenLite.to (shell_mc, 0,25, {_x: clipXTarg, _y: clipYTarg, lette: Quad.easeOut}); if (currentImage == 0) {var prevImgNum = imageList.length -1; } else {var prevImgNum = currentImage - 1; } Var prevImg = shell_mc.pics_mc ["pic" + prevImgNum];} loadListener.onLoadComplete = function (target_mc: MovieClip): Void {TweenLite.to (target_mc, 0,25, {autoAlpha: 100, delay: 0,25}); setTimer ();} funksjon setTimer () {timer = setInterval (loadImage, 5000);} funksjon loadImage () {var loadURL = imageList [currentImage] .attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH);
Trinn 26 - Fade Out og Fjern
)
import gs. *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {TweenLite.to (shell_mc.background_mc, 0,25, {_width: target_mc._width + 20, _height: target_mc._height + 20, letthet: Quad.easeOut}); TweenLite.to (shell_mc.border_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); TweenLite.to (shell_mc.mask_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); Var clipXTarg = Math.round ((Stage.width /2) - ((target_mc._width + 20) /2)); Var clipYTarg = Math.round ((Stage.height /2) - ((target_mc._height + 20) /2)); TweenLite.to (shell_mc, 0,25, {_x: clipXTarg, _y: clipYTarg, lette: Quad.easeOut}); if (currentImage == 0) {var prevImgNum = imageList.length -1; } else {var prevImgNum = currentImage - 1; } Var prevImg = shell_mc.pics_mc ["pic" + prevImgNum]; TweenLite.to (prevImg, 0,25, {autoAlpha: 0, onComplete: removePrevious});} loadListener.onLoadComplete = function (target_mc: MovieClip): Void {TweenLite.to (target_mc, 0,25, {autoAlpha: 100, delay: 0.25} ); setTimer ();} funksjon setTimer () {timer = setInterval (loadImage, 5000);} funksjon removePrevious () {if {removeMovieClip (prevImg) (prevImg = udefinert!); }} funksjon loadImage () {var loadURL = imageList [currentImage] .attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH);
Trinn 27 - Neste bilde i sekvensen
import gs. *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {TweenLite.to (shell_mc.background_mc, 0,25, {_width: target_mc._width + 20, _height: target_mc._height + 20, letthet: Quad.easeOut}); TweenLite.to (shell_mc.border_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); TweenLite.to (shell_mc.mask_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); Var clipXTarg = Math.round ((Stage.width /2) - ((target_mc._width + 20) /2)); Var clipYTarg = Math.round ((Stage.height /2) - ((target_mc._height + 20) /2)); TweenLite.to (shell_mc, 0,25, {_x: clipXTarg, _y: clipYTarg, lette: Quad.easeOut}); if (currentImage == 0) {var prevImgNum = imageList.length -1; } else {var prevImgNum = currentImage - 1; } Var prevImg = shell_mc.pics_mc ["pic" + prevImgNum]; TweenLite.to (prevImg, 0,25, {autoAlpha: 0, onComplete: removePrevious});} loadListener.onLoadComplete = function (target_mc: MovieClip): Void {TweenLite.to (target_mc, 0,25, {autoAlpha: 100, delay: 0.25} ); setTimer ();} funksjon setTimer () {timer = setInterval (loadImage, 5000);} funksjon removePrevious () {if {removeMovieClip (prevImg) (prevImg = udefinert!); } If (currentImage < imageList.length -1) {currentImage = currentImage + 1; } else {currentImage = 0; }} funksjon loadImage () {var loadURL = imageList [currentImage] .attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH);
Trinn 28 - Ta av tidsur
Import gs *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {TweenLite.to (shell_mc.background_mc, 0,25, {_width: target_mc._width + 20, _height: target_mc._height + 20, letthet: Quad.easeOut}); TweenLite.to (shell_mc.border_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); TweenLite.to (shell_mc.mask_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); Var clipXTarg = Math.round ((Stage.width /2) - ((target_mc._width + 20) /2)); Var clipYTarg = Math.round ((Stage.height /2) - ((target_mc._height + 20) /2)); TweenLite.to (shell_mc, 0,25, {_x: clipXTarg, _y: clipYTarg, lette: Quad.easeOut}); if (currentImage == 0) {var prevImgNum = imageList.length -1; } else {var prevImgNum = currentImage - 1; } Var prevImg = shell_mc.pics_mc ["pic" + prevImgNum]; TweenLite.to (prevImg, 0,25, {autoAlpha: 0, onComplete: removePrevious});} loadListener.onLoadComplete = function (target_mc: MovieClip): Void {TweenLite.to (target_mc, 0,25, {autoAlpha: 100, delay: 0.25} ); setTimer ();} funksjon setTimer () {timer = setInterval (loadImage, 5000);} funksjon removePrevious () {if {removeMovieClip (prevImg) (prevImg = udefinert!); } If (currentImage < imageList.length -1) {currentImage = currentImage + 1; } else {currentImage = 0; }} funksjon loadImage () {var loadURL = imageList [currentImage] .attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; clearInterval (timer); imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH);
Trinn 29 - Stopp Tidslinjen
import gs. *; . import gs.easing *; Var XMLPATH = "content.xml"; Var photos_xml = new XML (); photos_xml.ignoreWhite = true; Var imageList: Array = new Array (); photos_xml.onLoad = function (suksess) {if (suksess) {//----------- belastning vellykket imageList = photos_xml.firstChild.childNodes; loadImage (); } Else {//----------- problem lasting, sjekk bane trace ("Feil ved lasting photos_xml"); }} Var currentImage: Antall = 0; Var imageLoader: MovieClipLoader = new MovieClipLoader (); Var loadListener: Object = new Object (); imageLoader.addListener (loadListener); loadListener.onLoadInit = function (target_mc: MovieClip, httpStatus: Number) : Void {TweenLite.to (shell_mc.background_mc, 0,25, {_width: target_mc._width + 20, _height: target_mc._height + 20, letthet: Quad.easeOut}); TweenLite.to (shell_mc.border_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); TweenLite.to (shell_mc.mask_mc, 0,25, {_width: target_mc._width, _height: target_mc._height, lette: Quad.easeOut}); Var clipXTarg = Math.round ((Stage.width /2) - ((target_mc._width + 20) /2)); Var clipYTarg = Math.round ((Stage.height /2) - ((target_mc._height + 20) /2)); TweenLite.to (shell_mc, 0,25, {_x: clipXTarg, _y: clipYTarg, lette: Quad.easeOut}); if (currentImage == 0) {var prevImgNum = imageList.length -1; } else {var prevImgNum = currentImage - 1; } Var prevImg = shell_mc.pics_mc ["pic" + prevImgNum]; TweenLite.to (prevImg, 0,25, {autoAlpha: 0, onComplete: removePrevious});} loadListener.onLoadComplete = function (target_mc: MovieClip): Void {TweenLite.to (target_mc, 0,25, {autoAlpha: 100, delay: 0.25} ); setTimer ();} funksjon setTimer () {timer = setInterval (loadImage, 5000);} funksjon removePrevious () {if {removeMovieClip (prevImg) (prevImg = udefinert!); } If (currentImage < imageList.length -1) {currentImage = currentImage + 1; } else {currentImage = 0; }} funksjon loadImage () {var loadURL = imageList [currentImage] .attributes.imgurl; Var targetClip = shell_mc.pics_mc.createEmptyMovieClip ("pic" + currentImage, shell_mc.pics_mc.getNextHighestDepth ()); targetClip._alpha = 0; clearInterval (timer); imageLoader.loadClip (loadURL, targetClip);} photos_xml.load (XMLPATH), stop ();
Konklusjon