Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Revision 15:a080c64cf301, committed 2019-05-06
- Comitter:
- S_Tingle
- Date:
- Mon May 06 18:39:40 2019 +0000
- Parent:
- 14:d0650d0de063
- Child:
- 16:37d98c281eb3
- Commit message:
- added damage from enemy1 + implementing coin
Changed in this revision
--- a/Coin/Coin.cpp Mon May 06 14:13:09 2019 +0000
+++ b/Coin/Coin.cpp Mon May 06 18:39:40 2019 +0000
@@ -30,8 +30,8 @@
}
-bool Coin::topLeftCollision(int x, int y, N5110 &lcd){
- for (int i = 0; i <= 1; i++){
+bool Coin::northCollision(int x, int y, N5110 &lcd){
+ for (int i = 0; i < 2; i++){
if (lcd.getPixel(x + i,y) == 1){
return true;
}
@@ -39,11 +39,29 @@
return false;
}
-bool Coin::bottomRightCollision(int x, int y, N5110 &lcd){
- for (int i = 0; i <= 1; i++){
+bool Coin::southCollision(int x, int y, N5110 &lcd){
+ for (int i = 0; i < 2; i++){
+ if (lcd.getPixel(x + i,y + 1) == 1){
+ return true;
+ }
+ }
+ return false;
+}
+
+bool Coin::eastCollision(int x, int y, N5110 &lcd){
+ for (int i = 0; i < 2; i++){
if (lcd.getPixel(x + 1,y + i) == 1){
return true;
}
}
return false;
+}
+
+bool Coin::westCollision(int x, int y, N5110 &lcd){
+ for (int i = 0; i < 2; i++){
+ if (lcd.getPixel(x,y + i) == 1){
+ return true;
+ }
+ }
+ return false;
}
\ No newline at end of file
--- a/Coin/Coin.h Mon May 06 14:13:09 2019 +0000
+++ b/Coin/Coin.h Mon May 06 18:39:40 2019 +0000
@@ -20,8 +20,10 @@
int get_x_coin();
int get_y_coin();
void collect(N5110 &lcd);
- bool topLeftCollision(int x, int y, N5110 &lcd);
- bool bottomRightCollision(int x, int y, N5110 &lcd);
+ bool northCollision(int x, int y, N5110 &lcd);
+ bool southCollision(int x, int y, N5110 &lcd);
+ bool eastCollision(int x, int y, N5110 &lcd);
+ bool westCollision(int x, int y, N5110 &lcd);
Coin();
~Coin();
--- a/Game/Game.cpp Mon May 06 14:13:09 2019 +0000
+++ b/Game/Game.cpp Mon May 06 18:39:40 2019 +0000
@@ -28,7 +28,7 @@
void Game::collect(Smiley smiley,Coin coin,N5110 &lcd){
int x_coin;
int y_coin;
- if(smiley.get_x_char() + 7 == coin.get_x_coin() && smiley.get_y_char() + 7 == coin.get_y_coin()){
+ if(smiley.northCollision(x_char, y_char, lcd) == true && coin.southCollision(x_char, y_char, lcd) == true){
x_coin = 100;
y_coin = 100;
}
@@ -38,4 +38,18 @@
smiley.movement(dir,lcd);
enemy1.movement(lcd);
enemy2.movement(lcd);
+}
+
+void Game::damage(int lives){
+ lives = 3;
+
+ if(smiley.northCollision(x_char, y_char, lcd) == true && enemy1.southCollision(x_char, y_char, lcd) == true){
+ lives--;
+ } else if(smiley.southCollision(x_char, y_char, lcd) == true && enemy1.northCollision(x_char, y_char, lcd) == true){
+ lives--;
+ } else if(smiley.eastCollision(x_char, y_char, lcd) == true && enemy1.westCollision(x_char, y_char, lcd) == true){
+ lives--;
+ } else if(smiley.westCollision(x_char, y_char, lcd) == true && enemy1.eastCollision(x_char, y_char, lcd) == true){
+ lives--;
+ }
}
\ No newline at end of file
--- a/Game/Game.h Mon May 06 14:13:09 2019 +0000
+++ b/Game/Game.h Mon May 06 18:39:40 2019 +0000
@@ -21,6 +21,7 @@
void drawSprite(N5110 &lcd);
void collect(Smiley smiley,Coin coin,N5110 &lcd);
void movement(Gamepad &pad,N5110 &lcd);
+ void damage(int lives);
private:
--- a/Menu/Menu.cpp Mon May 06 14:13:09 2019 +0000
+++ b/Menu/Menu.cpp Mon May 06 18:39:40 2019 +0000
@@ -19,7 +19,8 @@
}
-void Menu::pause(N5110 &lcd){
-
+void Menu::main(N5110 &lcd){
+
+
}
--- a/Menu/Menu.h Mon May 06 14:13:09 2019 +0000
+++ b/Menu/Menu.h Mon May 06 18:39:40 2019 +0000
@@ -171,7 +171,7 @@
void init();
void drawSprite(N5110 &lcd);
- void pause(N5110 &lcd);
+ void main(N5110 &lcd);
Menu();
~Menu();
--- a/main.cpp Mon May 06 14:13:09 2019 +0000
+++ b/main.cpp Mon May 06 18:39:40 2019 +0000
@@ -64,7 +64,7 @@
wait(1);
lcd.drawSprite(0,0,48,84,(int *)start_02);
wait(1);
- lcd.drawSprite(0,0,48,84,(int *)start_03);
+ lcd.drawSprite(0,0,48,84,(int *)start_02);
wait(1);
lcd.refresh();
}