Musallam Bseiso / Mbed 2 deprecated nemesis_v1

Dependencies:   Enemy1 Enemy2 Enemy3 Enemy4 Enemy5 Enemy6 Engine Friendly Gamepad N5110 Rocket Stats mbed

main.cpp

Committer:
musallambseiso
Date:
2017-04-01
Revision:
0:f59d874f3f14
Child:
1:572782f723b5

File content as of revision 0:f59d874f3f14:

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

#define FRIENDLY_WIDTH 6
#define FRIENDLY_HEIGHT 6
#define SHIP_SIZE 1
#define SHIP_SPEED 3

struct UserInput {
    Direction d;
    float mag;
};

N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
Gamepad pad;
Engine engine;

void init();
void update_game(UserInput input);
void render();
void generator();

int main()
{
    int fps = 14;

    init();
    render();
    wait(1.0f/fps);  
    
    while (1) {
        engine.read_input(pad);
        engine.update(lcd, pad);
        render();
        generator();
        lcd.refresh();
        wait(1.0f/fps);
    }
}

void init()
{
    lcd.init();
    pad.init();
    engine.init(FRIENDLY_WIDTH,FRIENDLY_HEIGHT,SHIP_SIZE,SHIP_SPEED);
}

void render()
{
    lcd.clear();  
    engine.draw(lcd);     // grid, spaceships
    lcd.refresh();
}

void generator()
{
    engine.ship1_gen(lcd);
    engine.ship2_gen(lcd);
    engine.ship3_gen(lcd);
    engine.ship4_gen(lcd);
    engine.ship5_gen(lcd);
}