Avatar billede treypocca Nybegynder
11. januar 2003 - 01:52 Der er 1 kommentar og
1 løsning

Skal bruge en værdi fra en kørende løkke

Jeg er ved at lave et bueskydspil.
Når det bliver computerens tur til at skyde, kører computerens pil frem og tilbage på X - Aksen.

Mit problem er, at min X værdi altid bliver det sidste tal i løkken. dvs. løkken køre færdig og jeg får en X-værdi, men jeg har brug for at den stopper forskellige steder i løkken hver gang.

Somebody help?

Her er min forløbige kode.

on Computer
 
  X2 = 599
 
  sprite(B+1).visible = True
 
  if spil_status = 3 then
   
   
    repeat with E = random(7) down to 1
     
      repeat while X2 <= 625
       
        X2 = X2 + 1
       
        put X2 
        Sprite(B+1).locH = X2
        updatestage 
      end repeat
   
      repeat while X2 >= 575
       
        X2 = X2 - 1
       
        Put X2
        Sprite(B+1).locH = X2
        updatestage 
      end repeat
      put E&&"E"
       
    end repeat
  end if
 
  ComputerPressedtime()
  ComputerArrow()
  Player2CheckScore()
 
end Computer
Avatar billede arnvig Nybegynder
11. januar 2003 - 02:08 #1
Du kunne lave en random værdi inden i løkken som du omregner til en procent

f.eks 
A = random() * 100
if A <= 20 then <do what i takes to leave the loop>

så er der 20% chance for at den forlader løkken
Avatar billede sparkl Nybegynder
12. januar 2003 - 12:47 #2
Hej,

er ikke helt sikker på at jeg forstår hvad du ønsker at opnå?

Normalt ligger man et script som skal flytte et object på stagen hen over flere frames da den grafiske representation af objekterne kun opdateres ved frameskifte. Derfor er det overflødigt at sætte spritens locH flere gange i samme frame. Lav evt. i stedet for løkken, et script der sætter positionen af spriten "on exitframe".
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
Kurser inden for grundlæggende programmering

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