10 sec pour saisir sinon on continue - Ada - Programmation
Marsh Posté le 31-05-2006 à 16:51:02
De plus, j'ai un autre probleme :
je pense que cela vient du BUFFER :
disons que si je saisi des le depart les direction haut, bas,gauche,droite...
alors le pacman va se deplacement (lorsqu'il le peut) selon cette ordre que je lui ai donné.
les direction ont été enregistrée et utilisés alors que "normalement" la saisie(dir) n'a pas été demandé.
je pense devoir vider le buffer (car j'avais deja eu un problme identique de saisie et ca venait du buffer selon la prof) mais j'ai perdu la commande qui permet de vider ce buffer (et j'ai tout GoogleIsé!
merci beaucoups vous m'etes d'une grand aide.
merci encore
Marsh Posté le 31-05-2006 à 19:06:40
felben86 a écrit : De plus, j'ai un autre probleme : |
skip_line; je crois
Marsh Posté le 31-05-2006 à 19:13:25
felben86 a écrit : Bonjour a tous, |
je connais un peut le problème, c'est une question de construction du programme dans sa globalité
on devroit avoir
Code :
|
mais, je suis qu'un amateur
Marsh Posté le 06-06-2006 à 16:38:09
Alors, t'en est oû,
donne nous de tes nouvelles,
est-ce que mon algo t'a orienter sur la bonne piste ?
Marsh Posté le 10-06-2006 à 11:08:36
alros voila de mes nouvelles
grace a jovalise j'ai reussi mon pacman :
dans le fond, j'ai du crée une tache.
je rappelle le probleme : le pacman ne doit pas attendre la saisie pour continuer son chemin alors que sa direction est conditionné par sa saisie.
et l'on sait que si je fait get(dir), le prog va bloquer dessus
alors :
--> tache1 : saisie (non bloquante qui attend une saisie). la tache est un deuxieme processus (en gros) qui tourne independament (si on ne le conditionne pas) du programme principale, donc lui seulement va bloquer sur la saisie
--> tache 2 : toutes les 0.25 sec, elle recupere la direction: (qu'elle ait été saisie ou non, cette direction a été initialisé).et verifie sa validité : rerécupere jusqu'a...valide, si valide : un boolean passe a 1
--> le pacman (prog principal) vient ensuite recupéré cette direction seulement si le boolean est a 1.
voila voila,
grace a vous j'ai appris les taches c es ttrop de la balle
merci encore
Marsh Posté le 31-05-2006 à 16:50:33
Bonjour a tous,
voila, je planche sur le pacman, qui s'affiche a la console, je sais ca fait pas très jolie mais c'est rigolo.
voila :
pacman is record :
i : indice ligne
j : indice colonne
dir : direction vers la quelle il se deplace
end record ;
je jeu se deroule donc sur un tableau(i,j).
il y'a verfication de la future position du pacman grace a sa direction et sa sposition avant deplacement (pour ne pas ecraser un mur).
lors que le deplacement est impossible, alors on demande une saisie de la ndirection a l'utilisateur :
get_immediate(dir);
mais du coup, il ne peut changer de direction, que lorsqu'il rencontre un probleme!
or si le joueur veut le deplacer a droite sur un chemin en cours de route au lieu de continuer vers le haut, il ne peut pas!
------------> DONC
comment dire : tu a 0.3 sec pour saisir une nouvelle direction, sinon on continu les instructions.
Merci a tous pour votre aide