ELEC2645 (2018/19) / Mbed 2 deprecated fy14lkaa

Dependencies:   mbed

Committer:
fy14lkaa
Date:
Sun May 05 01:27:55 2019 +0000
Revision:
92:8a1b14488ca5
Parent:
91:f9e2ff484014
Child:
96:01434284987f
change folder name of class bullet to Bullet.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fy14lkaa 28:4786e81ce3e3 1 #include "Alien.h"
fy14lkaa 28:4786e81ce3e3 2
fy14lkaa 28:4786e81ce3e3 3
fy14lkaa 28:4786e81ce3e3 4 Alien::Alien()
fy14lkaa 28:4786e81ce3e3 5 {
fy14lkaa 28:4786e81ce3e3 6
fy14lkaa 28:4786e81ce3e3 7 }
fy14lkaa 28:4786e81ce3e3 8
fy14lkaa 28:4786e81ce3e3 9 Alien::~Alien()
fy14lkaa 28:4786e81ce3e3 10 {
fy14lkaa 28:4786e81ce3e3 11
fy14lkaa 28:4786e81ce3e3 12 }
fy14lkaa 28:4786e81ce3e3 13
fy14lkaa 91:f9e2ff484014 14
fy14lkaa 92:8a1b14488ca5 15 int Alien_sprite[12][10] = {
fy14lkaa 91:f9e2ff484014 16 { 0,0,0,0,0,1,1,1,0,0 },
fy14lkaa 91:f9e2ff484014 17 { 0,0,0,0,0,1,1,1,0,0 },
fy14lkaa 91:f9e2ff484014 18 { 0,0,0,1,1,1,1,0,0,0 },
fy14lkaa 91:f9e2ff484014 19 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 20 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 21 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 22 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 23 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 24 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 25 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 26 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 27 { 0,0,1,1,1,1,0,1,0,0 },
fy14lkaa 91:f9e2ff484014 28
fy14lkaa 91:f9e2ff484014 29 };
fy14lkaa 91:f9e2ff484014 30
fy14lkaa 91:f9e2ff484014 31
fy14lkaa 91:f9e2ff484014 32
fy14lkaa 91:f9e2ff484014 33
fy14lkaa 28:4786e81ce3e3 34 void Alien::init(int size,int speed)
fy14lkaa 28:4786e81ce3e3 35 {
fy14lkaa 92:8a1b14488ca5 36
fy14lkaa 28:4786e81ce3e3 37 _size = size;
fy14lkaa 92:8a1b14488ca5 38
fy14lkaa 92:8a1b14488ca5 39
fy14lkaa 92:8a1b14488ca5 40
fy14lkaa 92:8a1b14488ca5 41
fy14lkaa 92:8a1b14488ca5 42
fy14lkaa 28:4786e81ce3e3 43 srand(time(NULL));
fy14lkaa 92:8a1b14488ca5 44 int direction = rand() % 8; // randomise initial direction.
fy14lkaa 28:4786e81ce3e3 45
fy14lkaa 28:4786e81ce3e3 46 // 4 possibilities. Get random modulo and set velocities accordingly
fy14lkaa 28:4786e81ce3e3 47 if (direction == 0) {
fy14lkaa 28:4786e81ce3e3 48 _velocity.x = speed;
fy14lkaa 28:4786e81ce3e3 49 _velocity.y = speed;
fy14lkaa 28:4786e81ce3e3 50 } else if (direction == 1) {
fy14lkaa 28:4786e81ce3e3 51 _velocity.x = speed;
fy14lkaa 28:4786e81ce3e3 52 _velocity.y = -speed;
fy14lkaa 28:4786e81ce3e3 53 } else if (direction == 2) {
fy14lkaa 28:4786e81ce3e3 54 _velocity.x = speed;
fy14lkaa 28:4786e81ce3e3 55 _velocity.y = speed;
fy14lkaa 28:4786e81ce3e3 56 } else {
fy14lkaa 28:4786e81ce3e3 57 _velocity.x = -speed;
fy14lkaa 28:4786e81ce3e3 58 _velocity.y = -speed;
fy14lkaa 28:4786e81ce3e3 59 }
fy14lkaa 28:4786e81ce3e3 60 }
fy14lkaa 92:8a1b14488ca5 61
fy14lkaa 92:8a1b14488ca5 62
fy14lkaa 92:8a1b14488ca5 63
fy14lkaa 92:8a1b14488ca5 64 void Alien::draw(N5110&lcd)
fy14lkaa 28:4786e81ce3e3 65 {
fy14lkaa 92:8a1b14488ca5 66 lcd.drawSprite(x_Alien,y_Alien,12,10,(int *)Alien_sprite);
fy14lkaa 91:f9e2ff484014 67
fy14lkaa 28:4786e81ce3e3 68 }
fy14lkaa 92:8a1b14488ca5 69
fy14lkaa 92:8a1b14488ca5 70 void Alien::update()
fy14lkaa 28:4786e81ce3e3 71 {
fy14lkaa 28:4786e81ce3e3 72 _x += _velocity.x;
fy14lkaa 28:4786e81ce3e3 73 _y += _velocity.y;
fy14lkaa 92:8a1b14488ca5 74 }
fy14lkaa 92:8a1b14488ca5 75
fy14lkaa 92:8a1b14488ca5 76 void Alien::set_velocity(Vector2D v)
fy14lkaa 28:4786e81ce3e3 77 {
fy14lkaa 28:4786e81ce3e3 78 _velocity.x = v.x;
fy14lkaa 28:4786e81ce3e3 79 _velocity.y = v.y;
fy14lkaa 28:4786e81ce3e3 80 }
fy14lkaa 28:4786e81ce3e3 81
fy14lkaa 28:4786e81ce3e3 82 Vector2D Alien::get_velocity()
fy14lkaa 28:4786e81ce3e3 83 {
fy14lkaa 28:4786e81ce3e3 84 Vector2D v = {_velocity.x,_velocity.y};
fy14lkaa 28:4786e81ce3e3 85 return v;
fy14lkaa 28:4786e81ce3e3 86 }
fy14lkaa 28:4786e81ce3e3 87
fy14lkaa 28:4786e81ce3e3 88 Vector2D Alien::get_pos()
fy14lkaa 28:4786e81ce3e3 89 {
fy14lkaa 28:4786e81ce3e3 90 Vector2D p = {_x,_y};
fy14lkaa 28:4786e81ce3e3 91 return p;
fy14lkaa 28:4786e81ce3e3 92 }