ELEC2645 (2018/19) / Mbed 2 deprecated el17arm

Dependencies:   mbed

Committer:
el17arm
Date:
Mon Apr 01 21:51:08 2019 +0000
Revision:
18:ff0a53dcb862
Parent:
17:b4079bd0e551
Child:
19:4789cb4ca550
Traps added that remove a life from player and return back to start of level

Who changed what in which revision?

UserRevisionLine numberNew 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 18:ff0a53dcb862 15 _lives = 3;
el17arm 15:2bda80896a84 16 }
el17arm 15:2bda80896a84 17
el17arm 15:2bda80896a84 18 void Gameengine::read_direction(Gamepad &pad)
el17arm 15:2bda80896a84 19 {
el17arm 15:2bda80896a84 20 _d = pad.get_direction();
el17arm 15:2bda80896a84 21 }
el17arm 15:2bda80896a84 22
el17arm 15:2bda80896a84 23 void Gameengine::update(N5110 &lcd, Gamepad &pad)
el17arm 14:dc3524d11921 24 {
el17arm 15:2bda80896a84 25 _miner.miner_move(_d);
el17arm 15:2bda80896a84 26 _miner.miner_gravity(lcd);
el17arm 15:2bda80896a84 27 _miner.miner_jump(lcd, pad);
el17arm 15:2bda80896a84 28 _miner.miner_land(lcd);
el17arm 18:ff0a53dcb862 29 lose_life(lcd);
el17arm 15:2bda80896a84 30 }
el17arm 15:2bda80896a84 31
el17arm 15:2bda80896a84 32 void Gameengine::draw(N5110 &lcd)
el17arm 15:2bda80896a84 33 {
el17arm 18:ff0a53dcb862 34 if (_level_select == 1) {
el17arm 15:2bda80896a84 35 _miner.miner_draw(lcd);
el17arm 18:ff0a53dcb862 36 _l1.level_platforms(lcd);
el17arm 18:ff0a53dcb862 37 _l1.soft_blocks(lcd);
el17arm 18:ff0a53dcb862 38 _l1.solid_blocks(lcd);
el17arm 18:ff0a53dcb862 39 _l1.keys(lcd);
el17arm 18:ff0a53dcb862 40 _l1.keys_collected();
el17arm 18:ff0a53dcb862 41 _l1.spikes(lcd);
el17arm 15:2bda80896a84 42 }
el17arm 15:2bda80896a84 43 }
el17arm 18:ff0a53dcb862 44
el17arm 18:ff0a53dcb862 45 void Gameengine::lose_life(N5110 &lcd)
el17arm 18:ff0a53dcb862 46 {
el17arm 18:ff0a53dcb862 47
el17arm 18:ff0a53dcb862 48 if (_l1.spikes(lcd) == 1) {
el17arm 18:ff0a53dcb862 49 _lives--;
el17arm 18:ff0a53dcb862 50 printf("lives = %i", _lives);
el17arm 18:ff0a53dcb862 51 _miner.miner_init(3, 33);
el17arm 18:ff0a53dcb862 52 wait(0.5);
el17arm 18:ff0a53dcb862 53 }
el17arm 18:ff0a53dcb862 54 printf("lives = %i", _lives);
el17arm 18:ff0a53dcb862 55 }