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
Minerengine.cpp
- Committer:
- el17arm
- Date:
- 2019-03-28
- Revision:
- 13:3bf02cb26d6d
- Parent:
- 12:adf4ec04ced2
- Child:
- 14:dc3524d11921
File content as of revision 13:3bf02cb26d6d:
#include "Minerengine.h"
int _x;
int _y;
Minerengine::Minerengine()
{
}
Minerengine::~Minerengine()
{
}
void Minerengine::miner_init()
{
_x = 3;
_y = 33;
}
Vector2D Minerengine::get_pos()
{
Vector2D p = {_x,_y};
printf("p.x = %f \n", p.x);
return p;
}
void Minerengine::read_direction(Gamepad &pad)
{
_d = pad.get_direction();
}
void Minerengine::miner_collision(N5110 &lcd)
{
/*_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);*/
_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 && _x < WIDTH-3) {
_x++;
_direction = 1; //chooses right facing sprite
}
if (_d==W && _x > 0) {
_x--;
_direction = 0; //chooses left facing sprite
}
}
void Minerengine::miner_jump(N5110 &lcd, Gamepad &pad)
{
if(pad.check_event(Gamepad::A_PRESSED) && _jump==1) {
int i=0;
while(i < 8){
_y = _y--;
i++;
}
}
}
void Minerengine::miner_draw(N5110 &lcd)
{
if (_direction == 1) {
lcd.drawSprite(_x,_y,8,3,(int *)miner_right);
}
if (_direction == 0) {
lcd.drawSprite(_x,_y,8,3,(int *)miner_left);
}
}
void Minerengine::miner_gravity(N5110 &lcd)
{
if(_gravity == 1) {
_y = _y + 1;
}
}