Here is the code. this code executes perfectaly but I need a class system for btnCorrect, btnWrong, btnBank. if anyone wants to see how the game works at the moment i can send it you
Thanks
Sorry if the code is not good to read this is the first time i have used these tags
#include <vcl.h>
#pragma hdrstop
#include "WeakestLinkTestUnit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfrmWeakestLinkTest *frmWeakestLinkTest;
//---------------------------------------------------------------------------
__fastcall TfrmWeakestLinkTest::TfrmWeakestLinkTest(TComponen t* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
Code:
void __fastcall TfrmWeakestLinkTest::btnStartClick(TObject *Sender)
Code:
{ controlSettings(Start);
memTrace->Lines->Add("Clock Started");
tmrClock->Enabled = True;
btnStart->Enabled=False;
{
//!tmrClock->Enabled;
//if (btnStart->Caption == "Start")
// {
// btnStart->Caption = "Stop";
// }//end if
//else
// {
// btnStart->Caption = "Start";
// }//end else
}
}
//---------------------------------------------------------------------------
Code:
void __fastcall TfrmWeakestLinkTest::btnCorrectClick(TObject *Sender)
Code:
{
if (edtCurrentWinnings->Text==IntToStr(0))
{
edtCurrentWinnings->Text=IntToStr(50);
}
else
{
edtCurrentWinnings->Text=IntToStr(StrToInt(edtCurrentWinnings->Text)*2);
}
Code:
memTrace->Lines->Add("Correct Answer: "+edtCurrentWinnings->Text);
}
//---------------------------------------------------------------------------
Code:
void __fastcall TfrmWeakestLinkTest::btnWrongClick(TObject *Sender)
Code:
{
if (edtCurrentWinnings->Text>=IntToStr(0))
{
edtCurrentWinnings->Text=IntToStr(0);
}
memTrace->Lines->Add("Wrong Answer");
}
//---------------------------------------------------------------------------
Code:
void __fastcall TfrmWeakestLinkTest::btnBankClick(TObject *Sender)
{
controlSettings(bank);
edtGuaranteed->Text=IntToStr(StrToInt( edtGuaranteed->Text)
+ StrToInt(edtCurrentWinnings->Text));
memTrace->Lines->Add("Bank: "+edtGuaranteed->Text);
edtCurrentWinnings->Text=IntToStr(0);
}
//---------------------------------------------------------------------------
Code:
void __fastcall TfrmWeakestLinkTest::btnResetClick(TObject *Sender)
{
memTrace->Lines->Add("Reset");
controlSettings(setUp);
}
//---------------------------------------------------------------------------
Code:
void __fastcall TfrmWeakestLinkTest::FormCreate(TObject *Sender)
{
controlSettings(setUp);
}
//---------------------------------------------------------------------------
Code:
void __fastcall TfrmWeakestLinkTest::controlSettings(states gameState)
{
switch (gameState)
{
case setUp:
{
btnStart->Enabled=True;
gpbWinnings->Enabled=False;
gpbClock->Enabled =True;
btnBank->Visible=False;
btnReset->Visible=False;
btnWrong->Visible=False;
btnCorrect->Visible=False;
gpbTest->Visible=False;
edtClock->Text=IntToStr(60);
edtCurrentWinnings->Text=IntToStr(0);
edtGuaranteed->Text=IntToStr(0);
}
break;
case Start:
{
gpbTest->Visible=True;
btnCorrect->Visible=True;
btnCorrect->Enabled=True;
btnWrong->Visible=True;
btnWrong->Enabled=True;
btnBank->Visible=True;
btnBank->Enabled=True;
}
break;
case wrong :
{
btnStart->Enabled=False;
gpbWinnings->Enabled=True;
gpbClock->Enabled =True;
gpbTest->Enabled=True;
btnReset->Enabled=False;
}
break;
case correct:
{
btnStart->Enabled=False;
gpbWinnings->Enabled=True;
gpbClock->Enabled =True;
gpbTest->Enabled=True;
btnReset->Enabled=False;
}
break;
case bank:
{
btnStart->Enabled=False;
gpbWinnings->Enabled=True;
gpbClock->Enabled =True;
gpbTest->Enabled=True;
btnReset->Enabled=False;
}
break;
case gameOver:
{
btnStart->Enabled=False;
gpbWinnings->Enabled=False;
gpbClock->Enabled =False;
gpbTest->Enabled=False;
btnReset->Enabled=True;
}
break;
}
}
//-----------------------------------------------------------
Code:
void __fastcall TfrmWeakestLinkTest::tmrClockTimer(TObject *Sender)
{
edtClock->Text=IntToStr(StrToInt(edtClock->Text)-1);
if (edtClock->Text<=IntToStr(0))
{
edtClock->Text=IntToStr(0);
edtGuaranteed->Text= IntToStr(StrToInt( edtGuaranteed->Text)
+ StrToInt(edtCurrentWinnings->Text));
edtCurrentWinnings->Text= IntToStr(0);
memTrace->Lines->Add("Clock Stopped");
memTrace->Lines->Add("You Won: " + edtGuaranteed->Text);
btnReset->Visible=True;
btnReset->Enabled=True;
//btnCorrect->Visible=False;
btnCorrect->Enabled=False;
//btnWrong->Visible=False;
btnWrong->Enabled=False;
//btnBank->Visible=False;
btnBank->Enabled=False;
tmrClock->Enabled=False;
}
}