#ifndef MINERENGINE_H
#define MINERENGINE_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,
    };


class Minerengine
{

public:
    
    Minerengine();
    ~Minerengine();
    void read_direction(Gamepad &pad);
    void miner_move();
    void miner_draw(N5110 &lcd);
    void miner_gravity(N5110 &lcd);
    void miner_jump(N5110 &lcd, Gamepad &pad);
    void miner_init();
    void miner_collision(N5110 &lcd);

private:

    Direction _d;
    int _direction;
    int _jump;
    int _x;
    int _y;
    int _right_collision;
    int _left_collision;
    int _stop_jump;
    int _gravity;
    
};
#endif