Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Game/Game.cpp
- Committer:
- joshdavy
- Date:
- 2019-04-24
- Revision:
- 9:96969b1c6bde
- Parent:
- 8:21b6d4dbce44
- Child:
- 10:58cf89dd878c
File content as of revision 9:96969b1c6bde:
#include "Game.h" // Objects Game::Game() { } void Game::load_level(int level_number) { LevelDefinition level_def; switch(level_number) { case 1 : level_def = level_1; break; case 2: level_def = level_2; break; case 3: level_def = level_3; break; case 4: level_def = level_4; break; case 5: level_def = level_5; break; case 6: level_def = level_6; break; case 7: level_def = level_7; break; case 8: _game_won = true; return; } _player.init(6,6,level_def.initial_pos); _level.init(level_def.blocks, level_def.number_of_blocks, level_def.goal); for (int i = 0; i < level_def.number_of_moving_blocks; i++) { MovingBlockDefinition x = level_def.moving_blocks[i]; _level.declare_moving_block(x.index,x.extending,x.distance); } } void Game::init() { load_level(1); _current_level = 1; _game_won = false; } Game::~Game() { } void Game::update(Gamepad &pad) { _player.update(pad, _level.get_blocks(),_level.get_number_of_blocks()); _level.update_moving_blocks(); if (_player.check_goal_reached(_level.get_goal())) { _current_level += 1; load_level(_current_level); } } void Game::draw(N5110 &lcd) { lcd.clear(); _level.render(lcd); _player.render(lcd); lcd.refresh(); } bool Game::game_won() { return _game_won; }