Daniel Nguyen
Dependencies: 4DGL-uLCD-SE mbed
AlienAlice.cpp@0:7d7f6032c719, 2017-11-02 (annotated)
- Committer:
- dnguyen314
- Date:
- Thu Nov 02 19:15:07 2017 +0000
- Revision:
- 0:7d7f6032c719
hi
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dnguyen314 | 0:7d7f6032c719 | 1 | #include "AlienAlice.h" |
dnguyen314 | 0:7d7f6032c719 | 2 | #include "uLCD_4DGL.h" |
dnguyen314 | 0:7d7f6032c719 | 3 | #define ALIEN_HEIGHT 8 |
dnguyen314 | 0:7d7f6032c719 | 4 | #define ALIEN_WIDTH 11 |
dnguyen314 | 0:7d7f6032c719 | 5 | #define _ 0x000000 //BLACK |
dnguyen314 | 0:7d7f6032c719 | 6 | #define X 0xFFFFFF //WHITE |
dnguyen314 | 0:7d7f6032c719 | 7 | #include <iostream> |
dnguyen314 | 0:7d7f6032c719 | 8 | |
dnguyen314 | 0:7d7f6032c719 | 9 | using namespace std; |
dnguyen314 | 0:7d7f6032c719 | 10 | |
dnguyen314 | 0:7d7f6032c719 | 11 | int alienAlice_sprite[ALIEN_HEIGHT * ALIEN_WIDTH] = |
dnguyen314 | 0:7d7f6032c719 | 12 | { |
dnguyen314 | 0:7d7f6032c719 | 13 | _,_,_,_,X,X,X,_,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 14 | _,X,X,X,X,X,X,X,X,X,_, |
dnguyen314 | 0:7d7f6032c719 | 15 | X,X,X,X,X,X,X,X,X,X,X, |
dnguyen314 | 0:7d7f6032c719 | 16 | X,X,X,_,_,X,_,_,X,X,X, |
dnguyen314 | 0:7d7f6032c719 | 17 | X,X,X,X,X,X,X,X,X,X,X, |
dnguyen314 | 0:7d7f6032c719 | 18 | _,_,_,X,X,_,X,X,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 19 | _,_,X,X,_,_,_,X,X,_,_, |
dnguyen314 | 0:7d7f6032c719 | 20 | X,X,_,_,_,X,_,_,_,X,X, |
dnguyen314 | 0:7d7f6032c719 | 21 | }; |
dnguyen314 | 0:7d7f6032c719 | 22 | |
dnguyen314 | 0:7d7f6032c719 | 23 | |
dnguyen314 | 0:7d7f6032c719 | 24 | |
dnguyen314 | 0:7d7f6032c719 | 25 | AlienAlice::AlienAlice(int x, int y) |
dnguyen314 | 0:7d7f6032c719 | 26 | { |
dnguyen314 | 0:7d7f6032c719 | 27 | pos_x = x; |
dnguyen314 | 0:7d7f6032c719 | 28 | pos_y = y; |
dnguyen314 | 0:7d7f6032c719 | 29 | speed = 6; |
dnguyen314 | 0:7d7f6032c719 | 30 | } |
dnguyen314 | 0:7d7f6032c719 | 31 | |
dnguyen314 | 0:7d7f6032c719 | 32 | AlienAlice::~AlienAlice() |
dnguyen314 | 0:7d7f6032c719 | 33 | { |
dnguyen314 | 0:7d7f6032c719 | 34 | |
dnguyen314 | 0:7d7f6032c719 | 35 | } |
dnguyen314 | 0:7d7f6032c719 | 36 | |
dnguyen314 | 0:7d7f6032c719 | 37 | void AlienAlice::draw() |
dnguyen314 | 0:7d7f6032c719 | 38 | { |
dnguyen314 | 0:7d7f6032c719 | 39 | uLCD.BLIT(pos_x, pos_y, ALIEN_WIDTH, ALIEN_HEIGHT, alienAlice_sprite); |
dnguyen314 | 0:7d7f6032c719 | 40 | } |
dnguyen314 | 0:7d7f6032c719 | 41 | |
dnguyen314 | 0:7d7f6032c719 | 42 | void AlienAlice::update() |
dnguyen314 | 0:7d7f6032c719 | 43 | { |
dnguyen314 | 0:7d7f6032c719 | 44 | if (move) |
dnguyen314 | 0:7d7f6032c719 | 45 | { |
dnguyen314 | 0:7d7f6032c719 | 46 | uLCD.filled_rectangle(pos_x, pos_y, pos_x + ALIEN_WIDTH, pos_y + ALIEN_HEIGHT, BLACK); |
dnguyen314 | 0:7d7f6032c719 | 47 | if (moveLeft == 0) |
dnguyen314 | 0:7d7f6032c719 | 48 | { |
dnguyen314 | 0:7d7f6032c719 | 49 | pos_x += speed; |
dnguyen314 | 0:7d7f6032c719 | 50 | if (pos_x > 110) |
dnguyen314 | 0:7d7f6032c719 | 51 | { |
dnguyen314 | 0:7d7f6032c719 | 52 | moveLeft = 1; |
dnguyen314 | 0:7d7f6032c719 | 53 | } |
dnguyen314 | 0:7d7f6032c719 | 54 | } |
dnguyen314 | 0:7d7f6032c719 | 55 | else if (moveLeft == 1) |
dnguyen314 | 0:7d7f6032c719 | 56 | { |
dnguyen314 | 0:7d7f6032c719 | 57 | pos_x -= speed; |
dnguyen314 | 0:7d7f6032c719 | 58 | if (pos_x < 10) |
dnguyen314 | 0:7d7f6032c719 | 59 | { |
dnguyen314 | 0:7d7f6032c719 | 60 | moveLeft = 0; |
dnguyen314 | 0:7d7f6032c719 | 61 | } |
dnguyen314 | 0:7d7f6032c719 | 62 | } |
dnguyen314 | 0:7d7f6032c719 | 63 | draw(); |
dnguyen314 | 0:7d7f6032c719 | 64 | } |
dnguyen314 | 0:7d7f6032c719 | 65 | else |
dnguyen314 | 0:7d7f6032c719 | 66 | { |
dnguyen314 | 0:7d7f6032c719 | 67 | uLCD.filled_rectangle(pos_x, pos_y, pos_x + ALIEN_WIDTH, pos_y + ALIEN_HEIGHT, BLACK); |
dnguyen314 | 0:7d7f6032c719 | 68 | } |
dnguyen314 | 0:7d7f6032c719 | 69 | } |