ELEC2645 (2018/19) / Mbed 2 deprecated el17arm

Dependencies:   mbed

Committer:
el17arm
Date:
Wed Apr 10 17:56:13 2019 +0000
Revision:
33:023f57d52b1c
Child:
34:c5a042973e0c
Miner class changed name to Sprites as more appropriate

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el17arm 33:023f57d52b1c 1 #ifndef SPRITES_H
el17arm 33:023f57d52b1c 2 #define SPRITES_H
el17arm 33:023f57d52b1c 3
el17arm 33:023f57d52b1c 4 #include "mbed.h"
el17arm 33:023f57d52b1c 5 #include "N5110.h"
el17arm 33:023f57d52b1c 6 #include "Gamepad.h"
el17arm 33:023f57d52b1c 7
el17arm 33:023f57d52b1c 8 const int miner_right[24] = {
el17arm 33:023f57d52b1c 9 1,1,1,
el17arm 33:023f57d52b1c 10 1,1,0,
el17arm 33:023f57d52b1c 11 1,1,1,
el17arm 33:023f57d52b1c 12 0,1,0,
el17arm 33:023f57d52b1c 13 1,1,1,
el17arm 33:023f57d52b1c 14 1,1,1,
el17arm 33:023f57d52b1c 15 0,1,0,
el17arm 33:023f57d52b1c 16 0,1,1,
el17arm 33:023f57d52b1c 17
el17arm 33:023f57d52b1c 18 };
el17arm 33:023f57d52b1c 19
el17arm 33:023f57d52b1c 20 const int miner_left[24] = {
el17arm 33:023f57d52b1c 21 1,1,1,
el17arm 33:023f57d52b1c 22 0,1,1,
el17arm 33:023f57d52b1c 23 1,1,1,
el17arm 33:023f57d52b1c 24 0,1,0,
el17arm 33:023f57d52b1c 25 1,1,1,
el17arm 33:023f57d52b1c 26 1,1,1,
el17arm 33:023f57d52b1c 27 0,1,0,
el17arm 33:023f57d52b1c 28 1,1,0,
el17arm 33:023f57d52b1c 29 };
el17arm 33:023f57d52b1c 30
el17arm 33:023f57d52b1c 31 const int enemy[15] = {
el17arm 33:023f57d52b1c 32
el17arm 33:023f57d52b1c 33 1,1,1,
el17arm 33:023f57d52b1c 34 1,0,1,
el17arm 33:023f57d52b1c 35 1,1,1,
el17arm 33:023f57d52b1c 36 0,1,0,
el17arm 33:023f57d52b1c 37 1,1,1,
el17arm 33:023f57d52b1c 38 };
el17arm 33:023f57d52b1c 39
el17arm 33:023f57d52b1c 40 const int key[12] = {
el17arm 33:023f57d52b1c 41 1,1,0,0,
el17arm 33:023f57d52b1c 42 1,0,1,1,
el17arm 33:023f57d52b1c 43 1,1,0,1,
el17arm 33:023f57d52b1c 44 };
el17arm 33:023f57d52b1c 45
el17arm 33:023f57d52b1c 46 const int key_collected[12] = {
el17arm 33:023f57d52b1c 47
el17arm 33:023f57d52b1c 48 0,0,0,0,
el17arm 33:023f57d52b1c 49 0,0,0,0,
el17arm 33:023f57d52b1c 50 0,0,0,0,
el17arm 33:023f57d52b1c 51 };
el17arm 33:023f57d52b1c 52
el17arm 33:023f57d52b1c 53 const int spike[9] = {
el17arm 33:023f57d52b1c 54
el17arm 33:023f57d52b1c 55 1,1,1,
el17arm 33:023f57d52b1c 56 0,1,0,
el17arm 33:023f57d52b1c 57 1,1,1,
el17arm 33:023f57d52b1c 58 };
el17arm 33:023f57d52b1c 59
el17arm 33:023f57d52b1c 60 const int solid_block[9] = {
el17arm 33:023f57d52b1c 61
el17arm 33:023f57d52b1c 62 1,1,1,
el17arm 33:023f57d52b1c 63 1,0,1,
el17arm 33:023f57d52b1c 64 1,1,1,
el17arm 33:023f57d52b1c 65 };
el17arm 33:023f57d52b1c 66
el17arm 33:023f57d52b1c 67 const int door[30] = {
el17arm 33:023f57d52b1c 68
el17arm 33:023f57d52b1c 69 1,1,1,1,1,
el17arm 33:023f57d52b1c 70 1,0,1,0,1,
el17arm 33:023f57d52b1c 71 1,1,0,1,1,
el17arm 33:023f57d52b1c 72 1,0,1,0,1,
el17arm 33:023f57d52b1c 73 1,1,0,1,1,
el17arm 33:023f57d52b1c 74 1,0,1,0,1,
el17arm 33:023f57d52b1c 75 };
el17arm 33:023f57d52b1c 76
el17arm 33:023f57d52b1c 77 struct enemies {
el17arm 33:023f57d52b1c 78 bool eflag[5];
el17arm 33:023f57d52b1c 79 double ex[5];
el17arm 33:023f57d52b1c 80 double ey[5];
el17arm 33:023f57d52b1c 81 int counter[5];
el17arm 33:023f57d52b1c 82 int distance[5];
el17arm 33:023f57d52b1c 83 };
el17arm 33:023f57d52b1c 84
el17arm 33:023f57d52b1c 85 struct Key{
el17arm 33:023f57d52b1c 86 bool key[5];
el17arm 33:023f57d52b1c 87 };
el17arm 33:023f57d52b1c 88
el17arm 33:023f57d52b1c 89 class Sprites
el17arm 33:023f57d52b1c 90 {
el17arm 33:023f57d52b1c 91
el17arm 33:023f57d52b1c 92 public:
el17arm 33:023f57d52b1c 93
el17arm 33:023f57d52b1c 94 Sprites();
el17arm 33:023f57d52b1c 95 ~Sprites();
el17arm 33:023f57d52b1c 96
el17arm 33:023f57d52b1c 97 void miner_init(int x, int y);
el17arm 33:023f57d52b1c 98 void miner_move(Direction d, N5110 &lcd);
el17arm 33:023f57d52b1c 99 void miner_draw(N5110 &lcd);
el17arm 33:023f57d52b1c 100 void miner_gravity(N5110 &lcd);
el17arm 33:023f57d52b1c 101 void miner_jump(N5110 &lcd, Gamepad &pad);
el17arm 33:023f57d52b1c 102 void miner_land(N5110 &lcd);
el17arm 33:023f57d52b1c 103
el17arm 33:023f57d52b1c 104 void enemy_init(int i, int x, int y, int d);
el17arm 33:023f57d52b1c 105 void enemy_move(int i, double v, N5110 &lcd);
el17arm 33:023f57d52b1c 106 bool enemy_collision(int i);
el17arm 33:023f57d52b1c 107
el17arm 33:023f57d52b1c 108 void key_collect(int k, int x, int y, N5110 &lcd, Gamepad &pad);
el17arm 33:023f57d52b1c 109 int keys_collected();
el17arm 33:023f57d52b1c 110
el17arm 33:023f57d52b1c 111 bool exit_level(int x, int y, N5110 &lcd);
el17arm 33:023f57d52b1c 112
el17arm 33:023f57d52b1c 113 bool trap(int x, int y, N5110 &lcd);
el17arm 33:023f57d52b1c 114 void draw_solid_block(int x, int y, N5110 &lcd);
el17arm 33:023f57d52b1c 115 void soft_blocks(int x, int y, N5110 &lcd);
el17arm 33:023f57d52b1c 116
el17arm 33:023f57d52b1c 117 Vector2D get_pos();
el17arm 33:023f57d52b1c 118
el17arm 33:023f57d52b1c 119 private:
el17arm 33:023f57d52b1c 120
el17arm 33:023f57d52b1c 121 int _direction;
el17arm 33:023f57d52b1c 122 int _gravity;
el17arm 33:023f57d52b1c 123 bool _jump;
el17arm 33:023f57d52b1c 124 int _y;
el17arm 33:023f57d52b1c 125 int _x;
el17arm 33:023f57d52b1c 126 bool _j_flag;
el17arm 33:023f57d52b1c 127 int _j_counter;
el17arm 33:023f57d52b1c 128
el17arm 33:023f57d52b1c 129 Key _k;
el17arm 33:023f57d52b1c 130 int _keys;
el17arm 33:023f57d52b1c 131
el17arm 33:023f57d52b1c 132 enemies _enem;
el17arm 33:023f57d52b1c 133
el17arm 33:023f57d52b1c 134 };
el17arm 33:023f57d52b1c 135 #endif