ELEC2645 (2018/19) / Mbed 2 deprecated el17arm

Dependencies:   mbed

Committer:
el17arm
Date:
Mon Apr 08 18:17:10 2019 +0000
Revision:
24:9c7aca60e374
Parent:
23:1ee8686af747
Child:
25:7fb1b6fa9137
Child:
26:bce40bf4c9fc
the previous 5 seperate key functions now reduced to one. I achieved this using a struct. Now, rather than 5 functions for five keys, one function can call the a key variable from the struct.; ; This makes it simple to change the number of keys needed.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el17arm 18:ff0a53dcb862 1 #include "Level1.h"
el17arm 18:ff0a53dcb862 2
el17arm 18:ff0a53dcb862 3 Level1::Level1()
el17arm 18:ff0a53dcb862 4 {
el17arm 18:ff0a53dcb862 5 }
el17arm 18:ff0a53dcb862 6
el17arm 18:ff0a53dcb862 7 Level1::~Level1()
el17arm 18:ff0a53dcb862 8 {
el17arm 18:ff0a53dcb862 9 }
el17arm 18:ff0a53dcb862 10
el17arm 18:ff0a53dcb862 11 void Level1::level_platforms(N5110 &lcd)
el17arm 18:ff0a53dcb862 12 {
el17arm 20:78bd235f8caa 13 lcd.drawLine(0,47,83,47, 1);
el17arm 20:78bd235f8caa 14 lcd.drawRect(11,HEIGHT - 9, 38, 2, FILL_BLACK);
el17arm 20:78bd235f8caa 15 lcd.drawRect(65,HEIGHT - 11, 30, 2, FILL_BLACK);
el17arm 18:ff0a53dcb862 16 lcd.drawRect(WIDTH - 9,HEIGHT - 19, 8, 2, FILL_BLACK);
el17arm 18:ff0a53dcb862 17 lcd.drawRect(22, 25, 48, 2, FILL_BLACK);
el17arm 18:ff0a53dcb862 18 lcd.drawRect(0, 25, 12, 2, FILL_BLACK);
el17arm 18:ff0a53dcb862 19 lcd.drawRect(0, 17, 8, 2, FILL_BLACK);
el17arm 18:ff0a53dcb862 20 lcd.drawRect(0, 9, 27, 2, FILL_BLACK);
el17arm 18:ff0a53dcb862 21 lcd.drawRect(39, 9, 7, 2, FILL_BLACK);
el17arm 18:ff0a53dcb862 22 lcd.drawRect(58,9,32,2,FILL_BLACK);
el17arm 18:ff0a53dcb862 23 }
el17arm 18:ff0a53dcb862 24
el17arm 18:ff0a53dcb862 25 void Level1::soft_blocks(N5110 &lcd)
el17arm 18:ff0a53dcb862 26 {
el17arm 18:ff0a53dcb862 27 _level.soft_blocks(46, 8, lcd);
el17arm 18:ff0a53dcb862 28 _level.soft_blocks(52, 8, lcd);
el17arm 18:ff0a53dcb862 29 _level.soft_blocks(55, 36, lcd);
el17arm 18:ff0a53dcb862 30 _level.soft_blocks(33, 8, lcd);
el17arm 18:ff0a53dcb862 31 _level.soft_blocks(27, 8, lcd);
el17arm 18:ff0a53dcb862 32 _level.soft_blocks(59, 36, lcd);
el17arm 18:ff0a53dcb862 33 }
el17arm 18:ff0a53dcb862 34
el17arm 18:ff0a53dcb862 35 void Level1::solid_blocks(N5110 &lcd)
el17arm 18:ff0a53dcb862 36 {
el17arm 18:ff0a53dcb862 37 _level.draw_solid_block(49,37, lcd);
el17arm 18:ff0a53dcb862 38 _level.draw_solid_block(52,37, lcd);
el17arm 18:ff0a53dcb862 39 _level.draw_solid_block(45,22, lcd);
el17arm 18:ff0a53dcb862 40 _level.draw_solid_block(42,22, lcd);
el17arm 18:ff0a53dcb862 41 }
el17arm 18:ff0a53dcb862 42
el17arm 24:9c7aca60e374 43 void Level1::keys(N5110 &lcd, Gamepad &pad)
el17arm 18:ff0a53dcb862 44 {
el17arm 24:9c7aca60e374 45
el17arm 24:9c7aca60e374 46 _level.key_collect(0, 79, 12, lcd, pad);
el17arm 24:9c7aca60e374 47 _level.key_collect(1, 36, 22, lcd, pad);
el17arm 24:9c7aca60e374 48 _level.key_collect(2, 40, 6, lcd, pad);
el17arm 24:9c7aca60e374 49 _level.key_collect(3, 62, 6, lcd, pad);
el17arm 24:9c7aca60e374 50 _level.key_collect(4, 75, 0, lcd, pad);
el17arm 23:1ee8686af747 51
el17arm 18:ff0a53dcb862 52 }
el17arm 18:ff0a53dcb862 53
el17arm 18:ff0a53dcb862 54 int Level1::spikes(N5110 &lcd)
el17arm 18:ff0a53dcb862 55 {
el17arm 21:7a7a115d910d 56 if(_level.spike1(25, 45, lcd) || _level.spike1(58, 7, lcd) ||
el17arm 21:7a7a115d910d 57 _level.spike3(75, 7, lcd) || _level.spike4(23,7,lcd)) {
el17arm 18:ff0a53dcb862 58 return 1;
el17arm 18:ff0a53dcb862 59 } else {
el17arm 18:ff0a53dcb862 60 return 0;
el17arm 18:ff0a53dcb862 61 }
el17arm 18:ff0a53dcb862 62 }
el17arm 18:ff0a53dcb862 63
el17arm 18:ff0a53dcb862 64 int Level1::keys_collected()
el17arm 18:ff0a53dcb862 65 {
el17arm 18:ff0a53dcb862 66 int k =_level.keys_collected();
el17arm 18:ff0a53dcb862 67 return k;
el17arm 20:78bd235f8caa 68 }
el17arm 20:78bd235f8caa 69
el17arm 20:78bd235f8caa 70 bool Level1::level1_exit(N5110 &lcd)
el17arm 20:78bd235f8caa 71 {
el17arm 20:78bd235f8caa 72 if(_level.exit(78,41,lcd) == true) {
el17arm 20:78bd235f8caa 73 return true;
el17arm 20:78bd235f8caa 74 } else {
el17arm 20:78bd235f8caa 75 return false;
el17arm 20:78bd235f8caa 76 }
el17arm 18:ff0a53dcb862 77 }