This is a remake of tetris game for mbed. Please see detail here http://developer.mbed.org/users/sucrelv/notebook/tetris-game-on-mbed
Dependencies: 4DGL-uLCD-SE PinDetect SDFileSystem mbed-rtos mbed wave_player
Diff: Game.h
- Revision:
- 0:3b5e97ab5884
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Game.h Tue Oct 21 15:10:36 2014 +0000 @@ -0,0 +1,56 @@ +#ifndef _GAME_ +#define _GAME_ + +// ------ Includes ----- + +#include "Board.h" +#include "Pieces.h" +#include "uLCD_4DGL.h" + +// ------ Defines ----- + +#define WAIT_TIME 500 // Number of milliseconds that the piece remains before going 1 block down */ + + +// -------------------------------------------------------------------------------- +// Game +// -------------------------------------------------------------------------------- + +class Game +{ +public: + + Game (Board *pBoard, Pieces *pPieces, int pScreenHeight, uLCD_4DGL *uLCD,int,int,int,int); + + void DrawScene (); + void CreateNewPiece (int,int); + void ErasePiece(int x,int y,int piece, int rotation); + void DrawBoard (); + void AddPoints(int); + void AddClearedLines(int); + int GetPoints(); + int GetClearedLines(); + + int mPosX, mPosY; // Position of the piece that is falling down + int mPiece, mRotation; // Kind and rotation the piece that is falling down + int points; + int clearedLineCount; + + +private: + + int mScreenHeight; // Screen height in pixels + int mNextPosX, mNextPosY; // Position of the next piece + int mNextPiece, mNextRotation; // Kind and rotation of the next piece + + Board *mBoard; + Pieces *mPieces; + uLCD_4DGL *uLCD; + + + void InitGame(int,int,int,int); + void DrawPiece (int pX, int pY, int pPiece, int pRotation, int colorIndex); + +}; + +#endif // _GAME_