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:
- 11:61f28e3448d3
- Parent:
- 10:65a6866d418b
- Child:
- 12:adf4ec04ced2
--- a/Minerengine.cpp Wed Mar 27 21:51:11 2019 +0000
+++ b/Minerengine.cpp Thu Mar 28 01:07:49 2019 +0000
@@ -23,24 +23,26 @@
void Minerengine::miner_collision(N5110 &lcd)
{
- _right_collision = lcd.getPixel(_x+3,_y) + lcd.getPixel(_x+3,_y+3) +
+ /*_right_collision = lcd.getPixel(_x+3,_y) + lcd.getPixel(_x+3,_y+3) +
lcd.getPixel(_x+3,_y+5) + lcd.getPixel(_x+3,_y+7);
_left_collision = lcd.getPixel(_x-1,_y) + lcd.getPixel(_x-1,_y+3) +
- lcd.getPixel(_x-1,_y+5) + lcd.getPixel(_x-1,_y+7);
+ lcd.getPixel(_x-1,_y+5) + lcd.getPixel(_x-1,_y+7);*/
_jump = (lcd.getPixel(_x+4,_y+8) || lcd.getPixel(_x-1,_y+8));
_stop_jump = lcd.getPixel(_x,_y-2) || lcd.getPixel(_x+3,_y-2);
+
+ _gravity = !lcd.getPixel(_x, _y + 8) && !lcd.getPixel(_x + 2, _y + 8);
}
void Minerengine::miner_move()
{
- if (_d==E && _right_collision == 0) {
+ if (_d==E && _x < WIDTH-3) {
_x++;
_direction = 1; //chooses right facing sprite
}
- if (_d==W && _left_collision == 0) {
+ if (_d==W && _x > 0) {
_x--;
_direction = 0; //chooses left facing sprite
}
@@ -48,31 +50,11 @@
void Minerengine::miner_jump(N5110 &lcd, Gamepad &pad)
{
- if(_d==3 && pad.check_event(Gamepad::A_PRESSED) && _jump==1) {
- for (int i = 0; i < 6; i++) {
- _y = _y -1;
-
- if(_stop_jump == 1) {
- i = 6;
- }
- }
- }
- if(_d==7 && pad.check_event(Gamepad::A_PRESSED) && _jump == 1) {
- for (int i = 0; i < 6; i++) {
- _y = _y -1;
-
- if(_stop_jump == 1) {
- i = 6;
- }
- }
- }
- if(_d==0 && pad.check_event(Gamepad::A_PRESSED) && _jump == 1) {
- for (int i = 0; i < 6; i++) {
- _y = _y -1;
-
- if(_stop_jump == 1) {
- i = 6;
- }
+ if(pad.check_event(Gamepad::A_PRESSED) && _jump==1) {
+ int i=0;
+ while(i < 8){
+ _y = _y--;
+ i++;
}
}
}
@@ -89,7 +71,7 @@
void Minerengine::miner_gravity(N5110 &lcd)
{
- if(!lcd.getPixel(_x, _y + 8) && !lcd.getPixel(_x + 3, _y + 8)) {
+ if(_gravity == 1) {
_y = _y + 1;
}
}
\ No newline at end of file