ELEC2645 (2019/20) / Mbed 2 deprecated ELEC2645_Project_el19tb

Dependencies:   mbed

Revision:
46:e39abe665271
Parent:
45:e40c4f89ed7c
Child:
47:29c4796a49e5
--- a/Frogger/Frogger.cpp	Fri May 22 19:12:20 2020 +0000
+++ b/Frogger/Frogger.cpp	Sat May 23 02:55:16 2020 +0000
@@ -100,7 +100,7 @@
             
         graphics.refresh(); // refresh the lcd screen
         
-        wait_ms(50); // fpms
+        wait_ms(85); // fpms
     } 
 }
 
@@ -131,11 +131,11 @@
     //increment the top side by a value of grid sizw
     frog->y += yWay * 4;
     
-    // change rect parameters
+    // update rect parameters
     frog->left_side = frog->x;
-    frog->right_side = grid + frog->x;
+    frog->right_side = 6 + frog->x;
     frog->up = frog->y;
-    frog->down = grid + frog->y;
+    frog->down = 4 + frog->y;
 }
 
 /* ENGINE CALLS */
@@ -171,7 +171,7 @@
 void Frogger::moveVehiclesLevelOne()
 {
     moveVehicle(car_row_one_one, 'S', 3);
-    moveVehicle(car_row_two_one, 'S', 2);
+    moveVehicle(car_row_two_one, 'M', 2);
     moveVehicle(car_row_three_one, 'S', 3);
     moveVehicle(car_row_four_one, 'M', 4);    
 }
@@ -211,13 +211,12 @@
 {
     for(int i = 0; i < array_size; i++)
     {
-        moveIndividualObject(&row[i], c); 
-        checkCollison(&row[i]); // check if the frog has crashed/on log       
+        moveIndividualObject(&row[i], c);
+        checkCollison(row[i]); // check if the frog has crashed/on log       
     }
 }
 
-void Frogger::moveIndividualObject(Object *vehicle, char c)
-{
+void Frogger::moveIndividualObject(Object *vehicle, char c){
     switch(c)
     {
         case 'S':
@@ -233,7 +232,6 @@
 
     checkOutOfBounds(vehicle);
     checkFrogOutOfBounds();
-
     graphics.showObj(vehicle);  // display to screen
 }
 /* ENGINE RUN */
@@ -275,25 +273,27 @@
 }
 */
 
-void Frogger::checkCollison(Object *object)
+void Frogger::checkCollison(Object object)
 {
-    if(!(frog->up >= object->rectangle.bottom ||
-    (frog->right_side <= object->object.x)  ||
-    (frog->down <= object->object.y) ||
-    (frog->left_side >= object->rectangle.right_side))) {
+    if(!(frog->up >= object.rectangle.bottom ||
+    (frog->right_side <= object.rectangle.left_side)  ||
+    (frog->down <= object.rectangle.up) ||
+    (frog->left_side >= object.rectangle.right_side))) {
         checkFrogAction(object);
+        graphics.print();
+
     }
 }
 
-void Frogger::checkFrogAction(Object *log)
+void Frogger::checkFrogAction(Object log)
 {
-    if(frogWater) {
-        frogOnLog = true;
-        moveFrogWithLog(log);
+    if(frog->y < 48-4*6) {
+        //frogOnLog = true;
+        //moveFrogWithLog(log);
+        graphics.printTest();
 
     } else { // frog is on the road 
-        frog->reset(); // crashed with car so reset
-        graphics.printLoser();
+        //frog->reset(); // crashed with car so reset
     }
 }
 
@@ -495,11 +495,6 @@
 }
 /* DIR */
 
-
-
-
-
-
 // so the user does not predict when the next car is coming
 int Frogger::randCars()
 {