![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Daniel Nguyen
Dependencies: 4DGL-uLCD-SE mbed
AlienMoo.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 "AlienMoo.h" |
dnguyen314 | 0:7d7f6032c719 | 2 | #define ALIEN_HEIGHT 8 |
dnguyen314 | 0:7d7f6032c719 | 3 | #define ALIEN_WIDTH 11 |
dnguyen314 | 0:7d7f6032c719 | 4 | #define _ 0x000000 //BLACK |
dnguyen314 | 0:7d7f6032c719 | 5 | #define X 0xFFFFFF //WHITE |
dnguyen314 | 0:7d7f6032c719 | 6 | #include "uLCD_4DGL.h" |
dnguyen314 | 0:7d7f6032c719 | 7 | #include <iostream> |
dnguyen314 | 0:7d7f6032c719 | 8 | using namespace std; |
dnguyen314 | 0:7d7f6032c719 | 9 | |
dnguyen314 | 0:7d7f6032c719 | 10 | int alienMooDown_sprite[ALIEN_HEIGHT * ALIEN_WIDTH] = { |
dnguyen314 | 0:7d7f6032c719 | 11 | _,_,_,_,_,_,_,_,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 12 | _,_,_,_,X,X,X,_,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 13 | _,_,_,X,_,_,_,X,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 14 | _,_,X,_,_,X,_,_,X,_,_, |
dnguyen314 | 0:7d7f6032c719 | 15 | _,_,X,_,_,_,_,_,X,_,_, |
dnguyen314 | 0:7d7f6032c719 | 16 | _,_,_,X,_,_,_,X,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 17 | _,_,_,_,X,X,X,_,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 18 | _,_,_,_,_,_,_,_,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 19 | }; |
dnguyen314 | 0:7d7f6032c719 | 20 | |
dnguyen314 | 0:7d7f6032c719 | 21 | int alienMooUp_sprite[ALIEN_HEIGHT * ALIEN_WIDTH] = { |
dnguyen314 | 0:7d7f6032c719 | 22 | _,_,_,X,X,X,X,X,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 23 | _,_,X,_,_,_,_,_,X,_,_, |
dnguyen314 | 0:7d7f6032c719 | 24 | _,X,_,_,X,X,X,_,_,X,_, |
dnguyen314 | 0:7d7f6032c719 | 25 | X,_,_,_,X,_,X,_,_,_,X, |
dnguyen314 | 0:7d7f6032c719 | 26 | X,_,_,_,X,X,X,_,_,_,X, |
dnguyen314 | 0:7d7f6032c719 | 27 | _,X,_,_,_,_,_,_,_,X,_, |
dnguyen314 | 0:7d7f6032c719 | 28 | _,_,X,_,_,_,_,_,X,_,_, |
dnguyen314 | 0:7d7f6032c719 | 29 | _,_,_,X,X,X,X,X,_,_,_, |
dnguyen314 | 0:7d7f6032c719 | 30 | }; |
dnguyen314 | 0:7d7f6032c719 | 31 | |
dnguyen314 | 0:7d7f6032c719 | 32 | |
dnguyen314 | 0:7d7f6032c719 | 33 | AlienMoo::AlienMoo(int x, int y) |
dnguyen314 | 0:7d7f6032c719 | 34 | { |
dnguyen314 | 0:7d7f6032c719 | 35 | change = 0; |
dnguyen314 | 0:7d7f6032c719 | 36 | pos_x = x; |
dnguyen314 | 0:7d7f6032c719 | 37 | pos_y = y; |
dnguyen314 | 0:7d7f6032c719 | 38 | speed = 3; |
dnguyen314 | 0:7d7f6032c719 | 39 | } |
dnguyen314 | 0:7d7f6032c719 | 40 | |
dnguyen314 | 0:7d7f6032c719 | 41 | AlienMoo::~AlienMoo() |
dnguyen314 | 0:7d7f6032c719 | 42 | { |
dnguyen314 | 0:7d7f6032c719 | 43 | |
dnguyen314 | 0:7d7f6032c719 | 44 | } |
dnguyen314 | 0:7d7f6032c719 | 45 | |
dnguyen314 | 0:7d7f6032c719 | 46 | void AlienMoo::draw() |
dnguyen314 | 0:7d7f6032c719 | 47 | { |
dnguyen314 | 0:7d7f6032c719 | 48 | if(change) |
dnguyen314 | 0:7d7f6032c719 | 49 | { |
dnguyen314 | 0:7d7f6032c719 | 50 | uLCD.BLIT(pos_x, pos_y, ALIEN_WIDTH, ALIEN_HEIGHT, alienMooDown_sprite); |
dnguyen314 | 0:7d7f6032c719 | 51 | change = 0; |
dnguyen314 | 0:7d7f6032c719 | 52 | } |
dnguyen314 | 0:7d7f6032c719 | 53 | else |
dnguyen314 | 0:7d7f6032c719 | 54 | { |
dnguyen314 | 0:7d7f6032c719 | 55 | uLCD.BLIT(pos_x, pos_y, ALIEN_WIDTH, ALIEN_HEIGHT, alienMooUp_sprite); |
dnguyen314 | 0:7d7f6032c719 | 56 | change = 1; |
dnguyen314 | 0:7d7f6032c719 | 57 | } |
dnguyen314 | 0:7d7f6032c719 | 58 | } |
dnguyen314 | 0:7d7f6032c719 | 59 | |
dnguyen314 | 0:7d7f6032c719 | 60 | void AlienMoo::update() |
dnguyen314 | 0:7d7f6032c719 | 61 | { |
dnguyen314 | 0:7d7f6032c719 | 62 | if (move) |
dnguyen314 | 0:7d7f6032c719 | 63 | { |
dnguyen314 | 0:7d7f6032c719 | 64 | uLCD.filled_rectangle(pos_x, pos_y, pos_x + ALIEN_WIDTH, pos_y + ALIEN_HEIGHT, BLACK); |
dnguyen314 | 0:7d7f6032c719 | 65 | if (moveLeft == 0) |
dnguyen314 | 0:7d7f6032c719 | 66 | { |
dnguyen314 | 0:7d7f6032c719 | 67 | pos_x += speed; |
dnguyen314 | 0:7d7f6032c719 | 68 | if (pos_x > 110) |
dnguyen314 | 0:7d7f6032c719 | 69 | { |
dnguyen314 | 0:7d7f6032c719 | 70 | moveLeft = 1; |
dnguyen314 | 0:7d7f6032c719 | 71 | } |
dnguyen314 | 0:7d7f6032c719 | 72 | } |
dnguyen314 | 0:7d7f6032c719 | 73 | else if (moveLeft == 1) |
dnguyen314 | 0:7d7f6032c719 | 74 | { |
dnguyen314 | 0:7d7f6032c719 | 75 | pos_x -= speed; |
dnguyen314 | 0:7d7f6032c719 | 76 | if (pos_x < 10) |
dnguyen314 | 0:7d7f6032c719 | 77 | { |
dnguyen314 | 0:7d7f6032c719 | 78 | moveLeft = 0; |
dnguyen314 | 0:7d7f6032c719 | 79 | } |
dnguyen314 | 0:7d7f6032c719 | 80 | } |
dnguyen314 | 0:7d7f6032c719 | 81 | draw(); |
dnguyen314 | 0:7d7f6032c719 | 82 | } |
dnguyen314 | 0:7d7f6032c719 | 83 | else |
dnguyen314 | 0:7d7f6032c719 | 84 | { |
dnguyen314 | 0:7d7f6032c719 | 85 | uLCD.filled_rectangle(pos_x, pos_y, pos_x + ALIEN_WIDTH, pos_y + ALIEN_HEIGHT, BLACK); |
dnguyen314 | 0:7d7f6032c719 | 86 | } |
dnguyen314 | 0:7d7f6032c719 | 87 | } |
dnguyen314 | 0:7d7f6032c719 | 88 | |
dnguyen314 | 0:7d7f6032c719 | 89 |