ELEC2645 (2019/20) / Mbed 2 deprecated ELEC2645_Project_el18jkeo

Dependencies:   mbed

SpaceInvaderEngine/SpaceInvaderEngine.h

Committer:
josh_ohara
Date:
2020-04-01
Revision:
12:be491ab6e742
Parent:
11:c174d84e4866
Child:
14:e88bcf5c0887

File content as of revision 12:be491ab6e742:

#ifndef SPACEINVADERENGINE_H
#define SPACEINVADERENGINE_H

#include "mbed.h"
#include "N5110.h"
#include "Gamepad.h"
#include "BulletS.h"
#include "Ship.h"
#include "Armada.h"
#include <vector>

#define BORDER 2

class SpaceInvaderEngine
{

public:
    SpaceInvaderEngine();
    ~SpaceInvaderEngine();
    void init(int ship_height, int ship_width, int alien_size, int no_aliens, int column_size, int row_size);
    void read_input(Gamepad &pad);
    void update(Gamepad &pad, N5110 &lcd);
    void render(N5110 &lcd);
    void shoot_bullet();
    void SpaceInvaderEngine::get_ship_pos();
    
private:

    Armada A1;
    Ship S1;
    BulletS BS1;
    
    int S1_height;
    int S1_width;
    int A1_size;
    int N;
    int CS;
    int RS;
    
    int A1y;
    int BS1x;
    int BS1y;
    
    
    Direction D;
    float Mag;

    vector<Bullet> BulletS;
    
    
};

#endif