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
Sprites/Sprites.h
- Committer:
- el17arm
- Date:
- 2019-04-11
- Revision:
- 34:c5a042973e0c
- Parent:
- 33:023f57d52b1c
- Child:
- 35:b7a0f0b363d0
- Child:
- 36:203ec93b4cc7
File content as of revision 34:c5a042973e0c:
#ifndef SPRITES_H #define SPRITES_H #include "mbed.h" #include "N5110.h" #include "Gamepad.h" const int miner_right[24] = { 1,1,1, 1,1,0, 1,1,1, 0,1,0, 1,1,1, 1,1,1, 0,1,0, 0,1,1, }; const int miner_left[24] = { 1,1,1, 0,1,1, 1,1,1, 0,1,0, 1,1,1, 1,1,1, 0,1,0, 1,1,0, }; const int enemy[15] = { 1,1,1, 1,0,1, 1,1,1, 0,1,0, 1,1,1, }; const int key[12] = { 1,1,0,0, 1,0,1,1, 1,1,0,1, }; const int key_collected[12] = { 0,0,0,0, 0,0,0,0, 0,0,0,0, }; const int spike[9] = { 1,0,1, 0,1,0, 1,0,1, }; const int solid_block[18] = { 1,1,1,1,1,1, 1,0,1,1,0,1, 1,1,1,1,1,1, }; const int door[30] = { 1,1,1,1,1, 1,0,1,0,1, 1,1,0,1,1, 1,0,1,0,1, 1,1,0,1,1, 1,0,1,0,1, }; struct enemies { bool eflag[5]; double ex[5]; double ey[5]; int counter[5]; int distance[5]; }; struct keyed { bool key[5]; double kx[5]; double ky[5]; }; struct trap_str { bool trap[5]; double tx[5]; double ty[5]; }; class Sprites { public: Sprites(); ~Sprites(); void miner_init(int x, int y); void miner_move(Direction d, N5110 &lcd); void miner_draw(N5110 &lcd); void miner_gravity(N5110 &lcd); void miner_jump(N5110 &lcd, Gamepad &pad); void miner_land(N5110 &lcd); void enemy_init(int i, int x, int y, int d); void enemy_move(int i, double v, N5110 &lcd); bool enemy_collision(int i); void key_collect(int k, int x, int y, N5110 &lcd, Gamepad &pad); int keys_collected(); bool exit_level(int x, int y, N5110 &lcd); bool trap(int t, int x, int y, N5110 &lcd); void blocks(int b, int x, int y, N5110 &lcd); void soft_blocks(int x, int y, N5110 &lcd); Vector2D get_pos(); private: int _direction; int _gravity; bool _jump; int _y; int _x; bool _j_flag; int _j_counter; bool block[5]; double bx[5]; double by[5]; keyed _k; int _keys; bool _collision; trap_str _trap; enemies _enem; }; #endif