Avatar billede rocky2000 Nybegynder
12. juni 2004 - 23:39 Der er 5 kommentarer og
1 løsning

If sætning problemer.

Jeg har forsøgt at lave nogle der slås i Flash indtil videre klarer jeg det godt men når en af dem har 0 i liv skal han jo dø jeg har forsøgt denne her kode

if (life1<='0'){
gotoAndStop('diespiller1',1)}
elseif (life<='0'){
gotoAndStop('diespiller2',1);}
else
gotoAndStop(2);
angrib._visible=true

Jeg er ikke så god til det her men kan i ikke forsøge at forklare mig det?
Avatar billede _k Nybegynder
12. juni 2004 - 23:57 #1
Hvis ovenstående kode bare står og flagrer på en frame i tidslinjen, bliver den kun læst én gang - når framen nås, umiddelbart før dit spil går igang og laaaaang tid før man har en chance for at blive slået ihjel.

Det fedeste er nok at du smider koden ned i en funktion. Funktionen kalder du så hver gang et liv skal tælles ned.
Den nemme måde at lave det på, er ved smide din kode ind i en onEnterFrame-funktion. Så checker den hele tiden om man er slået ihjel.

this.onEnterFrame = function() {
if (life1<= 0){
gotoAndStop("diespiller1",1)}
elseif (life<='0'){
gotoAndStop("diespiller2",1);}
}
Avatar billede pyroman Nybegynder
12. juni 2004 - 23:58 #2
Koden der er vist ikke helt god... prøv denne:

if (life1 <= 0){
  gotoAndStop('diespiller1',1)
} else if (life <= 0){
  gotoAndStop('diespiller2',1);
}else{
  gotoAndStop(2);
  angrib._visible = true;
}

...hvad præcist er det du vil have forklaret?
Avatar billede rocky2000 Nybegynder
13. juni 2004 - 00:14 #3
Sejt det virkede med den nederste. Men hvad er forskellen på min?
Avatar billede pyroman Nybegynder
13. juni 2004 - 00:38 #4
I kodesprog, som actionscript er der forskel på tekst og tal - når man regner med numre, fx liv, som skal kunne trækkes fra og lægges til, vil man normalt bruge tal. Tekst kaldes også strenge... (vi tager den helt grundlæggende her :) )
Du blander strenge og tal sammen her:

if (life1<='0'){ - her er 0 omgivet af '', hvilket betyder at det betragtes som en streng, altså tekst - man kunne også bruge ""

og her er der to fejl: elseif (life<='0'){

først og fremmest skal "elseif" staves i to ord: else if(...){
og så bruger du stadig '' omkring dit 0, hvorved if-tjekket med mindre-end-eller-lig-med <= ikke kan bruges...

og til sidst er der din "else", som mangler { } - dette kan dog godt undværes hvis der er kun er én linje og de står lige efter hinanden...
Avatar billede rocky2000 Nybegynder
15. februar 2005 - 08:21 #5
OK
Avatar billede pyroman Nybegynder
15. februar 2005 - 17:16 #6
Og normalt er det dem der svarer der skal have pointene!
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

IT-JOB

Netcompany A/S

Linux Operations Engineer

Politiets Efterretningstjeneste

IT-løsningsarkitekt i PET

Riskpoint A/S (Riskpoint Solutions Limited)

Senior Developer