programmation

Discutez de vos problèmes de programmation.

programmation

Messagepar victor » 15 Décembre 2006 18:41

Bonjour a tous!!
Jé un petit probleme avec ma graph 85...
Je débute dans la programmation donc ne vous moqué pas de moi sil vous plait...
En faite j'arrive a créer un pixel et a le deplacer avec les touche de direction. Si on n'enleve le cls du début, le point déplacer devient en faite une ligne. Je voulai donc savoir comment faire pour que lorsque je fais croiser cette ligne, le prog. s'arrete...
Sinon je suis heureux car je vien de réussir a créer mon premier jeux...(le jeux du + ou -). :D :)
voila. a++ tt le monde
et merci davance pour la réponse...
victor
 
Messages: 18
Inscription: 15 Décembre 2006 18:30

Messagepar Aliasker » 15 Décembre 2006 19:08

Si j'ai bien compris tu veux que quand ta ligne rencontre un des pixels qu'elle a laissé dans son sillage le programme s'arrête.
Si tel est le cas il faut utiliser la fonction "pxltest"
Aliasker
 
Messages: 33
Inscription: 13 Décembre 2006 15:52
Localisation: Rochefort (17)

ok mais...

Messagepar victor » 15 Décembre 2006 21:47

ok. merci.sympa davoir répondu.
Mais pourrai tu m'indiké comment se servir de cette fonction "pxltest" ?
Parceke ji avai déja pensé en faite donc javai essayer avec cette fonction mais le programme ne se lancai pa...
:( snif. Pourquoi donc??????
merki de répondre
a++
victor
 
Messages: 18
Inscription: 15 Décembre 2006 18:30

Messagepar Aliasker » 16 Décembre 2006 11:44

Exemple:
Tu définis ta fenêtre: ViewWindow 1,127,0,1,63,0
Cette fenêtre est très pratique car elle correspond au nombre de pixels exact en X et en Y.
Ensuite, admettons que tu aies une ligne:
F-Line 50,1,50,63 ou Vertical 50
Si ton serpent est programmé par PxlOn A,B et que tu incrémentes ou décrémente A et B à l'aide des getkey en fonction des directions:
PxlOn A,B
PxlTest A,B
If Ans=1
Then Stop
IfEnd
Cela signifie que tant que le test est égal à 0, le programme continue et quend il est égal à 1, il s'arrête.

J'espère que j'aurai été clair. N'hésites pas à me redemander dans le cas contraire.
Aliasker
 
Messages: 33
Inscription: 13 Décembre 2006 15:52
Localisation: Rochefort (17)

Messagepar victor » 16 Décembre 2006 18:19

Merci encore davoir répondu...
Mais je ne compren toujours pas pourquoi le prog ne marche.
:shock:
Voila mon prog:

ViewWindow 1,123,0,1,63,0
ClrText:ClrGraph
AxesOff
5->A
5->B
Lbl r
Lbl 0
Getkey=27=>Goto1
Getkey=38=>Goto2
Getkey=28=>Goto3
Getkey=37=>Goto4
Goto 0
Lbl 1
B+1->B
Goto 6
Lbl 2
B-1->B
Goto 6
Lbl 3
A-1->A
Goto 6
Lbl 4
A+1->A
Goto 6
Lbl 6
Vertical 50
PxlOn A,B
PxlTest(A,B)
If Ans=1
Then Stop
IfEnd
Goto r
:(
:?
victor
 
Messages: 18
Inscription: 15 Décembre 2006 18:30

Messagepar Aliasker » 16 Décembre 2006 20:05

Essaye ça:
ViewWindow 1,127,0,1,63,0
ClrText:Cls
AxesOff
Vertical 50
1->A
0->B
5->C
5->D
Lbl 1
If Getkey=28
Then 1->B
0->A
IfEnd
If Getkey=37
Then -1->B
0->A
IfEnd
If Getkey=38
Then -1->A
0->B
IfEnd
If Getkey=27
Then 1->A
0->B
IfEnd
C+A->C
D+B->D
PxlTest 64-D,C
If Ans=1
Then Stop
IfEnd
PlotOn C,D
Goto 1
Aliasker
 
Messages: 33
Inscription: 13 Décembre 2006 15:52
Localisation: Rochefort (17)

Messagepar victor » 17 Décembre 2006 14:58

cool, sa marche, merci bocoup!!!!!!!!!!!!!!...
juste une "derniere" chose : je narive pas a comprendre le :
O->A
et O->B aprè chaque Then...
victor
 
Messages: 18
Inscription: 15 Décembre 2006 18:30

Messagepar Aliasker » 17 Décembre 2006 15:27

En fait, selon la touche sur laquelle tu appuies, les valeurs de A et B varient de façon à faire varier celles de C et D qui constituent les coordonnées de ton point.
Exemple pour la touche du haut (getkey 28):
tu mets 1->B et 0->A
donc B=1 et A=0
Ensuite tu fais C+A->C et D+B->D
et PlotOn C,D
donc ton abscisse ne varie pas puisque tu lui ajoute 0
en revanche ton ordonnée augmente puisque tu lui ajoute 1 jusqu'à ce que tu appuies sur une autre touche...etc
Capito?
Aliasker
 
Messages: 33
Inscription: 13 Décembre 2006 15:52
Localisation: Rochefort (17)

Messagepar Aliasker » 17 Décembre 2006 15:47

ERRATUM:

C'est getkey 28 que je voulais marquer à la place de 8)
Aliasker
 
Messages: 33
Inscription: 13 Décembre 2006 15:52
Localisation: Rochefort (17)

Messagepar victor » 17 Décembre 2006 16:47

a ouai ok c bon g capito!!!!!!!!!!
:D :D :D
merci du coup de main é a trè bientot je pense...
victor
 
Messages: 18
Inscription: 15 Décembre 2006 18:30

Suivante

Retourner vers Problèmes

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

cron

xhtml css      © 2001-2014 CasioExpert.com      CasioExpert.com v6      conception & réalisation Mickaël Morier