ELEC2645 (2018/19) / Mbed 2 deprecated el17set_

Dependencies:   mbed

Enemy/Enemy2.cpp

Committer:
S_Tingle
Date:
2019-05-02
Revision:
12:200a1266ceee
Child:
13:c3b550fc2445

File content as of revision 12:200a1266ceee:

#include "Enemy2.h"

Enemy2::Enemy2(){
    x_enem = 67;
    y_enem = 20;
}

Enemy2::~Enemy2(){

}

void Enemy2::init(int x,int y){
    x_enem = x;
    y_enem = y;
}

int Enemy2::get_x_enem() 
{
    return x_enem;
}

int Enemy2::get_y_enem()
{
    return y_enem;
}

void Enemy2::drawSprite(N5110 &lcd){
    lcd.drawSprite(x_enem,y_enem,7,7,(int *)enemy_B);
}

void Enemy2::movement(N5110 &lcd){
    accel = 1;

    if (southCollision(x_enem, y_enem, lcd) == true && northCollision(x_enem, y_enem, lcd) == false){
        y_enem -= accel;
    } else if (northCollision(x_enem, y_enem, lcd) == true && southCollision(x_enem, y_enem, lcd) == false){
        y_enem += accel;
    }
}


bool Enemy2::northCollision(int x, int y, N5110 &lcd){

    for (int i = 0; i < 7; i++) {
        if (lcd.getPixel(x + i,y + 1) == 1) {
            return true;
        }
    }
    return false;
}

bool Enemy2::southCollision(int x, int y, N5110 &lcd){

    for (int i = 0; i < 7; i++) {
        if (lcd.getPixel(x + i,y + 7) == 1) {
            return true;
        }
    }
    return false;
}