Daniel Nguyen
Dependencies: 4DGL-uLCD-SE mbed
AlienJun.cpp
- Committer:
- dnguyen314
- Date:
- 2017-11-02
- Revision:
- 0:7d7f6032c719
File content as of revision 0:7d7f6032c719:
#include "AlienJun.h" #define ALIEN_HEIGHT 8 #define ALIEN_WIDTH 11 #define _ 0x000000 //BLACK #define X 0xFFFFFF //WHITE #include "uLCD_4DGL.h" #include <iostream> using namespace std; int alienJunDown_sprite[ALIEN_HEIGHT * ALIEN_WIDTH] = { _,_,X,_,_,_,_,_,X,_,_, _,_,_,X,_,_,_,X,_,_,_, _,_,X,X,X,X,X,X,X,_,_, _,X,X,_,X,X,X,_,X,X,_, X,X,X,X,_,_,_,X,X,X,X, _,X,X,_,_,_,_,_,X,X,_, _,_,X,_,_,_,_,_,X,_,_, _,_,_,X,X,_,X,X,_,_,_, }; int alienJunUp_sprite[ALIEN_HEIGHT * ALIEN_WIDTH] = { _,_,X,_,_,_,_,_,X,_,_, _,_,_,X,_,_,_,X,_,_,_, _,_,X,X,X,X,X,X,X,_,_, X,X,X,_,X,X,X,_,X,X,X, X,X,X,X,_,X,_,X,X,X,X, _,_,X,X,X,X,X,X,X,_,_, X,_,X,_,_,X,_,_,X,_,X, _,_,_,X,X,_,X,X,_,_,_, }; AlienJun::AlienJun(int x, int y) { change = 0; pos_x = x; pos_y = y; speed = 6; } AlienJun::~AlienJun() { } void AlienJun::draw() { // Draw is called everytime the alien moves, so every time it moves // the sprite changes if(change) { uLCD.BLIT(pos_x, pos_y, ALIEN_WIDTH, ALIEN_HEIGHT, alienJunDown_sprite); change = 0; } else { uLCD.BLIT(pos_x, pos_y, ALIEN_WIDTH, ALIEN_HEIGHT, alienJunUp_sprite); change = 1; } } void AlienJun::update() { if (move) { uLCD.filled_rectangle(pos_x, pos_y, pos_x + ALIEN_WIDTH, pos_y + ALIEN_HEIGHT, BLACK); if (moveLeft == 0) { pos_x += speed; if (pos_x > 110) { moveLeft = 1; } } else if (moveLeft == 1) { pos_x -= speed; if (pos_x < 10) { moveLeft = 0; } } draw(); } else { uLCD.filled_rectangle(pos_x, pos_y, pos_x + ALIEN_WIDTH, pos_y + ALIEN_HEIGHT, BLACK); } }