ELEC2645 (2018/19) / Mbed 2 deprecated el17set_

Dependencies:   mbed

Files at this revision

API Documentation at this revision

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

Coin/Coin.cpp Show annotated file Show diff for this revision Revisions of this file
Coin/Coin.h Show annotated file Show diff for this revision Revisions of this file
Game/Game.cpp Show annotated file Show diff for this revision Revisions of this file
Game/Game.h Show annotated file Show diff for this revision Revisions of this file
Menu/Menu.cpp Show annotated file Show diff for this revision Revisions of this file
Menu/Menu.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- 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();
     }