Question by 
               unity_z-WaCg2Vkkvy3w · Jan 31, 2018 at 02:04 PM · 
                2d game2d-platformerjump2d-physicsjumping  
              
 
              Why does my character stop jumping after he jumped twice? **i'm a begginer**,I'm trying to make my character to double jump. After i've jumped twice, it doesn't jump anymore at all. Why?
using UnityEngine; using System.Collections;
public class PlayerMove : MonoBehaviour {
 bool grounded = true, CanDoubleJump;
 public float speed;             //Floating point variable to store the player's movement speed.
 public float JumpSpeed = 100.0f;
 private Rigidbody2D rb2d;       //Store a reference to the Rigidbody2D component required to use 2D Physics.
 void Jump() {
     
     rb2d.AddForce(Vector3.up *JumpSpeed);
     grounded = false;
   
 } 
 // Use this for initialization
 void Start()
 {
     //Get and store a reference to the Rigidbody2D component so that we can access it.
     rb2d = GetComponent<Rigidbody2D>();
 }
 //FixedUpdate is called at a fixed interval and is independent of frame rate. Put physics code here.
 void FixedUpdate()
 {
     if (Input.GetKeyDown(KeyCode.Space))
     {
         if (grounded)
         {
             Jump();
             CanDoubleJump = true;
            
         }
         else if(CanDoubleJump){
             CanDoubleJump = false;
             Jump();
             
             
         }
     }
     //Store the current horizontal input in the float moveHorizontal.
     float moveHorizontal = Input.GetAxis("Horizontal");
     //Store the current vertical input in the float moveVertical.
     float moveVertical = Input.GetAxis("Vertical");
     //Use the two store floats to create a new Vector2 variable movement.
     Vector2 movement = new Vector2(moveHorizontal, moveVertical);
     //Call the AddForce function of our Rigidbody2D rb2d supplying movement multiplied by speed to move our player.
     rb2d.AddForce(movement * speed);
     Vector2 objPos = new Vector2 (this.transform.position.x, this.transform.position.y);
     objPos.x = Mathf.Clamp (objPos.x, -7, 7);
     this.transform.position = objPos;
 }
 
               }
               Comment
              
 
               
              Your answer
 
             Follow this Question
Related Questions
Player can only jump once!? 0 Answers
Broken Jump Physics 0 Answers
I can't do jump in my 2D game 1 Answer
Where is the Jump Input in the default 2d platform controller? 0 Answers
Trying to make 2D jumping arc 0 Answers