Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
0
Question by taib · Nov 18, 2015 at 12:32 AM · c#jumpjumpingdouble jump

How to double jump? i just can jump once when it touch the ground.. help me guys =D

private bool jumping; private bool sliding; private bool wallHolding; private bool stopSliding;

 // Components
 private PlayerPhysics playerPhysics;
 private Animator animator;

// private GameManager manager;

 void Start () {
     playerPhysics = GetComponent<PlayerPhysics>();
     animator = GetComponent<Animator>();
     //manager = Camera.main.GetComponent<GameManager>();
     animator.SetLayerWeight(1,1);
 }
 
 void Update () {



     // Reset acceleration upon collision
     if (playerPhysics.movementStopped) {
         targetSpeed = 0;
         currentSpeed = 0;


     }

     //player slash

     if (Input.GetButtonDown("slashing"))
     {
         animator.SetTrigger("slash2");
     }

     // If player is touching the ground
     if (playerPhysics.grounded) {
         amountToMove.y = 0;
         
         if (wallHolding) {
             wallHolding = false;
             animator.SetBool("Wall Hold", false);
         }
         
         // Jump logic
         if (jumping) {
             jumping = false;
             animator.SetBool("Jumping",false);
         }
         
         // Slide logic
         if (sliding) {
             if (Mathf.Abs(currentSpeed) < .25f || stopSliding) {
                 stopSliding = false;
                 sliding = false;
                 animator.SetBool("Sliding",false);
                 playerPhysics.ResetCollider();
             }
         }
         
         // Slide Input
         if (Input.GetButtonDown("seret")) {
             if (Mathf.Abs(currentSpeed) > initiateSlideThreshold) {
                 sliding = true;
                 animator.SetBool("Sliding",true);
                 targetSpeed = 0;
                 
                 playerPhysics.SetCollider(new Vector3(10.3f,1.5f,3), new Vector3(.35f,.75f,0));
             }
         }
     }
     else {
         if (!wallHolding) {
             if (playerPhysics.canWallHold) {
                 wallHolding = true;
                 animator.SetBool("Wall Hold", true);
             }
         }
     }
     
     // Jump Input
     if (Input.GetButtonDown("Jump")) {



         if (sliding) {
             stopSliding = true;
         }
         else if (playerPhysics.grounded || wallHolding) {
             amountToMove.y = jumpHeight;
             jumping = true;
             animator.SetBool("Jumping",true);
             
             if (wallHolding) {
                 wallHolding = false;
                 animator.SetBool("Wall Hold", false);
             }
         }
     }
Comment
Add comment · Show 1
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image rutter · Nov 18, 2015 at 12:33 AM 0
Share

Ignoring your wall of script: you will need to identify when the player can double jump and keep track of that. You could track the number of jumps remaining, and reset that value each time they touch the ground, for example.

Without knowing more about your design, it's impossible to discuss a script. Once you have the design, the scripting part should be quite a bit easier.

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by itsharshdeep · Nov 18, 2015 at 05:04 AM

Sorry If I misunderstood, There is a simple method how far I know.

For Single Jump: You must have track that are you currently present on Ground or not. You can check with the setting up the bool (like isGrounded). This bool is false when you press the jump button or your collider is not touching the ground. When again you touch the ground your bool will be true.

For Double Jump: You can place a counter for that ( I don't know the correct approach for the same) . Now you have to check whether you are on ground and what the counter is. Explanation:- For first jump the above 'Single Jump' logic is correct then for double jump you must check that your isGrounded bool must false and counter value must be one(because till now you have pressed jump button once). Now you are eligible to jump again ( Because condition of double jump is matching) now as with the jump button pressed again you again have to increment the counter so that if player want to make the triple jump they should not able to make that

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

3 People are following this question.

avatar image avatar image avatar image

Related Questions

Double jump. Jumping after falling off a platform 1 Answer

While (starting jumping or in jump) holding W key makes game object jump high and fall slow. 1 Answer

I have a problem in the jump system. 1 Answer

How can i combine Coyote Time and Jump Buffering with double jump? 0 Answers

Problems with jumping in Doodle Jump like game 2 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges