Avatar billede davidchristensen Praktikant
15. december 2001 - 15:26 Der er 21 kommentarer og
1 løsning

En knap der kan \"holde takten\" ?? : )

Hey :)

Forestil jer et lille movieklip på lad os sige 4 frames der indeholder en knap og et lille stykke musik (en rytme) der på en måde passer til..

Spørgsmålet er så: kan man lave et actionscript der på enellerandenmåde beder knappen om at vente med at gøre det den nu skal gøre (eks. goto etellerandet) indtil den er nået til en label i movieklippet der hedder \"takt\"..?

Hele min idé går ud på at moviklippet så at sige skal sørge for at den interaktivitet der lissom er i en flashfilm skal være synkron med en rytme..

Jeg forestiller mig en syntax der lyder noget i retning af:

OnClick GoTo (etellerandetframe eller scene) if (man er på label \"takt\", els wait for label \"takt\".

(Og undskyld min smånaive måde at gengive actionscript på her; jeg er endnu ik go\' nok endnu til at kunne gi\' et bedre bud selv.. :)

Er det til at forstå? Ellers så råb op. :)

David
-
Avatar billede lingoman Nybegynder
15. december 2001 - 15:35 #1
Du kan jo bare sætte et flag fra dit musik MC når den når til framelabel \"takt\"

I \"takt framen indsæt

_root.activate = true;

I din hovedfilm skal du så have en tjek ind i dine actioner som skal activeres

fks hvis en knap kun skal reagere hvis man er nået til \"takt\"

on (press) {
if (_root.activate ==true) {
//gør noget her
}
}


mvh geo
Avatar billede davidchristensen Praktikant
15. december 2001 - 15:46 #2
Okay, æhm, det tror jeg nok jeg forstå.. Men det er sådan, at hvis man trykker på knappen \"uden for rytmen\" så skal knappen vente til næste gang den når en takt..

on (press) {
if (_root.activate ==true) {
//gør noget her
ifNot, så vent til den når takten og //gør noget her..
}
}

..hvis det giver nogen mening..? :)

David
-
Avatar billede lingoman Nybegynder
15. december 2001 - 15:46 #3
looper dit musik MC så den gentagende kommer til framelabel \"takt\" ?
Avatar billede davidchristensen Praktikant
15. december 2001 - 15:47 #4
Forøvrigt, _root.activate hvad betyder det egentlig..? :)
Avatar billede davidchristensen Praktikant
15. december 2001 - 15:48 #5
Ja, det er meningen at det skal loope.. :)
Avatar billede lingoman Nybegynder
15. december 2001 - 15:48 #6
vi kan jo også få \"takt\" til at aktivere en action i din hovedfilm hver gang den passerer \"takt\". Det kommer helt an på hvad du gerne vil med det
Avatar billede lingoman Nybegynder
15. december 2001 - 15:51 #7
_root betyder din hovedfilm
.activate er bare et variabel navn som jeg har fundet på

når man så skriver

_root.activate = true;

så opretter man variablen \"activate\" på hovedtidslinien og sætter værdien til \"true\"
Avatar billede lingoman Nybegynder
15. december 2001 - 15:52 #8
hvad vil du gerne have der skal ske når man når til \"takt\"? Kan du give et eksempel ?
Avatar billede davidchristensen Praktikant
15. december 2001 - 15:55 #9
Min første tanke var at lave et MC med en knap som så at sige vil være synkron med musikkens BpM eller BpS (Beats per second).. Foreksempel hvis vi har en rytme der hedder 4 BpS, så ville det passe med at have et MC der er 3 frames langt såfrem filmens framerate er 12 frames/second.. Eet af disse frames skulle så have en label, der hedder \"takt\" - og med lidt fiksfakseri skulle denne label så være synkron med musikken.. Når man trykker på knappen, så vil den først udføre sin action når den når til \"takt\".

Men, du har måske ret i at det vil gøre det nemmere, hvis denne label sidder på musikken, for så vil det sikkert være nemmere at styrer..
Avatar billede davidchristensen Praktikant
15. december 2001 - 15:57 #10
Jo, når man når til \"takt\", så går man til scene 2 i hovedfilmen, for eksempel.. Det kunne os\' være super hvis den kunne activere et andet MC, foreksempel en dropdownmenu eller noget i den stil.. :)
Avatar billede lingoman Nybegynder
15. december 2001 - 16:10 #11
Hvis vi tager det med at hoppe til en anden scene først...

indsæt et frame label i scene 2, frame 1 fks. lad os meget opfindsomt kalde den \"scene_2\" 

i din \"takt\" frame bruger men så

_root.gotoAndPlay(\"scene_2\");

men så vil den også gøre det hver gang vi kommer til \"takt\" hvilket måske ikke er hvad du vil

Næste punkt.

Man kan også sende en besked til et andet movieClip om at den skal gøre noget bestemt

På denne MC som vi siger har fået et instance navn \"MC_1\", sætter vi en funktion.

onClipEvent(load) {
function doTheRythm () {
// beskriv de ting du vil have MC\'en skal gøre hver gang der kommer besked fra \"takt\"
}
}

Så kan vi kalde denne funktion hver gang vi kommer til \"takt\" ved at indsætte den som frame action i \"takt\"

_root[\"MC_1\"].doTheRythm ();

mvh geo
Avatar billede davidchristensen Praktikant
15. december 2001 - 16:18 #12
Okay, tak Geo :) det giver god menenig!

Og så er der lige det med, at hvis man trykker på knappen - og man endnu ikke er nået til \"takt\" - så skal den vente med at udføre sin action til man når til \"takt\" næste gang..?

Håber du forstår.. :)

David
-
Avatar billede nikolajdu Nybegynder
15. december 2001 - 16:54 #13
uha uha, man swinger helt med, når man ser en funktion kaldet doTheRythm()

;-)
Avatar billede lingoman Nybegynder
15. december 2001 - 17:04 #14
Det er en kombination af overstående eksempler der kanl bruges her

Nu lader vi din knap sætte et flag i stedet for \"takt\" framen

on (press) {
_root.activate=true;
}

Vi hæfter selve actionen som skal udføres på en MC så vi kan kalde den når som helst bare MC\'en er til stede.
Da vi i forvejen har MC_musik til stede bruger vi den.

onClipEvent(load) {

function doTheRythm () {
    // beskriv de ting du vil have MC\'en skal gøre hver gang der kommer besked fra \"takt\"
}
}


Til sidst mangler vi kun at kalde funktionen fra dit MC_musik\'s \"takt\" frame action

if (_root.activate==true) {
  doTheRythm ();        //  funktionen sidder på denne MC og ve behøver ikke at bruge _root foran her
  _root.activate=false;  //reset variabel
}

mvh geo
Avatar billede davidchristensen Praktikant
15. december 2001 - 17:36 #15
Jeg kigger på det imorgen - lige nu kan jeg ik få øje på hvordan den \"gemmer\" klikket til den når til \"takt\"\'en.. :)

Tak, du :D

David
-

Avatar billede lingoman Nybegynder
15. december 2001 - 17:45 #16
Tak for point :)
Den gemmer \"klikket\" ved at huske det i variablen ( _root.activate=true) for ellers er
(_root.activate==true) jo ikke sandt
mvh geo
Avatar billede davidchristensen Praktikant
15. december 2001 - 17:48 #17
Okay.. Og tak for hjælp :)

David
-
Avatar billede nikolajdu Nybegynder
15. december 2001 - 17:50 #18
drenge glem ikke!!!

Do tha´ rythm boyz :))
Avatar billede lingoman Nybegynder
15. december 2001 - 17:53 #19
Uuh hvor jeg savner det! :o)
Avatar billede nikolajdu Nybegynder
15. december 2001 - 17:55 #20
Savner the rythm??

Fik du i øvrigt min mail ang. Jumper??
Avatar billede lingoman Nybegynder
15. december 2001 - 17:58 #21
Yes, I miss it!
Yes, I fikk it!
Avatar billede nikolajdu Nybegynder
15. december 2001 - 18:07 #22
Jeg har stor erfaring i både badeværelses skrål og køkkendans - Det burde altså også være muligt selvom man er blevet skolelærer og har børn :))
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