ELEC2645 (2018/19) / Mbed 2 deprecated el17arm

Dependencies:   mbed

Committer:
el17arm
Date:
Tue Apr 09 21:03:49 2019 +0000
Revision:
28:a38070a1cdcf
Parent:
27:e73dd64ef334
reorganised differently (unfinished) returning to previous version but may return to this one still

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el17arm 2:725c213b2396 1 #ifndef Levelengine_H
el17arm 2:725c213b2396 2 #define Levelengine_H
el17arm 2:725c213b2396 3
el17arm 2:725c213b2396 4 #include "mbed.h"
el17arm 2:725c213b2396 5 #include "N5110.h"
el17arm 2:725c213b2396 6 #include "Gamepad.h"
el17arm 27:e73dd64ef334 7 #include "Miner.h"
el17arm 2:725c213b2396 8
el17arm 14:dc3524d11921 9 const int solid_block[9] = {
el17arm 26:bce40bf4c9fc 10
el17arm 14:dc3524d11921 11 1,1,1,
el17arm 14:dc3524d11921 12 1,0,1,
el17arm 14:dc3524d11921 13 1,1,1,
el17arm 14:dc3524d11921 14 };
el17arm 16:8384e9a480ef 15
el17arm 16:8384e9a480ef 16 const int key[12] = {
el17arm 16:8384e9a480ef 17 1,1,0,0,
el17arm 16:8384e9a480ef 18 1,0,1,1,
el17arm 16:8384e9a480ef 19 1,1,0,1,
el17arm 16:8384e9a480ef 20 };
el17arm 16:8384e9a480ef 21
el17arm 17:b4079bd0e551 22 const int key_collected[12] = {
el17arm 26:bce40bf4c9fc 23
el17arm 17:b4079bd0e551 24 0,0,0,0,
el17arm 17:b4079bd0e551 25 0,0,0,0,
el17arm 17:b4079bd0e551 26 0,0,0,0,
el17arm 17:b4079bd0e551 27 };
el17arm 18:ff0a53dcb862 28
el17arm 18:ff0a53dcb862 29 const int spike[9] = {
el17arm 18:ff0a53dcb862 30
el17arm 18:ff0a53dcb862 31 1,1,1,
el17arm 18:ff0a53dcb862 32 0,1,0,
el17arm 18:ff0a53dcb862 33 1,1,1,
el17arm 18:ff0a53dcb862 34 };
el17arm 20:78bd235f8caa 35
el17arm 20:78bd235f8caa 36 const int door[30] = {
el17arm 20:78bd235f8caa 37
el17arm 20:78bd235f8caa 38 1,1,1,1,1,
el17arm 20:78bd235f8caa 39 1,0,1,0,1,
el17arm 20:78bd235f8caa 40 1,1,0,1,1,
el17arm 20:78bd235f8caa 41 1,0,1,0,1,
el17arm 20:78bd235f8caa 42 1,1,0,1,1,
el17arm 20:78bd235f8caa 43 1,0,1,0,1,
el17arm 20:78bd235f8caa 44 };
el17arm 17:b4079bd0e551 45
el17arm 24:9c7aca60e374 46 typedef struct {
el17arm 24:9c7aca60e374 47 bool key[5];
el17arm 24:9c7aca60e374 48 } Key;
el17arm 23:1ee8686af747 49
el17arm 2:725c213b2396 50 class Levelengine
el17arm 2:725c213b2396 51 {
el17arm 2:725c213b2396 52 public:
el17arm 2:725c213b2396 53
el17arm 2:725c213b2396 54 Levelengine();
el17arm 2:725c213b2396 55 ~Levelengine();
el17arm 16:8384e9a480ef 56 void soft_blocks(int x, int y, N5110 &lcd);
el17arm 16:8384e9a480ef 57 void draw_solid_block(int x, int y, N5110 &lcd);
el17arm 24:9c7aca60e374 58 void key_collect(int k, int x, int y, N5110 &lcd, Gamepad &pad);
el17arm 17:b4079bd0e551 59 int keys_collected();
el17arm 26:bce40bf4c9fc 60 bool trap(int x, int y, N5110 &lcd);
el17arm 26:bce40bf4c9fc 61 bool exit_level(int x, int y, N5110 &lcd);
el17arm 26:bce40bf4c9fc 62 void enemy_move(int x, int y, N5110 &lcd);
el17arm 12:adf4ec04ced2 63
el17arm 23:1ee8686af747 64 Key _k;
el17arm 2:725c213b2396 65
el17arm 2:725c213b2396 66 private:
el17arm 16:8384e9a480ef 67
el17arm 15:2bda80896a84 68 int _collision;
el17arm 17:b4079bd0e551 69 bool key_collect1; //ensures loop is only executed once and key does not reappear
el17arm 17:b4079bd0e551 70 bool key_collect2;
el17arm 17:b4079bd0e551 71 bool key_collect3;
el17arm 17:b4079bd0e551 72 bool key_collect4;
el17arm 17:b4079bd0e551 73 bool key_collect5;
el17arm 17:b4079bd0e551 74 int _keys;
el17arm 27:e73dd64ef334 75 Miner _miner;
el17arm 27:e73dd64ef334 76 Direction _d;
el17arm 23:1ee8686af747 77
el17arm 18:ff0a53dcb862 78
el17arm 2:725c213b2396 79 };
el17arm 2:725c213b2396 80
el17arm 2:725c213b2396 81 #endif