ELEC2645 (2018/19) / Mbed 2 deprecated el17rrrs

Dependencies:   mbed Gamepad N5110 mbed-rtos

Committer:
RexRoshan
Date:
Thu May 09 09:49:35 2019 +0000
Revision:
0:d9cf94b41df3
Documentation has been completed and the code has been slightly modified

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RexRoshan 0:d9cf94b41df3 1 #include "Background.h"
RexRoshan 0:d9cf94b41df3 2
RexRoshan 0:d9cf94b41df3 3 // nothing doing in the constructor and destructor
RexRoshan 0:d9cf94b41df3 4 Background::Background()
RexRoshan 0:d9cf94b41df3 5 {
RexRoshan 0:d9cf94b41df3 6
RexRoshan 0:d9cf94b41df3 7 }
RexRoshan 0:d9cf94b41df3 8
RexRoshan 0:d9cf94b41df3 9 Background::~Background()
RexRoshan 0:d9cf94b41df3 10 {
RexRoshan 0:d9cf94b41df3 11
RexRoshan 0:d9cf94b41df3 12 }
RexRoshan 0:d9cf94b41df3 13
RexRoshan 0:d9cf94b41df3 14 // upper cloud
RexRoshan 0:d9cf94b41df3 15
RexRoshan 0:d9cf94b41df3 16 int upper_cloud [18][16] = {
RexRoshan 0:d9cf94b41df3 17
RexRoshan 0:d9cf94b41df3 18 {1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 19 {1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 20 {0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 21 {0,1,1,0,0,1,0,0,1,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 22 {0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 23 {0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 24 {0,0,1,1,0,0,0,0,1,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 25 {0,1,1,0,0,1,0,1,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 26 {1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 27 {1,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 28 {1,1,0,0,1,0,0,0,0,0,0,1,0,0,0,0},
RexRoshan 0:d9cf94b41df3 29 {0,1,1,1,0,0,0,0,0,0,1,0,1,0,0,0},
RexRoshan 0:d9cf94b41df3 30 {0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0},
RexRoshan 0:d9cf94b41df3 31 {0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0},
RexRoshan 0:d9cf94b41df3 32 {0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0},
RexRoshan 0:d9cf94b41df3 33 {0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0},
RexRoshan 0:d9cf94b41df3 34 {0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0},
RexRoshan 0:d9cf94b41df3 35 {0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 36
RexRoshan 0:d9cf94b41df3 37 };
RexRoshan 0:d9cf94b41df3 38
RexRoshan 0:d9cf94b41df3 39 int lower_cloud [16][17] = {
RexRoshan 0:d9cf94b41df3 40 {0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0},
RexRoshan 0:d9cf94b41df3 41 {0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0},
RexRoshan 0:d9cf94b41df3 42 {0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1},
RexRoshan 0:d9cf94b41df3 43 {0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1},
RexRoshan 0:d9cf94b41df3 44 {0,0,0,1,1,1,0,0,0,0,0,0,0,1,0,1,0},
RexRoshan 0:d9cf94b41df3 45 {0,0,1,1,0,0,1,0,0,0,0,0,0,1,0,1,0},
RexRoshan 0:d9cf94b41df3 46 {0,1,1,0,0,0,0,1,0,0,0,0,0,0,1,0,0},
RexRoshan 0:d9cf94b41df3 47 {1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 48 {1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 49 {1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 50 {0,1,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 51 {0,0,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 52 {0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 53 {1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 54 {1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 55 {0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0},
RexRoshan 0:d9cf94b41df3 56
RexRoshan 0:d9cf94b41df3 57 };
RexRoshan 0:d9cf94b41df3 58
RexRoshan 0:d9cf94b41df3 59
RexRoshan 0:d9cf94b41df3 60 void Background::init_u(int a,int b) // initialising the x and y position of the clouds
RexRoshan 0:d9cf94b41df3 61 {
RexRoshan 0:d9cf94b41df3 62
RexRoshan 0:d9cf94b41df3 63 _a = a; // x position of the upper cloud
RexRoshan 0:d9cf94b41df3 64 _b = b; // y position of the upper cloud
RexRoshan 0:d9cf94b41df3 65
RexRoshan 0:d9cf94b41df3 66 }
RexRoshan 0:d9cf94b41df3 67
RexRoshan 0:d9cf94b41df3 68 void Background::init_l(int c,int d) // initialising the x and y position of the clouds
RexRoshan 0:d9cf94b41df3 69 {
RexRoshan 0:d9cf94b41df3 70
RexRoshan 0:d9cf94b41df3 71 _c = c; // x position of the lower cloud
RexRoshan 0:d9cf94b41df3 72 _d = d; // y position of the lower cloud
RexRoshan 0:d9cf94b41df3 73
RexRoshan 0:d9cf94b41df3 74 }
RexRoshan 0:d9cf94b41df3 75
RexRoshan 0:d9cf94b41df3 76 void Background::background(N5110 &lcd)
RexRoshan 0:d9cf94b41df3 77 {
RexRoshan 0:d9cf94b41df3 78
RexRoshan 0:d9cf94b41df3 79 // Draws the clouds
RexRoshan 0:d9cf94b41df3 80 lcd.drawSprite(_a,_b,18,16,(int *)upper_cloud);
RexRoshan 0:d9cf94b41df3 81 lcd.drawSprite(_c, _d, 16, 17, (int *)lower_cloud);
RexRoshan 0:d9cf94b41df3 82 }
RexRoshan 0:d9cf94b41df3 83
RexRoshan 0:d9cf94b41df3 84 void Background::update() // Moves the position of the cloud everytime
RexRoshan 0:d9cf94b41df3 85 {
RexRoshan 0:d9cf94b41df3 86
RexRoshan 0:d9cf94b41df3 87 _fast = 1.0; // Movement speed = 1 so that it is not too fast
RexRoshan 0:d9cf94b41df3 88
RexRoshan 0:d9cf94b41df3 89 _a+=_fast;
RexRoshan 0:d9cf94b41df3 90 _c+=_fast; // moves the x-position to the right
RexRoshan 0:d9cf94b41df3 91
RexRoshan 0:d9cf94b41df3 92
RexRoshan 0:d9cf94b41df3 93 }
RexRoshan 0:d9cf94b41df3 94
RexRoshan 0:d9cf94b41df3 95
RexRoshan 0:d9cf94b41df3 96 Vector2D Background::get_pos_upper() {
RexRoshan 0:d9cf94b41df3 97 //gets the position of the clouds
RexRoshan 0:d9cf94b41df3 98 Vector2D e = {_a,_b};
RexRoshan 0:d9cf94b41df3 99 return e;
RexRoshan 0:d9cf94b41df3 100 }
RexRoshan 0:d9cf94b41df3 101
RexRoshan 0:d9cf94b41df3 102 Vector2D Background::get_pos_lower() {
RexRoshan 0:d9cf94b41df3 103 //gets the position of the clouds
RexRoshan 0:d9cf94b41df3 104 Vector2D f = {_c,_d};
RexRoshan 0:d9cf94b41df3 105 return f;
RexRoshan 0:d9cf94b41df3 106 }
RexRoshan 0:d9cf94b41df3 107
RexRoshan 0:d9cf94b41df3 108 void Background::set_pos_upper(Vector2D e)
RexRoshan 0:d9cf94b41df3 109 {
RexRoshan 0:d9cf94b41df3 110 //sets the position of the first enemy of stage 2
RexRoshan 0:d9cf94b41df3 111 _a = e.x;
RexRoshan 0:d9cf94b41df3 112 _b = e.y;
RexRoshan 0:d9cf94b41df3 113 }
RexRoshan 0:d9cf94b41df3 114
RexRoshan 0:d9cf94b41df3 115 void Background::set_pos_lower(Vector2D f)
RexRoshan 0:d9cf94b41df3 116 {
RexRoshan 0:d9cf94b41df3 117 //sets the position of the first enemy of stage 2
RexRoshan 0:d9cf94b41df3 118 _c = f.x;
RexRoshan 0:d9cf94b41df3 119 _d = f.y;
RexRoshan 0:d9cf94b41df3 120 }