Daniel Nguyen

Dependencies:   4DGL-uLCD-SE mbed

Committer:
dnguyen314
Date:
Thu Nov 02 19:15:07 2017 +0000
Revision:
0:7d7f6032c719
hi

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dnguyen314 0:7d7f6032c719 1 #include "AlienBob.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 int alienBobDown_sprite[ALIEN_HEIGHT * ALIEN_WIDTH] = {
dnguyen314 0:7d7f6032c719 10 _,_,X,_,_,_,_,_,X,_,_,
dnguyen314 0:7d7f6032c719 11 _,_,_,X,_,_,_,X,_,_,_,
dnguyen314 0:7d7f6032c719 12 _,_,X,X,X,X,X,X,X,_,_,
dnguyen314 0:7d7f6032c719 13 _,X,X,_,X,X,X,_,X,X,_,
dnguyen314 0:7d7f6032c719 14 X,X,X,X,X,X,X,X,X,X,X,
dnguyen314 0:7d7f6032c719 15 X,_,X,X,X,X,X,X,X,_,X,
dnguyen314 0:7d7f6032c719 16 X,_,X,_,_,_,_,_,X,_,X,
dnguyen314 0:7d7f6032c719 17 _,_,_,X,X,_,X,X,_,_,_,
dnguyen314 0:7d7f6032c719 18 };
dnguyen314 0:7d7f6032c719 19
dnguyen314 0:7d7f6032c719 20 int alienBobUp_sprite[ALIEN_HEIGHT * ALIEN_WIDTH] = {
dnguyen314 0:7d7f6032c719 21 _,_,X,_,_,_,_,_,X,_,_,
dnguyen314 0:7d7f6032c719 22 X,_,_,X,_,_,_,X,_,_,X,
dnguyen314 0:7d7f6032c719 23 X,_,X,X,X,X,X,X,X,_,X,
dnguyen314 0:7d7f6032c719 24 X,X,X,_,X,X,X,_,X,X,X,
dnguyen314 0:7d7f6032c719 25 X,X,X,X,X,X,X,X,X,X,X,
dnguyen314 0:7d7f6032c719 26 _,_,X,X,X,X,X,X,X,_,_,
dnguyen314 0:7d7f6032c719 27 _,_,X,_,_,_,_,_,X,_,_,
dnguyen314 0:7d7f6032c719 28 _,X,_,_,_,_,_,_,_,X,_,
dnguyen314 0:7d7f6032c719 29 };
dnguyen314 0:7d7f6032c719 30
dnguyen314 0:7d7f6032c719 31
dnguyen314 0:7d7f6032c719 32 AlienBob::AlienBob(int x, int y)
dnguyen314 0:7d7f6032c719 33 {
dnguyen314 0:7d7f6032c719 34 change = 0;
dnguyen314 0:7d7f6032c719 35 pos_x = x;
dnguyen314 0:7d7f6032c719 36 pos_y = y;
dnguyen314 0:7d7f6032c719 37 }
dnguyen314 0:7d7f6032c719 38
dnguyen314 0:7d7f6032c719 39 AlienBob::~AlienBob()
dnguyen314 0:7d7f6032c719 40 {
dnguyen314 0:7d7f6032c719 41
dnguyen314 0:7d7f6032c719 42 }
dnguyen314 0:7d7f6032c719 43
dnguyen314 0:7d7f6032c719 44 void AlienBob::draw()
dnguyen314 0:7d7f6032c719 45 {
dnguyen314 0:7d7f6032c719 46 if(change)
dnguyen314 0:7d7f6032c719 47 {
dnguyen314 0:7d7f6032c719 48 uLCD.BLIT(pos_x, pos_y, ALIEN_WIDTH, ALIEN_HEIGHT, alienBobDown_sprite);
dnguyen314 0:7d7f6032c719 49 change = 0;
dnguyen314 0:7d7f6032c719 50 }
dnguyen314 0:7d7f6032c719 51 else
dnguyen314 0:7d7f6032c719 52 {
dnguyen314 0:7d7f6032c719 53 uLCD.BLIT(pos_x, pos_y, ALIEN_WIDTH, ALIEN_HEIGHT, alienBobUp_sprite);
dnguyen314 0:7d7f6032c719 54 change = 1;
dnguyen314 0:7d7f6032c719 55 }
dnguyen314 0:7d7f6032c719 56 }
dnguyen314 0:7d7f6032c719 57
dnguyen314 0:7d7f6032c719 58 void AlienBob::update()
dnguyen314 0:7d7f6032c719 59 {
dnguyen314 0:7d7f6032c719 60 if (move)
dnguyen314 0:7d7f6032c719 61 {
dnguyen314 0:7d7f6032c719 62 uLCD.filled_rectangle(pos_x, pos_y, pos_x + ALIEN_WIDTH, pos_y + ALIEN_HEIGHT, BLACK);
dnguyen314 0:7d7f6032c719 63 if (moveLeft == 0)
dnguyen314 0:7d7f6032c719 64 {
dnguyen314 0:7d7f6032c719 65 pos_x += speed;
dnguyen314 0:7d7f6032c719 66 if (pos_x > 110)
dnguyen314 0:7d7f6032c719 67 {
dnguyen314 0:7d7f6032c719 68 moveLeft = 1;
dnguyen314 0:7d7f6032c719 69 }
dnguyen314 0:7d7f6032c719 70 }
dnguyen314 0:7d7f6032c719 71 else if (moveLeft == 1)
dnguyen314 0:7d7f6032c719 72 {
dnguyen314 0:7d7f6032c719 73 pos_x -= speed;
dnguyen314 0:7d7f6032c719 74 if (pos_x < 10)
dnguyen314 0:7d7f6032c719 75 {
dnguyen314 0:7d7f6032c719 76 moveLeft = 0;
dnguyen314 0:7d7f6032c719 77 }
dnguyen314 0:7d7f6032c719 78 }
dnguyen314 0:7d7f6032c719 79 draw();
dnguyen314 0:7d7f6032c719 80 }
dnguyen314 0:7d7f6032c719 81 else
dnguyen314 0:7d7f6032c719 82 {
dnguyen314 0:7d7f6032c719 83 uLCD.filled_rectangle(pos_x, pos_y, pos_x + ALIEN_WIDTH, pos_y + ALIEN_HEIGHT, BLACK);
dnguyen314 0:7d7f6032c719 84 }
dnguyen314 0:7d7f6032c719 85 }
dnguyen314 0:7d7f6032c719 86
dnguyen314 0:7d7f6032c719 87