Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2158 connectés 

  FORUM HardWare.fr
  Programmation

  [Quick basic] arghhhh je galere jetez un coup deuil svp....

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Quick basic] arghhhh je galere jetez un coup deuil svp....

n°37129
djfm
Posté le 05-06-2001 à 19:13:29  profilanswer
 

je c vraiment pa dou vient le pb, je galere depuis une semaine , svp dites moi ce kil va pas
c un pong en Qbasic, mais on peu ratraper la balle kune fois... pkoi??? je c , donner le prog entier et dire demerdez vous c pas top mais l a je c bvraiment pa koi faire...
 
 
screen 12
 
posx=4
posy=4
dirx=1
diry=1
dirx2=-1
diry2=-1
x=340
y=475
 
ON KEY(12) GOSUB decalg
on key(13) gosub decald
on key(3) gosub quitter
key(12) on
key(13) on
key(3) on
 
line(x,y)-((x+50),(y+5)),2,BF
 
do
circle(posx,posy),8
for pdt=1 to 40000
pdt2=pdt+3.14159256
next pdt
circle(posx,posy),8,0
if posx+dirx=637 or posx+dirx=3 then dirx=(dirx*(-1))
if posy+diry=3 then diry=(diry*(-1))
if posy+diry=475 then gosub enbas
posx=posx+dirx
posy=posy+diry
loop 'until len(inkey$)
 
decalg:
for k=1 to 20
x=x-1
line(x,y)-((x+50),(y+5)),2,BF
line((x+50),y)-((x+51),(y+5)),0,BF
next k
return
 
decald:
for k=1 to 20
x=x+1
line(x,y)-((x+50),(y+5)),2,BF
line((x-2),y)-((x-1),(y+5)),0,BF
next k
return
 
quitter:
end
return
 
enbas:
 
 
for sb=1 to 50
if posy+diry=((x-1)+sb) then touche=1
next sb
if touche=1 then diry=(diry*(-1))
if touche=0 then gosub quitter
touche=0
return


---------------
Do you serve a purpose,Or purposely serve?
mood
Publicité
Posté le 05-06-2001 à 19:13:29  profilanswer
 

n°37132
tgrx
My heart is pumping for love
Posté le 05-06-2001 à 19:34:36  profilanswer
 

djfm a écrit a écrit :

 
for sb=1 to 50
if posy+diry=((x-1)+sb) then touche=1
next sb




 
Ben ici je vois que tu compares une variable suivant y avec une variable suivant x... c'est un peu con non ?
Du coup a chaque fois touche=0 parce que l'egalite n'est jamais verifiee, la partie s'arrete et c'est pour ca que tu ne peux toucher qu'une fois la balle (en fait tu la touches jamais... :) )
 
Ce qu'il faudrait ecrire c'est :
 
(on vire la boucle qui sert a rien)
if ((posx+dirx>=x) and (posx+dirx<x+sb)) then touche=1

n°37133
tgrx
My heart is pumping for love
Posté le 05-06-2001 à 19:35:26  profilanswer
 

... avec sb=50 bien sur... (oups :crazy: )

n°37137
djfm
Posté le 05-06-2001 à 20:07:16  profilanswer
 

oui!!!!! ca marche!!!!!! merci!!


---------------
Do you serve a purpose,Or purposely serve?

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Quick basic] arghhhh je galere jetez un coup deuil svp....

 

Sujets relatifs
[basic] Conversion d'un qbasic en vbasicTransformation d'un exe en basic
Démineur en basic[VB6] rafraichir une fenetre iexplore a partir de visual basic !!!
[Visual Basic] probleme avec DriveListBoxphp de BASE : comment faire pour que ça fonctionne ? Galère...
Vous pouvez me donner un ptit coup de pouce en C ?tres simpple en visual basic
Acces 2000 et Visual Basic[visual basic] encore un truc tout con que je trouve pas
Plus de sujets relatifs à : [Quick basic] arghhhh je galere jetez un coup deuil svp....


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR