Added HangmanGame class, but does not work yet

Dependencies:   SDFileSystem app epson mbed msp430 pl tests

Committer:
markpsymonds
Date:
Mon Dec 04 20:15:18 2017 +0000
Revision:
1:a5ec6f9dcf0d
Parent:
0:fa7450a43b99
Fixed most compile issues in hangman.cpp/.h.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
group-FlexBook 0:fa7450a43b99 1 //
group-FlexBook 0:fa7450a43b99 2 // Filename: hangman.h
group-FlexBook 0:fa7450a43b99 3 //
group-FlexBook 0:fa7450a43b99 4 // Class for the hangman game played on pagesensor and pageflexenable.
group-FlexBook 0:fa7450a43b99 5 //
group-FlexBook 0:fa7450a43b99 6
group-FlexBook 0:fa7450a43b99 7 // include guards
group-FlexBook 0:fa7450a43b99 8
group-FlexBook 0:fa7450a43b99 9 #include <memory>
group-FlexBook 0:fa7450a43b99 10 #include "mbed.h"
group-FlexBook 0:fa7450a43b99 11 #include "log.h"
group-FlexBook 0:fa7450a43b99 12 //include more files, e.g. where eink display is changed, and to read from SD card
group-FlexBook 0:fa7450a43b99 13
group-FlexBook 0:fa7450a43b99 14 namespace Flexbook
group-FlexBook 0:fa7450a43b99 15 {
group-FlexBook 0:fa7450a43b99 16
group-FlexBook 0:fa7450a43b99 17 class HangmanGame
group-FlexBook 0:fa7450a43b99 18 {
group-FlexBook 0:fa7450a43b99 19 public:
group-FlexBook 0:fa7450a43b99 20 // Constructor needs to be explicit.
group-FlexBook 0:fa7450a43b99 21 explicit HangmanGame();
group-FlexBook 0:fa7450a43b99 22
group-FlexBook 0:fa7450a43b99 23 // Destructor
group-FlexBook 0:fa7450a43b99 24 ~HangmanGame();
group-FlexBook 0:fa7450a43b99 25
group-FlexBook 0:fa7450a43b99 26 // Game status indicator
markpsymonds 1:a5ec6f9dcf0d 27 bool finished;
group-FlexBook 0:fa7450a43b99 28
group-FlexBook 0:fa7450a43b99 29 private:
group-FlexBook 0:fa7450a43b99 30 // Word to be guessed, word guessed so far
markpsymonds 1:a5ec6f9dcf0d 31 char word[14];
markpsymonds 1:a5ec6f9dcf0d 32 char guessed[14];
group-FlexBook 0:fa7450a43b99 33
group-FlexBook 0:fa7450a43b99 34 // Number of letters in word to be guessed
group-FlexBook 0:fa7450a43b99 35 char wordlength;
group-FlexBook 0:fa7450a43b99 36
group-FlexBook 0:fa7450a43b99 37 // Currently selected and previous position on the alphabet matrix
markpsymonds 1:a5ec6f9dcf0d 38 char currentpos;
markpsymonds 1:a5ec6f9dcf0d 39 char oldpos;
group-FlexBook 0:fa7450a43b99 40
group-FlexBook 0:fa7450a43b99 41 // Status indicator for each letter on the alphabet matrix, already used or not?
markpsymonds 1:a5ec6f9dcf0d 42 bool alphabet[27];
group-FlexBook 0:fa7450a43b99 43
group-FlexBook 0:fa7450a43b99 44 // Number of wrong guesses, equals number of elements of hanging man drawn
group-FlexBook 0:fa7450a43b99 45 char hangstage;
group-FlexBook 0:fa7450a43b99 46
group-FlexBook 0:fa7450a43b99 47 // Routine to determine how to move the cursor after electrode touch
group-FlexBook 0:fa7450a43b99 48 char movecursor(char oldpos, char buttonnumber);
group-FlexBook 0:fa7450a43b99 49
group-FlexBook 0:fa7450a43b99 50 // Routine to run after confirming selection of a position in the alphabet matrix
group-FlexBook 0:fa7450a43b99 51 void select();
group-FlexBook 0:fa7450a43b99 52
group-FlexBook 0:fa7450a43b99 53 // Routine to redraw the alphabet matrix after a cursor move
markpsymonds 1:a5ec6f9dcf0d 54 void RedrawAlphabet(char newpos, char oldpos);
group-FlexBook 0:fa7450a43b99 55
group-FlexBook 0:fa7450a43b99 56 };
group-FlexBook 0:fa7450a43b99 57
group-FlexBook 0:fa7450a43b99 58 }