ELEC2645 (2017/18) / Mbed OS el16ajm

Engine/Engine.cpp

Committer:
Andrew_M
Date:
2018-04-16
Revision:
2:9ca5e1c221c3
Parent:
1:a14415de3ad5
Child:
3:6253a2d374fa

File content as of revision 2:9ca5e1c221c3:

#include "Engine.h"

Engine::Engine()
{

}

Engine::~Engine()
{

}

void Engine::init()     // initialise the game parameters
{
    memset(_grid, 0, sizeof(_grid));    
    
    _solid.init(3,5);
}

void Engine::read_input(Gamepad &pad)
{
    _d = pad.get_direction();
    _mag = pad.get_mag();
}

void Engine::draw(N5110 &lcd)
{
    lcd.drawRect(0,0,48,48,FILL_TRANSPARENT);
    for (int j = 0; j < 22; j++) {
        for (int i = 0; i < 22; i++) {
            if (_grid[i][j] != 0) {
                lcd.drawRect(2 * i + 1,2 * j + 1,2,2,FILL_BLACK);
            }
        }
    }
}

void Engine::update(Gamepad &pad)
{
    memset(_grid, 0, sizeof(_grid)); 
      
     //_grid[3][5] = 1;
     
    int tempX = _solid.getX();
    int tempY = _solid.getY();
    _grid[tempX][tempY] = 1;
}