Avatar billede apj Nybegynder
27. januar 2002 - 19:48 Der er 25 kommentarer og
2 løsninger

overfør værdi af variabel til næste scene

Hvordan kan jeg overføre værdien af en variabel til den næste scene?

I den første scene har jeg disse actions:

stop ();
stopAllSounds ();
AntalSpg = 1;
TxTSpg1 = "What is the next?/Hvad er den næste?";
MySpg1 = "3";
setProperty ("_root.again", _visible, False);
i = 2;
Spg = Eval("MySpg1" );
Spoergsmaal = Eval("TxtSpg1" );
PointsTrue = 0;
PointsFalse = 0;
Active =  "1:"+ AntalSpg;

Jeg har nøjagtigt samme actions i 2. scene. Hvordan kan jeg overføre værdien af variablen "PointsTrue" til scene 2?
Avatar billede barklund Nybegynder
27. januar 2002 - 19:50 #1
Hvis du i scene 2 tracer værdien af PointsTrue med

trace(PointsTrue);

vil du opdage, at den allerede findes. Scener er bare en praktisk måde at opdele sin hovedtidslinie... Det påvirker ikke variablerne, der findes i _root...

/Barklund
Avatar billede barklund Nybegynder
27. januar 2002 - 19:57 #2
2 minutter og 21 sekunders svartid - det er vist under standarden for denne kategori... :o)
Avatar billede apj Nybegynder
27. januar 2002 - 20:28 #3
Ja, det tænkte jeg nok, men hvordan sætter jeg variablen ind i actionscriptet i scene 2 så den tæller videre...?

Jeg burde nok vide det, udfra dit svar, men er ikke så rå til as, som jeg gerne ville være.
Avatar billede apj Nybegynder
28. januar 2002 - 20:28 #4
Nå, det troede jeg da at der var en eller anden flash haj her på eksperten der vidste.

Please, jeg skal lave en lille flashfilm, hvor jeg skal bruge det.
Avatar billede apj Nybegynder
28. januar 2002 - 20:33 #5
Jeg sætter point op til 75 og håber at der er en af jer der ved noget om det her.

Plaezzzzze :-)
Avatar billede apj Nybegynder
29. januar 2002 - 16:18 #6
OK, så sætter vi den til 200.

Hvordan får jeg variablen ud i en text-fil, så jeg kan hive den ind i næste scene og arbejde videre med den?
Avatar billede barklund Nybegynder
29. januar 2002 - 16:19 #7
Hov... jeg så ikke, at der var sket mere... Sæt bare point tilbage til 15, hvilket er rigeligt for dette spørgsmål...

Hvis du vil regne på en værdi og lægge 1 til uden at kende den, så brug blot:

PointsTrue++;

Eller mere generelt, hvis du vil lægge x til den:

PointsTrue += x;

hvilket betyder:

PointsTrue = PointsTrue + x;

Er det dette, som du leder efter?

/Barklund

Som sagt højst 15 point...
Avatar billede barklund Nybegynder
29. januar 2002 - 16:25 #8
Der er da ingen grund til at hive noget som helst ud i nogen tekstfil... Den findes inden i flash - bare arbejd på den...
Avatar billede apj Nybegynder
29. januar 2002 - 17:34 #9
Ja, men den skal hentes i næste scene - så skal jeg vel også have "adressen"?
Avatar billede barklund Nybegynder
29. januar 2002 - 17:37 #10
nej... den er jo samme sted... Du kan jo læse den med trace, så kan du vel også læse den med var++;

Variabler findes i deres respektive scope - "tidslinie" - og variabler defineret ude i hovedtidslinien findes overalt i hovedtidslinien... Scener har ingen påvirkning på hovedtidslinien - der er bare en praktisk måde at dele sin film op på. De bliver alle sammen klasket sammen til en lang film når du publisher alligevel... Så definerer du en variabel i scene 1 i hovedtidslinien, så findes den også i hovedtidslinien i alle andre scenero Og derfor kan du altid adressere denne variabel med _root.variabel_navn - også inde fra movieClips.

Variablen skal ikke "hentes" i næste scene - den er der allerede, da scenerne står i forlængelse af hinanden...

/Barklund
Avatar billede apj Nybegynder
29. januar 2002 - 19:39 #11
OK, fint - jeg kan se at du har ret, men hvad kan jeg sætte PointsTrue += x; - til i første scene?

Hvis jeg sætter x=32 fordi et rigtigt svar her er 32 point værd, ja så starter man med 32 points.

Iøvrigt tak for din hjælp hidtil. :-)

AS i første scene ser nu sådan her ud:
_____________

stop ();
// Angiv hvor mange spørgsmål der er ialt
AntalSpg = 1;
// Dette er spørgsmålene
TxTSpg1 = "What is the next figure /Hvad er den næste figur?";
// Her er svarene
MySpg1 = "2";
// Her sættes variable
setProperty ("_root.again", _visible, False);
i = 2;
Spg = Eval("MySpg1" );
Spoergsmaal = Eval("TxtSpg1" );
PointsTrue += 32;
PointsFalse = 0;
Active =  "1:"+ AntalSpg;
Avatar billede barklund Nybegynder
30. januar 2002 - 10:25 #12
Men hvis du så i anden scene skriver (efter man har klikket på det rigtige svar)

PointsTrue += 32;

eller hvis det er forkert:

PointsTrue -= 32;

Ændrer variablen sig så ikke?

Brug fx. Ctrl+Alt+V for at se alle variable...

/Barklund
Avatar billede apj Nybegynder
30. januar 2002 - 21:20 #13
Hmmmmm..... nu starter den på 32 point og når man går videre til scene 2 stiger points til 64 uanset om man har svaret rigtigt eller forkert.

Jeg sender dig lige swf'en - vil du se på den?
Avatar billede barklund Nybegynder
31. januar 2002 - 10:36 #14
Argh... Det her er så simpelt, så lad os i stedet udvide din horisont... Hvad er koden for at trykke på svarene? Bare paste den ind her...

/barklund
Avatar billede apj Nybegynder
31. januar 2002 - 18:45 #15
Her er koden fra knappen der hedder svar, efter at man har fyldt svaret ind. I øjeblikket har jeg to knapper. En der hedder svar (som er denne) og en som hedder "næste spg", som blot indeholder en "on release - goto nextscene". Den knap regner jeg med skal slettes og koden sættes ind i svarknappens actions.

(Det ville være fedt, hvis det kunne laves uden at jeg skulle bruge en masse scener som nu - men ok - det er ikke så vigtigt, bare det virker.)
on (release, keyPress "<Enter>") {
    if (i<Number(AntalSpg+2)) {
        if (spg ==  svar.toLowerCase()) {
            PointsTrue = PointsTrue + Number(1);
        }
        Spg = Eval("MySpg" add Number(i));
        Spoergsmaal = Eval("TxtSpg" add Number(i));
        i = i+Number(1);
        PointsFalse = i-Number(PointsTrue) -2;
        svar = "";
        if (pointsFalse+PointsTrue !=AntalSpg) {
            Active = PointsTrue+PointsFalse+1add ":"+ AntalSpg;
        }
        if (pointsFalse+PointsTrue ==AntalSpg) {
            setProperty ("_root.again", _visible, True);
        }
    }
}
Avatar billede barklund Nybegynder
31. januar 2002 - 18:58 #16
Det kunne nemt laves som en enkelt frame i en enkelt scene, men det kræves lidt programmeringsmæssigt overblik... For ovenstående kode kan jeg ikke finde rundt i... Hvis du lover kun at give mig 60 point, kan jeg godt lave en app, der stiller spørgsmål, tæller svar og beregner resultat til sidst... Er dine spørgsmål multiple-choice eller er det med inputfelter?
Avatar billede apj Nybegynder
31. januar 2002 - 19:19 #17
Fint.

Der skal være 15 spørgsmål.

Til hvert spørgsmål er der 3 billeder (f.eks. en kat, en hund, en hest)
Svarmulighederne til spørgsmål 1 er 4 forskellige (f.eks. en cykel, en bil, en mus og en ostemad).

Man skal så kunne svare at det rigtige svar er nummer 3 (mus, fordi det er et dyr).

Derefter går man videre til spørgsmål 2. Points skulle gerne sættes til at tælle op for hvert rigtigt svar, således at man tilsidst når frem til et slutresultat.

_________________________

Glæder mig til at høre fra dig ;-)

Her er points! Du får så kun 60, men hvis du laver det, så syntes jeg du fortjener flere. Hvis du bruger mere tid end beregnet, må du endelig sige til.
Avatar billede apj Nybegynder
31. januar 2002 - 19:22 #18
Ov! Der er lige en ting du gerne må være opmærksom på. Det er at spørgsmålene og svarmulighederne skal kunne være billeder og ikke kun tal eller bogstaver.
Avatar billede barklund Nybegynder
31. januar 2002 - 19:22 #19
Hovhov... Nu har jeg jo fået pointene, så nu må du sejle din egen så... HAHAHAaaaa....

Ok, spøg til side... Kan du ikke sende billederne til mig - så er det lidt nemmere... Og måske også de standardtekster, som der skal være...

Send på morten@barklund.dk
Avatar billede apj Nybegynder
31. januar 2002 - 19:26 #20
Det gør jeg fluks!
Avatar billede apj Nybegynder
31. januar 2002 - 19:48 #21
Er sendt...
Avatar billede apj Nybegynder
31. januar 2002 - 19:49 #22
Teksten kan jeg godt.....(tror jeg da) finde ud af at sætte ind. Det skal du ikke bekymre dig om.
Avatar billede barklund Nybegynder
31. januar 2002 - 20:20 #23
Smid lige din emil, for jeg fik slettet din emil, inden jeg nåede at se emil-adressen... :o)
Avatar billede apj Nybegynder
31. januar 2002 - 22:24 #24
Yep! Her er min emil: apj@metropolis.dk
Avatar billede apj Nybegynder
05. februar 2002 - 00:04 #25
Nu laver du det sådan at man kan give nogle spørgsmål flere points end andre (f.eks. hvis de er sværere), ikk? ;-)
Avatar billede apj Nybegynder
09. februar 2002 - 16:56 #26
Hvordan går det, barklund?
Avatar billede apj Nybegynder
19. februar 2002 - 19:47 #27
Jeg venter dirrende spændt :-)
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