Forum

Catégorie : Programmes
Forum : Aide à la programmation
Vues : 905
Réponses : 5
Type : discussion
Etat : réponses autorisées

Simulation bombe

Fryke le 18/12/2012 à 20:37
Bonjour à tous et à toutes
depuis ce samedi je me suis lancer dans la programmation .
j'ai un niveau d'expérience aussi élevé que celui d'une marmotte je suppose mais quand même ça m'intéresse
néanmoins ce soir je viens de programmer un jeu (simulation de bombe) dans lequel le joueur entre dans une mission et dois désamorcer une bombe sous un temps aléatoire
aucun soucis lors de la programmation le seul problème c'est que à un moment la calculette doit faire tourner un compte à rebours en arrière plan pendant que le joueur essaye de désamorcer la bombe
le problème c'est que le compte à rebours ne s'enclenche pas en arrière plan et il faut attendre que le compte à rebours soit terminé pour désamorcer la bombe ( en gros désamorcer la bombe quand elle a explosé)
je situe parfaitement le problème dans le code mais je ne sais pas comment lancé ce compte à rebours en arrière plan
si c'est possible j'aimerais que l'on m'explique
et j'ai une ti 82 non stats non francisé
linkakro le 18/12/2012 à 22:43
Il est préférable de poster le code pour savoir où se situe ton problème.

Tu as probablement programmé le compte à rebours avec une boucle qui est suivie des instructions de déplacement.
Il faut placer les instructions de jeu à l'intérieur de la boucle du compte à rebours.

Exemple
Code
1->Y
1->X
For(A,100,0,-1   // compte à rebours
  // eventuellement une fonction de ralentissement par ici, ou ailleurs
getKey->K
If K   // pour éviter le clignotement si inactivité, c'est facultatif
Output(Y,X," "  // effacement
X-(K=24)+(K=26->X  //
Y-(K=25)+(K=34->Y  //déplacements
Output(Y,X,"O  // affichage
End  // fin du compte à rebours
Fryke le 19/12/2012 à 13:06
la boucle c'est
Code

int (rand*100+10)->A
ClrHome
While A>0
A-5->A
end
AlexRider38 le 19/12/2012 à 17:10
Pareil, tu met tes instructions dans While
Fryke le 19/12/2012 à 19:04
ça risque pas de répéter les instructions jusqu'à ce que le a soit à 0?
linkakro le 19/12/2012 à 20:18
Si et c'est le but.
Tu ne peux pas effectuer de déplacement de ton personnage sans que les instructions de déplacement soient dans la boucle du compteur.

Ton While et A-1->A peuvent être remplacés par mon For.

Tu peux remplacer int(rand*100+10)->A par randInt(10,109).
randInt est une fonction disponible à partir de la ti82stat.
Accessoirement mon message te montre l'intervalle du résultat de ton instruction si ce n'était pas clair.