ELEC2645 (2018/19) / Mbed 2 deprecated el17arm

Dependencies:   mbed

Levelengine.h

Committer:
el17arm
Date:
2019-04-02
Revision:
20:78bd235f8caa
Parent:
18:ff0a53dcb862

File content as of revision 20:78bd235f8caa:

#ifndef Levelengine_H
#define Levelengine_H

#include "mbed.h"
#include "N5110.h"
#include "Gamepad.h"

const int solid_block[9] =   {
        1,1,1,
        1,0,1,
        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,1,1,
        0,1,0,
        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,
};


class Levelengine
{
public:

    Levelengine();
    ~Levelengine();
    
    void soft_blocks(int x, int y, N5110 &lcd);
    void draw_solid_block(int x, int y, N5110 &lcd);
    
    void draw_key1(int x, int y, N5110 &lcd);
    void draw_key2(int x, int y, N5110 &lcd);
    void draw_key3(int x, int y, N5110 &lcd);
    void draw_key4(int x, int y, N5110 &lcd);
    void draw_key5(int x, int y, N5110 &lcd);
    int keys_collected();
    
    int spike1(int x, int y, N5110 &lcd);
    int spike2(int x, int y, N5110 &lcd);
    int spike3(int x, int y, N5110 &lcd);
    int spike4(int x, int y, N5110 &lcd);
    
    bool exit(int x, int y, N5110 &lcd);
    

private:

    int _collision;
    bool key_collect1; //ensures loop is only executed once and key does not reappear
    bool key_collect2; 
    bool key_collect3; 
    bool key_collect4; 
    bool key_collect5;
    int _keys;
    
    
};

#endif