The question words in TappyWords are now constantly changing.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2093 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
denniscuflat
2011-10-25 22:24:00 +00:00
parent 043339d46d
commit e9b3d86b4a
6 changed files with 121 additions and 15 deletions

View File

@ -78,7 +78,8 @@ procedure TformConfig.btnLoadClick(Sender: TObject);
begin begin
SetCurrentModule(comboGameType.ItemIndex); SetCurrentModule(comboGameType.ItemIndex);
formTappyTuxGame.Show; formTappyTuxGame.Show;
GetCurrentModule().StartNewGame(comboSound.ItemIndex, comboMusic.ItemIndex, comboLevel.ItemIndex); GetCurrentModule().StartNewGame(comboSound.ItemIndex, comboMusic.ItemIndex,
comboLevel.ItemIndex, ltbWordlist.ItemIndex);
Hide; Hide;
end; end;

View File

@ -109,10 +109,79 @@ object formTappyTuxGame: TformTappyTuxGame
Top = 200 Top = 200
Width = 130 Width = 130
Lines.Strings = ( Lines.Strings = (
'[TESTE]' 'cachorro'
'Palavras escritas:' 'gato'
'' 'peixe'
'pássaro'
'macaco'
'leão'
'tigre'
'elefante'
'crocodilo'
'abelha'
'mosca'
'água-viva'
'tartaruga'
'lagartixa'
'sapo'
'minhoca'
'centopéia'
'rinoceronte'
'coiote'
'águia'
'canguru'
'coala'
'morcego'
'gavião'
'pavão'
'cobra'
'camelo'
'lontra'
'tubarão'
'coelho'
'baleia'
'urso'
'foca'
'escorpião'
'touro'
'vaca'
'galinha'
'formiga'
'borboleta'
'girafa'
'arara'
'salamandra'
'rã'
'pinguim'
'tatu'
'avestruz'
'hiena'
'pelicano'
'pombo'
'orangotango'
'coruja'
'papagaio'
'tucano'
'ornitorrinco'
'gambá'
'rato'
'esquilo'
'golfinho'
'ovelha'
'morsa'
'suricato'
'ornitorrinco'
'toupeira'
'barata'
'lula'
'polvo'
'tamanduá'
'camarão'
'lêmure'
'besouro'
'onça'
) )
OnChange = TestChange
TabOrder = 5 TabOrder = 5
Visible = False Visible = False
end end
@ -123,7 +192,7 @@ object formTappyTuxGame: TformTappyTuxGame
Width = 82 Width = 82
ReadOnly = True ReadOnly = True
TabOrder = 6 TabOrder = 6
Text = 'Melancia' Text = 'Question'
end end
object Question2: TEdit object Question2: TEdit
Left = 216 Left = 216
@ -132,7 +201,7 @@ object formTappyTuxGame: TformTappyTuxGame
Width = 80 Width = 80
ReadOnly = True ReadOnly = True
TabOrder = 7 TabOrder = 7
Text = 'Abacate' Text = 'Question'
end end
object Question4: TEdit object Question4: TEdit
Left = 320 Left = 320
@ -141,7 +210,7 @@ object formTappyTuxGame: TformTappyTuxGame
Width = 80 Width = 80
ReadOnly = True ReadOnly = True
TabOrder = 8 TabOrder = 8
Text = 'Cereja' Text = 'Question'
end end
object Question3: TEdit object Question3: TEdit
Left = 424 Left = 424
@ -150,7 +219,7 @@ object formTappyTuxGame: TformTappyTuxGame
Width = 80 Width = 80
ReadOnly = True ReadOnly = True
TabOrder = 9 TabOrder = 9
Text = 'Melão' Text = 'Question'
end end
object Question5: TEdit object Question5: TEdit
Left = 528 Left = 528
@ -159,7 +228,7 @@ object formTappyTuxGame: TformTappyTuxGame
Width = 80 Width = 80
ReadOnly = True ReadOnly = True
TabOrder = 10 TabOrder = 10
Text = 'Laranja' Text = 'Question'
end end
object GameOver: TToggleBox object GameOver: TToggleBox
Left = 240 Left = 240

View File

@ -36,6 +36,7 @@ type
procedure AnswerKeyPress(Sender: TObject; var Key: char); procedure AnswerKeyPress(Sender: TObject; var Key: char);
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure NoClick(Sender: TObject); procedure NoClick(Sender: TObject);
procedure TestChange(Sender: TObject);
procedure YesClick(Sender: TObject); procedure YesClick(Sender: TObject);
private private
@ -95,6 +96,11 @@ begin
end; end;
procedure TformTappyTuxGame.TestChange(Sender: TObject);
begin
end;
procedure TformTappyTuxGame.YesClick(Sender: TObject); procedure TformTappyTuxGame.YesClick(Sender: TObject);
begin begin
Question1.Top := 24; Question1.Top := 24;
@ -104,7 +110,8 @@ begin
Question5.Top := 24; Question5.Top := 24;
GetCurrentModule().StartNewGame(formConfig.comboSound.ItemIndex, GetCurrentModule().StartNewGame(formConfig.comboSound.ItemIndex,
formConfig.comboMusic.ItemIndex, formConfig.comboMusic.ItemIndex,
formConfig.comboLevel.ItemIndex); formConfig.comboLevel.ItemIndex,
formConfig.ltbWordlist.ItemIndex);
end; end;

View File

@ -20,7 +20,7 @@ type
constructor Create; override; constructor Create; override;
procedure TranslateTextsToEnglish; override; procedure TranslateTextsToEnglish; override;
procedure TranslateTextsToPortuguese; override; procedure TranslateTextsToPortuguese; override;
procedure StartNewGame(SndFX: Integer; Music: Integer; Level: Integer); override; procedure StartNewGame(SndFX: Integer; Music: Integer; Level: Integer; QuestionList: Integer); override;
procedure Answered(); override; procedure Answered(); override;
procedure EndGame(); override; procedure EndGame(); override;
end; end;
@ -46,7 +46,7 @@ begin
ShortDescription := 'TappyMath - Um jogo para aprender aritmética'; ShortDescription := 'TappyMath - Um jogo para aprender aritmética';
end; end;
procedure TTappyMath.StartNewGame(SndFX: Integer; Music: Integer; Level: Integer); procedure TTappyMath.StartNewGame(SndFX: Integer; Music: Integer; Level: Integer; QuestionList: Integer);
begin begin
end; end;

View File

@ -23,6 +23,9 @@ type
gameSLevel : Integer; gameSLevel : Integer;
gameSndFX : Boolean; gameSndFX : Boolean;
gameMusic : Boolean; gameMusic : Boolean;
gameQuestionList : Integer;
gameFile : Text;
aux : string;
timerWords: TTimer; timerWords: TTimer;
{newGame : TTappyGameData;} {newGame : TTappyGameData;}
procedure HandleOnTimer(Sender: TObject); procedure HandleOnTimer(Sender: TObject);
@ -31,7 +34,7 @@ type
destructor Destroy; override; destructor Destroy; override;
procedure TranslateTextsToEnglish; override; procedure TranslateTextsToEnglish; override;
procedure TranslateTextsToPortuguese; override; procedure TranslateTextsToPortuguese; override;
procedure StartNewGame(SndFX: Integer; Music: Integer; Level: Integer); override; procedure StartNewGame(SndFX: Integer; Music: Integer; Level: Integer; QuestionList: Integer); override;
procedure Answered(); override; procedure Answered(); override;
procedure EndGame(); override; procedure EndGame(); override;
end; end;
@ -57,6 +60,7 @@ begin
formTappyTuxGame.Lives.Text := IntToStr(gameLives); formTappyTuxGame.Lives.Text := IntToStr(gameLives);
if (gameLives = 0) then EndGame(); if (gameLives = 0) then EndGame();
formTappyTuxGame.Question1.Top:= 24; formTappyTuxGame.Question1.Top:= 24;
formTappyTuxGame.Question1.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
end; end;
if ((formTappyTuxGame.Question2.Top >= 370)) then if ((formTappyTuxGame.Question2.Top >= 370)) then
@ -65,6 +69,7 @@ begin
formTappyTuxGame.Lives.Text := IntToStr(gameLives); formTappyTuxGame.Lives.Text := IntToStr(gameLives);
if (gameLives = 0) then EndGame(); if (gameLives = 0) then EndGame();
formTappyTuxGame.Question2.Top:= 24; formTappyTuxGame.Question2.Top:= 24;
formTappyTuxGame.Question2.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
end; end;
if ((formTappyTuxGame.Question3.Top >= 370)) then if ((formTappyTuxGame.Question3.Top >= 370)) then
@ -73,6 +78,7 @@ begin
formTappyTuxGame.Lives.Text := IntToStr(gameLives); formTappyTuxGame.Lives.Text := IntToStr(gameLives);
if (gameLives = 0) then EndGame(); if (gameLives = 0) then EndGame();
formTappyTuxGame.Question3.Top:= 24; formTappyTuxGame.Question3.Top:= 24;
formTappyTuxGame.Question3.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
end; end;
if ((formTappyTuxGame.Question4.Top >= 370)) then if ((formTappyTuxGame.Question4.Top >= 370)) then
@ -81,6 +87,7 @@ begin
formTappyTuxGame.Lives.Text := IntToStr(gameLives); formTappyTuxGame.Lives.Text := IntToStr(gameLives);
if (gameLives = 0) then EndGame(); if (gameLives = 0) then EndGame();
formTappyTuxGame.Question4.Top:= 24; formTappyTuxGame.Question4.Top:= 24;
formTappyTuxGame.Question4.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
end; end;
if ((formTappyTuxGame.Question5.Top >= 370)) then if ((formTappyTuxGame.Question5.Top >= 370)) then
@ -89,6 +96,7 @@ begin
formTappyTuxGame.Lives.Text := IntToStr(gameLives); formTappyTuxGame.Lives.Text := IntToStr(gameLives);
if (gameLives = 0) then EndGame(); if (gameLives = 0) then EndGame();
formTappyTuxGame.Question5.Top:= 24; formTappyTuxGame.Question5.Top:= 24;
formTappyTuxGame.Question5.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
end; end;
@ -124,7 +132,7 @@ begin
ShortDescription := 'TappyWords - Um jogo para aprender a digitar e ortografia'; ShortDescription := 'TappyWords - Um jogo para aprender a digitar e ortografia';
end; end;
procedure TTappyWords.StartNewGame(SndFX: Integer; Music: Integer; Level: Integer); procedure TTappyWords.StartNewGame(SndFX: Integer; Music: Integer; Level: Integer; QuestionList: Integer);
begin begin
//Causam "External: SIGSEGV" //Causam "External: SIGSEGV"
@ -151,6 +159,22 @@ begin
formTappyTuxGame.Score.Text := IntToStr(gameScore); formTappyTuxGame.Score.Text := IntToStr(gameScore);
formTappyTuxGame.Lives.Text := IntToStr(gameLives); formTappyTuxGame.Lives.Text := IntToStr(gameLives);
formTappyTuxGame.Question1.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
formTappyTuxGame.Question2.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
formTappyTuxGame.Question3.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
formTappyTuxGame.Question4.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
formTappyTuxGame.Question5.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
//gameQuestionList := QuestionList;
//if gameQuestionList < 0 then gameQuestionList := 0;
//Assign(gameFile, {IntToStr(gameQuestionList)}'4.txt')
//gameFile := SearchFile;
//Reset(gameFile);
//Readln(gameFile, aux);
//formTappyTuxGame.Question1.Text := aux;
//Assign(gameFile, gameQuestionList+'.txt');
end; end;
procedure TTappyWords.Answered; procedure TTappyWords.Answered;
@ -158,6 +182,7 @@ begin
if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question1.Text) then if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question1.Text) then
begin begin
formTappyTuxGame.Question1.Top := 24; formTappyTuxGame.Question1.Top := 24;
formTappyTuxGame.Question1.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
gameScore := gameScore +1; gameScore := gameScore +1;
gameLevel := (gameScore div 20) + gameSLevel; gameLevel := (gameScore div 20) + gameSLevel;
formTappyTuxGame.Score.Text := IntToStr(gameScore); formTappyTuxGame.Score.Text := IntToStr(gameScore);
@ -166,6 +191,7 @@ begin
if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question2.Text) then if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question2.Text) then
begin begin
formTappyTuxGame.Question2.Top := 24; formTappyTuxGame.Question2.Top := 24;
formTappyTuxGame.Question2.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
gameScore := gameScore +1; gameScore := gameScore +1;
gameLevel := (gameScore div 20) + gameSLevel; gameLevel := (gameScore div 20) + gameSLevel;
formTappyTuxGame.Score.Text := IntToStr(gameScore); formTappyTuxGame.Score.Text := IntToStr(gameScore);
@ -174,6 +200,7 @@ begin
if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question3.Text) then if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question3.Text) then
begin begin
formTappyTuxGame.Question3.Top := 24; formTappyTuxGame.Question3.Top := 24;
formTappyTuxGame.Question3.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
gameScore := gameScore +1; gameScore := gameScore +1;
gameLevel := (gameScore div 20) + gameSLevel; gameLevel := (gameScore div 20) + gameSLevel;
formTappyTuxGame.Score.Text := IntToStr(gameScore); formTappyTuxGame.Score.Text := IntToStr(gameScore);
@ -182,6 +209,7 @@ begin
if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question4.Text) then if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question4.Text) then
begin begin
formTappyTuxGame.Question4.Top := 24; formTappyTuxGame.Question4.Top := 24;
formTappyTuxGame.Question4.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
gameScore := gameScore +1; gameScore := gameScore +1;
gameLevel := (gameScore div 20) + gameSLevel; gameLevel := (gameScore div 20) + gameSLevel;
formTappyTuxGame.Score.Text := IntToStr(gameScore); formTappyTuxGame.Score.Text := IntToStr(gameScore);
@ -190,6 +218,7 @@ begin
if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question5.Text) then if (formTappyTuxGame.Answer.Text = formTappyTuxGame.Question5.Text) then
begin begin
formTappyTuxGame.Question5.Top := 24; formTappyTuxGame.Question5.Top := 24;
formTappyTuxGame.Question5.Text := formTappyTuxGame.Test.Lines.Strings[random(71)];
gameScore := gameScore +1; gameScore := gameScore +1;
gameLevel := (gameScore div 20) + gameSLevel; gameLevel := (gameScore div 20) + gameSLevel;
formTappyTuxGame.Score.Text := IntToStr(gameScore); formTappyTuxGame.Score.Text := IntToStr(gameScore);

View File

@ -24,7 +24,7 @@ type
procedure TranslateTextsToEnglish; virtual; procedure TranslateTextsToEnglish; virtual;
procedure TranslateTextsToPortuguese; virtual; procedure TranslateTextsToPortuguese; virtual;
procedure InitModule(); virtual; procedure InitModule(); virtual;
procedure StartNewGame(SndFX: Integer; Music: Integer; Level: Integer); virtual; abstract; procedure StartNewGame(SndFX: Integer; Music: Integer; Level: Integer; QuestionList: Integer); virtual; abstract;
procedure Answered(); virtual; abstract; procedure Answered(); virtual; abstract;
procedure EndGame(); virtual; abstract; procedure EndGame(); virtual; abstract;
end; end;