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
Diff: Minerengine.cpp
- Revision:
- 6:866281ce2b44
- Parent:
- 4:b92da6a09c8b
- Child:
- 7:c6e6ec0e3396
diff -r b92da6a09c8b -r 866281ce2b44 Minerengine.cpp
--- a/Minerengine.cpp Thu Mar 21 21:29:11 2019 +0000
+++ b/Minerengine.cpp Fri Mar 22 02:00:48 2019 +0000
@@ -19,41 +19,48 @@
void Minerengine::miner_move(N5110 &lcd, Gamepad &pad)
{
-
- if (_d==3 && !lcd.getPixel(_x + 5, _y)) {
+
+ if (_d==3 && !lcd.getPixel(_x + 3, _y+1) && !lcd.getPixel(_x + 3, _y + 3) &&
+ !lcd.getPixel(_x + 3, _y + 5) && !lcd.getPixel(_x + 3, _y + 7)) {
+
_x += 1;
_direction = 1;
}
- if (_d==7 && !lcd.getPixel(_x -1, _y)) {
+ if (_d==7 && !lcd.getPixel(_x - 1, _y+1) && !lcd.getPixel(_x - 1, _y + 3) &&
+ !lcd.getPixel(_x - 1, _y + 5)&& !lcd.getPixel(_x + 3, _y + 7)) {
+
_x = _x - 1;
_direction = 0;
-
}
}
+
void Minerengine::miner_jump(N5110 &lcd, Gamepad &pad)
{
- if(_d==3 && pad.check_event(Gamepad::A_PRESSED)) {
+ if(_d==3 && pad.check_event(Gamepad::A_PRESSED) && lcd.getPixel(_x, _y + 8)) {
for (int i = 0; i < 6; i++) {
_y = _y -1;
- if(lcd.getPixel(_x + 5, _y)) {
+ if(lcd.getPixel(_x, _y) || lcd.getPixel(_x, _y + 7) ||
+ lcd.getPixel(_x + 3, _y + 7)) {
i = 6;
}
}
}
- if(_d==7 && pad.check_event(Gamepad::A_PRESSED)) {
+ if(_d==7 && pad.check_event(Gamepad::A_PRESSED) && lcd.getPixel(_x, _y + 8)) {
for (int i = 0; i < 6; i++) {
_y = _y -1;
-
- if(lcd.getPixel(_x + 5, _y)) {
+
+ if(lcd.getPixel(_x, _y) || lcd.getPixel(_x+2, _y + 7) ||
+ lcd.getPixel(_x, _y + 7)) {
i = 6;
}
}
}
- if(_d==0 && pad.check_event(Gamepad::A_PRESSED)) {
+ if(_d==0 && pad.check_event(Gamepad::A_PRESSED) && lcd.getPixel(_x, _y + 8)) {
for (int i = 0; i < 6; i++) {
_y = _y -1;
- if(lcd.getPixel(_x + 5, _y)) {
+ if(lcd.getPixel(_x, _y) || lcd.getPixel(_x + 2, _y + 7)
+ || lcd.getPixel(_x, _y + 7)) {
i = 6;
}
}
@@ -63,16 +70,16 @@
void Minerengine::miner_draw(N5110 &lcd)
{
if (_direction == 1) {
- lcd.drawSprite(_x,_y,12,5,(int *)miner_right);
+ lcd.drawSprite(_x,_y,8,3,(int *)miner_right);
}
if (_direction == 0) {
- lcd.drawSprite(_x,_y,12,5,(int *)miner_left);
+ lcd.drawSprite(_x,_y,8,3,(int *)miner_left);
}
}
void Minerengine::miner_gravity(N5110 &lcd)
{
- if(!lcd.getPixel(_x, _y + 12)) {
+ if(!lcd.getPixel(_x, _y + 8)) {
_y = _y + 1;
}
-}
\ No newline at end of file
+}