Jay Balar / Mbed 2 deprecated 4180_Project_3

Dependencies:   4DGL-uLCD-SE Physac-MBED PinDetect SDFileSystem mbed-rtos mbed

Revision:
19:6d9bee043ede
Parent:
18:cf74968078ea
Child:
20:73e4f12277bd
--- a/Tetris/Game.cpp	Thu Dec 01 01:46:22 2022 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,190 +0,0 @@
-#include "Game.h"
-
-/* 
-======================================                                  
-Init
-====================================== 
-*/
-Game::Game(Board *pBoard, Pieces *pPieces, int pScreenHeight, uLCD_4DGL *pLCD,int initPiece,int initPos,int initNextPiece,int initNextPos) 
-{
-    mScreenHeight = pScreenHeight;
-    
-    // Get the pointer to the Board and Pieces classes
-    mBoard = pBoard;
-    mPieces = pPieces;
-    uLCD = pLCD;
-    // Game initialization
-    InitGame (initPiece,initPos,initNextPiece,initNextPos);
-}
-
-/* 
-======================================                                  
-Initial parameters of the game
-====================================== 
-*/
-void Game::InitGame(int initPiece,int initPos,int initNextPiece,int initNextPos)
-{
-    //points
-    points = 0;
-    clearedLineCount=0;
-
-    // First piece
-    mPiece          = initPiece;
-    mRotation       = initPos;
-    mPosX           = (BOARD_WIDTH / 2) + mPieces->GetXInitialPosition (mPiece, mRotation);
-    mPosY           = mPieces->GetYInitialPosition (mPiece, mRotation);
-
-    //  Next piece
-    mNextPiece      = initNextPiece;
-    mNextRotation   = initNextPos;
-    mNextPosX       = BOARD_WIDTH + 2;
-    mNextPosY       = 2;    
-}
-
-/* 
-======================================                                  
-Create a random piece
-====================================== 
-*/
-void Game::CreateNewPiece(int piece,int pos)
-{
-    // The new piece
-    mPiece          = mNextPiece;
-    mRotation       = mNextRotation;
-    mPosX           = (BOARD_WIDTH / 2) + mPieces->GetXInitialPosition (mPiece, mRotation);
-    mPosY           = mPieces->GetYInitialPosition (mPiece, mRotation);
-
-    // Random next piece
-    mNextPiece      = piece;
-    mNextRotation   = pos;
-}
-
-/* 
-======================================                                  
-Draw piece
-
-Parameters:
-
->> pX:      Horizontal position in blocks
->> pY:      Vertical position in blocks
->> pPiece:  Piece to draw
->> pRotation:   1 of the 4 possible rotations
-====================================== 
-*/
-void Game::DrawPiece (int pX, int pY, int pPiece, int pRotation, int colorIndex)
-{
-    // Obtain the position in pixel in the screen of the block we want to draw
-    int mPixelsX = mBoard->GetXPosInPixels (pX);
-    int mPixelsY = mBoard->GetYPosInPixels (pY);
-    int mColors [7]={16711680, 15955765, 16761893, 45401, 44763, 12462572, 29669};
-    // Travel the matrix of blocks of the piece and draw the blocks that are filled
-    for (int i = 0; i < PIECE_BLOCKS; i++)
-    {
-        for (int j = 0; j < PIECE_BLOCKS; j++)
-        {
-            if (mPieces->GetBlockType (pPiece, pRotation, j, i) != 0)
-                uLCD->filled_rectangle  (mPixelsX + i * BLOCK_SIZE, 
-                                    mPixelsY + j * BLOCK_SIZE, 
-                                    (mPixelsX + i * BLOCK_SIZE) + BLOCK_SIZE - 1, 
-                                    (mPixelsY + j * BLOCK_SIZE) + BLOCK_SIZE - 1, 
-                                    mColors[colorIndex]);
-        }
-    }
-}
-
-/* 
-======================================                                  
-Draw board
-
-Draw the two lines that delimit the board
-====================================== 
-*/
-void Game::DrawBoard ()
-{
-    // Calculate the limits of the board in pixels  
-    int mX1 = BOARD_POSITION - (BLOCK_SIZE * (BOARD_WIDTH / 2)) - 1;
-    int mX2 = BOARD_POSITION + (BLOCK_SIZE * (BOARD_WIDTH / 2));
-    int mY = mScreenHeight - (BLOCK_SIZE * BOARD_HEIGHT);
-    
-    // Check that the vertical margin is not to small
-    //assert (mY > MIN_VERTICAL_MARGIN);
-
-    // Rectangles that delimits the board
-    uLCD->filled_rectangle (mX1 - BOARD_LINE_WIDTH, mY, mX1, mScreenHeight - 1, BLUE);
-    uLCD->filled_rectangle (mX2, mY, mX2 + BOARD_LINE_WIDTH, mScreenHeight - 1, BLUE);
-    
-    // Check that the horizontal margin is not to small
-    //assert (mX1 > MIN_HORIZONTAL_MARGIN);
-
-    // Drawing the blocks that are already stored in the board
-    mX1 += 1;
-    for (int i = 0; i < BOARD_WIDTH; i++)
-    {
-        for (int j = 0; j < BOARD_HEIGHT; j++)
-        {   
-            // Check if the block is filled, if so, draw it
-            if (!mBoard->IsFreeBlock(i, j)) 
-                uLCD->filled_rectangle (    mX1 + i * BLOCK_SIZE, 
-                                        mY + j * BLOCK_SIZE, 
-                                        (mX1 + i * BLOCK_SIZE) + BLOCK_SIZE - 1, 
-                                        (mY + j * BLOCK_SIZE) + BLOCK_SIZE - 1, 
-                                        10066329);
-        }
-    }   
-}
-
-/* 
-======================================                                  
-Draw scene
-
-Draw all the objects of the scene
-====================================== 
-*/
-void Game::DrawScene ()
-{
-    DrawBoard();
-    DrawPiece (mPosX, mPosY, mPiece, mRotation, mPiece);                    // Draw the playing piece
-    DrawPiece (mNextPosX, mNextPosY, mNextPiece, mNextRotation, mNextPiece);    // Draw the next piece
-}
-
-void Game::ErasePiece (int pX, int pY, int pPiece, int pRotation)
-{
-    if(pPiece==-1) return;
-    // Obtain the position in pixel in the screen of the block we want to draw
-    int mPixelsX = mBoard->GetXPosInPixels (pX);
-    int mPixelsY = mBoard->GetYPosInPixels (pY);
-
-    // Travel the matrix of blocks of the piece and draw the blocks that are filled
-    for (int i = 0; i < PIECE_BLOCKS; i++)
-    {
-        for (int j = 0; j < PIECE_BLOCKS; j++)
-        {
-            if (mPieces->GetBlockType (pPiece, pRotation, j, i) != 0)
-                uLCD->filled_rectangle  (mPixelsX + i * BLOCK_SIZE, 
-                                    mPixelsY + j * BLOCK_SIZE, 
-                                    (mPixelsX + i * BLOCK_SIZE) + BLOCK_SIZE - 1, 
-                                    (mPixelsY + j * BLOCK_SIZE) + BLOCK_SIZE - 1, 
-                                    0);
-        }
-    }
-}
-
-void Game::AddPoints(int newGain)
-{
-    points+=newGain;
-}
-
-void Game::AddClearedLines(int newGain)
-{
-    clearedLineCount+=newGain;
-}
-
-int Game::GetPoints()
-{
-    return points;
-}
-
-int Game::GetClearedLines()
-{
-    return clearedLineCount;
-}
\ No newline at end of file