Avatar billede robertdhn Nybegynder
14. maj 2003 - 13:45 Der er 6 kommentarer og
1 løsning

load movie

jeg har en side hvor jeg har min menu på hovedscenen, og så loader movies ind i levels...

det er ikke der mit problem ligger... men jeg vil gerne vide hvordan jeg skal gøre dette:

når jeg loader en movie ind, har jeg lavet animation (en slags intro) der bringer streger, txter ovs. ind til deres plads. Men når jeg så vil loade næste movie ind vil jeg gerne ha' en animation (en slags outro), der lige afspiller inden næste movie loades...

jeg forestiller mig noget med at movien har en stop når alt er kommet ind til pladserne. Også har knapen der loader næste movie ind en action i stil med...

play_også_loadmovie_når_outro_er_afspillet

nogle der kan forklare mig hvordan, hvis det er til at forstå hvad jeg mener???

robert
Avatar billede _k Nybegynder
14. maj 2003 - 14:35 #1
Du kan på din knap der læser næste movie ind, kalde en variabel i main timeline der holder styr på, hvad der skal loades når outroen er færdigspillet. I slutningen af outroen, kigger du så på denne variabel igen og ser, hvor du skal springe hen.
Variablen kunne f.eks. hedde "nextMovie", og indeholde navnet på den swf som skal loades ind.

Script på knap:
on (release) {
  _root.nextMovie = "film2.swf";
}

Script på sidste frame i outroen:
loadMovie(_root.nextMovie, 0);

Håber jeg har svaret rigtigt, for som du selv er inde på, er det lidt svært helt at forestille sig hvad du mener ;o)
Avatar billede robertdhn Nybegynder
15. maj 2003 - 08:48 #2
okay ... den forstår jeg ikke rigtigt...

jeg har lavet en test så jeg måske bedere kan forklare hvor jeg vil hen:

www.armedrob.dk/test/test.html

movie.swf er "bunden" med menuen på.

i første frame loader den "load1.swf" ind på level 1

stregen kører over skærmen og stopper

når jeg clicker på load 2 knappen, loader den "load2.swf" ind i samme level...

det er så her problemet er: Hvordan kan jeg få stregen til at animere tilbage og derefter loade "load2.swf" eller hvilken knap der bliver trykket på...

øhmm, er det mere tydeligt nu???
Avatar billede _k Nybegynder
15. maj 2003 - 11:19 #3
Ok, så uddyber jeg da lige :o)

I stedet for at kalde load2.swf direkte når man trykker på load 2 knappen, skal du kalde en animation, der får linjen til at køre baglæns (hvis du er hardcore, kan du også bruge _currentframe - 2, der får dit playhead til at køre baglæns). Mit forslag er altså, at du seperat animerer linjen til at køre baglæns, og ligger denne animation i et movieclip.
I sidste frame af dette mc, sætter du så koden loadMovie(_root.nextMovie, 0); der sørger for at kalde den rigtige load-swf.

Ovenstående kode, tjekker i din main timeline på 1. frame om der er en variabel som hedder nextMovie. Er der det, bliver den læst ind i level 0.

Tricket er, at du på dine enkelte knapper sætter variablen nextMovie i main timeline til det den nu skal være. "load 1" hedder således _root.nextMovie = load1.swf og "load 2" hedder _root.nextMovie = load2.swf
Derudover beder du din "baglæns"-animation om at afspille. Når denne animation når hen til slut, kigger den i main timeline og finder variablen nextMovie som indeholder navnet på den swf du gerne vil loade. Knappen ser altså således ud:

Script på knap:
on (release) {
  _root.nextMovie = "load2.swf";
  _root.mc-med-baglænsanimation.gotoAndPlay(1);
}

Håber det forklarer teknikken lidt bedre?
Avatar billede robertdhn Nybegynder
16. maj 2003 - 07:46 #4
skal mc'et så være på hoved swf'en? for så dur det jo ikke... stregen er bare en lille enkel animation i forhold til hvad man kan få rodet sig ud i...

eller skal det være på fx. "load2.swf" efter stop?
Avatar billede _k Nybegynder
16. maj 2003 - 12:59 #5
Ja, mc'et skal være i hoved swf'en. På den måde, behøver du kun at lave animationen en enkelt gang, frem for at have den liggende og flyde i samtlige swf'er du loader ind. Er ikke med på, hvorfor du mener, at det ikke dur?

..og ja, du skal naturligvis også gøre et eller andet ved dette mc's animation. Men eftersom du har sat en stop()-action i første frame (som du måske også har tømt for indhold, så der først sker noget når man trykker?), vil animationen opføre sig pænt, og lade være med at loope....
Avatar billede robertdhn Nybegynder
16. maj 2003 - 13:07 #6
jo men det jeg mener er at hvis nu de 5 forskellige .swf'er ikke er ens og med tekst og andet grafik, der skal animere væk... så er det jo et problem ikke?

Ja, det kunne du jo egentlig heller ikke vide jeg ville, for i testen er de jo ens...
Avatar billede _k Nybegynder
16. maj 2003 - 13:19 #7
Ja, så holder løsningen ikke helt.... Det kan dog stadigvæk lade sig gøre, men kræver, at du holder pæn orden i din struktur.

En anden løsning kunne være at anvende _currentframe og få den din animation til at spille baglæns. Den løsning er ret cool, men man skal holde tungen lige i munden - især når man, som du, vil hente nye swf'er ind. Syntaksen er:

onClipEvent(enterFrame) {
  _parent._currentframe -= 2;
}

Eksemplet er baseret på, at du har et mc i hele animationens længde, som hele tiden fortæller playheaded at det skal gå baglæns.
Du slipper dog ikke for en række if-conditions hvis du vil bruge denne løsning - derfor du skal holde tungen lige i munden ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester