test avoid bulled game

Dependencies:   C12832_lcd LCD_fonts mbed mbed-rtos

Revision:
8:2fd3eedcde64
Parent:
7:defdc7cb4e0b
Child:
12:c74115744b24
Child:
17:dfb8d3c5911a
--- a/Person.cpp	Mon Dec 05 07:34:15 2016 +0000
+++ b/Person.cpp	Mon Dec 05 08:09:45 2016 +0000
@@ -8,32 +8,34 @@
     jump_time = 0;
 }
 
-point Person::update(){
-    if(jump_time == 0){
-        //not jump
-        return p;
-    }else if(jump_time == MAX_JUMP_TIME){
-        //down
-        p.y += 2;
+point Person::update(int height){
+    if(jump_time > 0){
+        //while jumpping
+        p.y -= JUMP_SIZE;
+        jump_time--; 
     }else{
-        //up
-        jump_time++;
-        p.y -= 2;
+        //while down or go
+        if(isGround(height)){
+            //while go
+            jump_count = 0;
+        }else{
+            //while down
+            p.y += JUMP_SIZE
+        }
     }
     return p;
 }
 
-point Person::ground(){
-    jump_count = 0;
-    jump_time = 0;
+point Person::jump(){
+    //start jump
+    if(jump_count < MAX_JUMP_COUNT){
+        p.y -= JUMP_SIZE;
+        jump_time = MAX_JUMP_TIME;
+        jump_count++;
+    }
     return p;
 }
 
-point Person::jump(){
-    if(jump_count < MAX_JUMP_COUNT){
-        p.y -= 2;
-        jump_time = 1;
-        jump_count++;
-    }
-    return p;
+bool Person::isGround(int height){
+    return height == p.y;
 }
\ No newline at end of file