The game is finished

Dependencies:   mbed Gamepad N5110 mbed-rtos

Committer:
RexRoshan
Date:
Thu May 09 14:23:35 2019 +0000
Revision:
14:c7302ffe6eab
Parent:
7:574c66ebd8b0
Final Modification

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RexRoshan 0:99fa5a619081 1 #include "Enemy22.h"
RexRoshan 0:99fa5a619081 2
RexRoshan 0:99fa5a619081 3 // nothing doing in the constructor and destructor
RexRoshan 0:99fa5a619081 4 Enemy22::Enemy22()
RexRoshan 0:99fa5a619081 5 {
RexRoshan 0:99fa5a619081 6
RexRoshan 0:99fa5a619081 7 }
RexRoshan 0:99fa5a619081 8
RexRoshan 0:99fa5a619081 9 Enemy22::~Enemy22()
RexRoshan 0:99fa5a619081 10 {
RexRoshan 0:99fa5a619081 11
RexRoshan 0:99fa5a619081 12 }
RexRoshan 0:99fa5a619081 13
RexRoshan 4:4d673fb2d9dc 14 // sprite of the second enemy for stage 2
RexRoshan 0:99fa5a619081 15 int enemy22 [7][7] ={
RexRoshan 0:99fa5a619081 16
RexRoshan 0:99fa5a619081 17 {1,1,0,0,0,0,0},
RexRoshan 0:99fa5a619081 18 {1,1,0,0,0,0,0},
RexRoshan 0:99fa5a619081 19 {0,0,1,0,0,0,0},
RexRoshan 0:99fa5a619081 20 {0,0,0,1,0,0,0},
RexRoshan 0:99fa5a619081 21 {0,0,0,0,1,0,0},
RexRoshan 0:99fa5a619081 22 {0,0,0,0,0,1,1},
RexRoshan 0:99fa5a619081 23 {0,0,0,0,0,1,1},
RexRoshan 0:99fa5a619081 24
RexRoshan 0:99fa5a619081 25 };
RexRoshan 0:99fa5a619081 26
RexRoshan 4:4d673fb2d9dc 27 void Enemy22::init(int a,int b,int speed)// initialising the x and y position of the enemy and movement speed of the enemy
RexRoshan 0:99fa5a619081 28 {
RexRoshan 0:99fa5a619081 29
RexRoshan 4:4d673fb2d9dc 30 _a = a; // x position of the second enemy for stage 2
RexRoshan 4:4d673fb2d9dc 31 _b = b; // y position of the second enemy for stage 2
RexRoshan 0:99fa5a619081 32
RexRoshan 0:99fa5a619081 33 _health = 0; // start health from zero
RexRoshan 0:99fa5a619081 34
RexRoshan 1:45493d1d0689 35 int direction = rand() % 2; // randomise initial direction.
RexRoshan 1:45493d1d0689 36
RexRoshan 0:99fa5a619081 37 // 4 possibilities. Get random modulo and set movement accordingly
RexRoshan 1:45493d1d0689 38 if (direction == 0) {
RexRoshan 6:1fcfd331c047 39 _movement.x = 0;
RexRoshan 7:574c66ebd8b0 40 _movement.y = speed; // moves up
RexRoshan 0:99fa5a619081 41 } else {
RexRoshan 6:1fcfd331c047 42 _movement.x = 0;
RexRoshan 7:574c66ebd8b0 43 _movement.y = -speed; // moves down
RexRoshan 0:99fa5a619081 44 }
RexRoshan 0:99fa5a619081 45 }
RexRoshan 0:99fa5a619081 46
RexRoshan 0:99fa5a619081 47 void Enemy22::enemy2(N5110 &lcd)
RexRoshan 0:99fa5a619081 48 {
RexRoshan 0:99fa5a619081 49
RexRoshan 4:4d673fb2d9dc 50 // draws the second-two enemy
RexRoshan 0:99fa5a619081 51 lcd.drawSprite(_a,_b,7,7,(int *)enemy22);
RexRoshan 0:99fa5a619081 52
RexRoshan 0:99fa5a619081 53 }
RexRoshan 0:99fa5a619081 54
RexRoshan 0:99fa5a619081 55 void Enemy22::update()
RexRoshan 0:99fa5a619081 56 {
RexRoshan 4:4d673fb2d9dc 57 _a += _movement.x; // updates the x position
RexRoshan 4:4d673fb2d9dc 58 _b += _movement.y; // updates the y position
RexRoshan 0:99fa5a619081 59
RexRoshan 0:99fa5a619081 60 }
RexRoshan 0:99fa5a619081 61
RexRoshan 0:99fa5a619081 62
RexRoshan 0:99fa5a619081 63 Vector2D Enemy22::get_movement()
RexRoshan 0:99fa5a619081 64 {
RexRoshan 4:4d673fb2d9dc 65 // gets the movement of the enemy
RexRoshan 0:99fa5a619081 66 Vector2D m = {_movement.x,_movement.y};
RexRoshan 0:99fa5a619081 67 return m;
RexRoshan 0:99fa5a619081 68 }
RexRoshan 0:99fa5a619081 69
RexRoshan 0:99fa5a619081 70 void Enemy22::set_movement(Vector2D m)
RexRoshan 0:99fa5a619081 71 {
RexRoshan 4:4d673fb2d9dc 72 // sets the movement of the enemy
RexRoshan 0:99fa5a619081 73 _movement.x = m.x;
RexRoshan 0:99fa5a619081 74 _movement.y = m.y;
RexRoshan 0:99fa5a619081 75 }
RexRoshan 0:99fa5a619081 76
RexRoshan 0:99fa5a619081 77 void Enemy22::add_health()
RexRoshan 0:99fa5a619081 78 {
RexRoshan 4:4d673fb2d9dc 79 // increments the value of health by 1
RexRoshan 0:99fa5a619081 80 _health++;
RexRoshan 0:99fa5a619081 81 }
RexRoshan 0:99fa5a619081 82
RexRoshan 0:99fa5a619081 83 int Enemy22::get_health()
RexRoshan 0:99fa5a619081 84 {
RexRoshan 4:4d673fb2d9dc 85 // gets the value of health
RexRoshan 0:99fa5a619081 86 return _health;
RexRoshan 0:99fa5a619081 87 }
RexRoshan 0:99fa5a619081 88
RexRoshan 4:4d673fb2d9dc 89 Vector2D Enemy22::get_enemy22_pos()
RexRoshan 4:4d673fb2d9dc 90 {
RexRoshan 4:4d673fb2d9dc 91 //gets the position of the second enemy for stage 2
RexRoshan 0:99fa5a619081 92 Vector2D e = {_a,_b};
RexRoshan 0:99fa5a619081 93 return e;
RexRoshan 0:99fa5a619081 94 }
RexRoshan 0:99fa5a619081 95
RexRoshan 0:99fa5a619081 96 void Enemy22::set_enemy22_pos(Vector2D e)
RexRoshan 0:99fa5a619081 97 {
RexRoshan 4:4d673fb2d9dc 98 //sets the position of the second enemy for stage 2
RexRoshan 0:99fa5a619081 99 _a = e.x;
RexRoshan 0:99fa5a619081 100 _b = e.y;
RexRoshan 0:99fa5a619081 101 }