Bonjour, je fais présentement un TP pour mon cours d'algorithme et programmation au Cégep et j'ai un problème. J'ai programmer un mini-jeu de d6.
voici les règles:
//////////Règles du jeu /////////////////////////////////////
// le 1 sur un dé vaut 10 points. //
// le 5 sur un dé vaut 5 points. //
// le double 2 vaut 20 points. //
// le double 3 vaut 30 points. //
// le double 4 vaut 40 points. //
// le double 5 vaut 50 points. //
// seulement les valeurs (sans le double) //
// si on a un chiffre: 2,3,4,5,6 on a
// zéro et on a perdu.
// On doit atteindre au minimun 100
// si on a veut gagné. //
///////////////////////////////////////////////////////////////
le problème c'est quand je veux afficher le bouton Recommencer le résultat doit être égale ou supérieur à 100.
Voici le code source:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int valSave=0;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
lGagne->Hide();
lPerdu->Hide();
iDe1->Show();
iDe11->Hide();
iDe12->Hide();
iDe13->Hide();
iDe14->Hide();
iDe15->Hide();
iDe16->Hide();
iDe2->Show();
iDe21->Hide();
iDe22->Hide();
iDe23->Hide();
iDe24->Hide();
iDe25->Hide();
iDe26->Hide();
bRetry->Hide();
bJouer->Show();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
randomize();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::bJouerClick(TObject *Sender)
{
int deNo1 = random(6)+1;
int deNo2 = random(6)+1;
int val;
//////////Règles du jeu ///////////////////////////////////////
// le 1 sur un dé vaut 10 points. //
// le 5 sur un dé vaut 5 points. //
// le double 2 vaut 20 points. //
// le double 3 vaut 30 points. //
// le double 4 vaut 40 points. //
// le double 5 vaut 50 points. //
// seulement les valeurs (sans le double) //
// : 2,3,4,5,6 on une valeur de zéro. //
///////////////////////////////////////////////////////////////
if (deNo1==1 && deNo2==1){
val = 100;
lGagne->Show();
bRetry->Show();
bJouer->Hide();
}
else
if (deNo1==2 && deNo2==2)
val = 20;
else
if (deNo1==3 && deNo2==3)
val = 30;
else
if (deNo1==4 && deNo2==4)
val = 40;
else
if (deNo1==5 && deNo2==5)
val = 50;
else
if (deNo1==6 && deNo2==6)
val = 60;
else
if (deNo1==1 || deNo2==1)
val = 10;
else
if (deNo1==5 || deNo2==5)
val = 5;
else{
val = 0;
lPerdu->Show();
bRetry->Show();
bJouer->Hide();
}
// Affichage du D6 No 1 à l'écran.
switch(deNo1){
case 1:
iDe1->Hide();
iDe11->Show();
iDe12->Hide();
iDe13->Hide();
iDe14->Hide();
iDe15->Hide();
iDe16->Hide();
break;
case 2:
iDe1->Hide();
iDe11->Hide();
iDe12->Show();
iDe13->Hide();
iDe14->Hide();
iDe15->Hide();
iDe16->Hide();
break;
case 3:
iDe1->Hide();
iDe11->Hide();
iDe12->Hide();
iDe13->Show();
iDe14->Hide();
iDe15->Hide();
iDe16->Hide();
break;
case 4:
iDe1->Hide();
iDe11->Hide();
iDe12->Hide();
iDe13->Hide();
iDe14->Show();
iDe15->Hide();
iDe16->Hide();
break;
case 5:
iDe1->Hide();
iDe11->Hide();
iDe12->Hide();
iDe13->Hide();
iDe14->Hide();
iDe15->Show();
iDe16->Hide();
break;
case 6:
iDe1->Hide();
iDe11->Hide();
iDe12->Hide();
iDe13->Hide();
iDe14->Hide();
iDe15->Hide();
iDe16->Show();
break;
default:iDe1->Show();
}
// Affichage du D6 No 2 à l'écran.
switch(deNo2){
case 1:
iDe2->Hide();
iDe21->Show();
iDe22->Hide();
iDe23->Hide();
iDe24->Hide();
iDe25->Hide();
iDe26->Hide();
break;
case 2:
iDe2->Hide();
iDe21->Hide();
iDe22->Show();
iDe23->Hide();
iDe24->Hide();
iDe25->Hide();
iDe26->Hide();
break;
case 3:
iDe2->Hide();
iDe21->Hide();
iDe22->Hide();
iDe23->Show();
iDe24->Hide();
iDe25->Hide();
iDe26->Hide();
break;
case 4:
iDe2->Hide();
iDe21->Hide();
iDe22->Hide();
iDe23->Hide();
iDe24->Show();
iDe25->Hide();
iDe26->Hide();
break;
case 5:
iDe2->Hide();
iDe21->Hide();
iDe22->Hide();
iDe23->Hide();
iDe24->Hide();
iDe25->Show();
iDe26->Hide();
break;
case 6:
iDe2->Hide();
iDe21->Hide();
iDe22->Hide();
iDe23->Hide();
iDe24->Hide();
iDe25->Hide();
iDe26->Show();
break;
default:iDe2->Show();
}
valSave = valSave + val;
lTotal->Caption = "Le Total : ";
lTotal->Caption = lTotal->Caption + valSave ;
if (valSave >=100) /////// C'est ici
bRetry->Show(); /<====
lGagne->Show(); /<====
}
//---------------------------------------------------------------------------
void __fastcall TForm1::bQuitterClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::bRetryClick(TObject *Sender)
{
valSave = 0 ;
lTotal->Caption = "Total : 0";
bJouer->Show();
lGagne->Hide();
lPerdu->Hide();
iDe1->Show();
iDe11->Hide();
iDe12->Hide();
iDe13->Hide();
iDe14->Hide();
iDe15->Hide();
iDe16->Hide();
iDe2->Show();
iDe21->Hide();
iDe22->Hide();
iDe23->Hide();
iDe24->Hide();
iDe25->Hide();
iDe26->Hide();
bRetry->Hide();
}
//---------------------------------------------------------------------------