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.
Dependencies: mbed
Gameengine.cpp@17:b4079bd0e551, 2019-04-01 (annotated)
- Committer:
- el17arm
- Date:
- Mon Apr 01 14:59:18 2019 +0000
- Revision:
- 17:b4079bd0e551
- Parent:
- 16:8384e9a480ef
- Child:
- 18:ff0a53dcb862
Keys can now be collected and counted
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| el17arm | 14:dc3524d11921 | 1 | #include "Gameengine.h" |
| el17arm | 4:b92da6a09c8b | 2 | |
| el17arm | 14:dc3524d11921 | 3 | Gameengine::Gameengine() |
| el17arm | 4:b92da6a09c8b | 4 | { |
| el17arm | 4:b92da6a09c8b | 5 | } |
| el17arm | 4:b92da6a09c8b | 6 | |
| el17arm | 14:dc3524d11921 | 7 | Gameengine::~Gameengine() |
| el17arm | 4:b92da6a09c8b | 8 | { |
| el17arm | 4:b92da6a09c8b | 9 | } |
| el17arm | 14:dc3524d11921 | 10 | |
| el17arm | 15:2bda80896a84 | 11 | void Gameengine::game_init() |
| el17arm | 15:2bda80896a84 | 12 | { |
| el17arm | 15:2bda80896a84 | 13 | _level_select = 1; |
| el17arm | 15:2bda80896a84 | 14 | _miner.miner_init(3, 33); |
| el17arm | 15:2bda80896a84 | 15 | } |
| el17arm | 15:2bda80896a84 | 16 | |
| el17arm | 15:2bda80896a84 | 17 | void Gameengine::read_direction(Gamepad &pad) |
| el17arm | 15:2bda80896a84 | 18 | { |
| el17arm | 15:2bda80896a84 | 19 | _d = pad.get_direction(); |
| el17arm | 15:2bda80896a84 | 20 | } |
| el17arm | 15:2bda80896a84 | 21 | |
| el17arm | 15:2bda80896a84 | 22 | void Gameengine::update(N5110 &lcd, Gamepad &pad) |
| el17arm | 14:dc3524d11921 | 23 | { |
| el17arm | 15:2bda80896a84 | 24 | _miner.miner_move(_d); |
| el17arm | 15:2bda80896a84 | 25 | _miner.miner_gravity(lcd); |
| el17arm | 15:2bda80896a84 | 26 | _miner.miner_jump(lcd, pad); |
| el17arm | 15:2bda80896a84 | 27 | _miner.miner_land(lcd); |
| el17arm | 16:8384e9a480ef | 28 | |
| el17arm | 16:8384e9a480ef | 29 | |
| el17arm | 15:2bda80896a84 | 30 | } |
| el17arm | 15:2bda80896a84 | 31 | |
| el17arm | 15:2bda80896a84 | 32 | void Gameengine::draw(N5110 &lcd) |
| el17arm | 15:2bda80896a84 | 33 | { |
| el17arm | 15:2bda80896a84 | 34 | if (_level_select == 1){ |
| el17arm | 15:2bda80896a84 | 35 | _miner.miner_draw(lcd); |
| el17arm | 15:2bda80896a84 | 36 | _level.level_one(lcd); |
| el17arm | 16:8384e9a480ef | 37 | _level.soft_blocks(46, 8, lcd); |
| el17arm | 16:8384e9a480ef | 38 | _level.soft_blocks(52, 8, lcd); |
| el17arm | 16:8384e9a480ef | 39 | _level.soft_blocks(55, 36, lcd); |
| el17arm | 16:8384e9a480ef | 40 | _level.soft_blocks(33, 8, lcd); |
| el17arm | 16:8384e9a480ef | 41 | _level.soft_blocks(27, 8, lcd); |
| el17arm | 16:8384e9a480ef | 42 | _level.soft_blocks(59, 36, lcd); |
| el17arm | 16:8384e9a480ef | 43 | _level.draw_solid_block(49,37, lcd); |
| el17arm | 16:8384e9a480ef | 44 | _level.draw_solid_block(52,37, lcd); |
| el17arm | 16:8384e9a480ef | 45 | _level.draw_solid_block(45,22, lcd); |
| el17arm | 16:8384e9a480ef | 46 | _level.draw_solid_block(42,22, lcd); |
| el17arm | 15:2bda80896a84 | 47 | _miner.level_one_collision(lcd); |
| el17arm | 17:b4079bd0e551 | 48 | |
| el17arm | 17:b4079bd0e551 | 49 | //level keys |
| el17arm | 17:b4079bd0e551 | 50 | _level.draw_key1(79, 12, lcd); |
| el17arm | 17:b4079bd0e551 | 51 | _level.draw_key2(25, 0, lcd); |
| el17arm | 17:b4079bd0e551 | 52 | _level.draw_key3(40, 4, lcd); |
| el17arm | 17:b4079bd0e551 | 53 | _level.draw_key4(56, 6, lcd); |
| el17arm | 17:b4079bd0e551 | 54 | _level.draw_key5(75, 0, lcd); |
| el17arm | 17:b4079bd0e551 | 55 | _level.keys_collected(); |
| el17arm | 17:b4079bd0e551 | 56 | |
| el17arm | 17:b4079bd0e551 | 57 | printf("game keys = %i \n ", _level.keys_collected()); |
| el17arm | 16:8384e9a480ef | 58 | |
| el17arm | 15:2bda80896a84 | 59 | } |
| el17arm | 15:2bda80896a84 | 60 | } |
| el17arm | 15:2bda80896a84 | 61 |