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 tonysomeone · Aug 25, 2017 at 01:31 PM · scripting problemjumpscript errorjumping object

Why isn't my jumping script working?

Okay, so I am currently working on a game with a character that I want to be able to jump only once until he hits the ground again so I wrote a code to make him do exactly that but now he can only jump once the whole entire game. Here is the code I used.

 bool isgrounded = true;
 
 void Update () {
     if (isgrounded == true) {
         if (Input.GetKeyDown(KeyCode.Space)) {
             GetComponent<Rigidbody2D>().velocity = new Vector2 (0f, 7f);
             isgrounded = false;
         }
     }
 }
 
 void OnCollisionEnter2D (Collision2D coll) {
     if (coll.gameObject.tag == "GroundCollider") {
         isgrounded = true;
     }
 }
Comment
Add comment
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

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by akillingbeck · Aug 25, 2017 at 01:41 PM

Your solution is in your error:

void OnCollisionEnter2D (Collider2D coll) {

Should be

 void OnCollisionEnter2D (Collision2D coll) {

See: https://docs.unity3d.com/ScriptReference/MonoBehaviour.OnCollisionEnter2D.html

Comment
Add comment · Show 15 · 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
avatar image tonysomeone · Aug 25, 2017 at 01:45 PM 0
Share

Oh wow, did I really write Collider2D? You can tell I'm not the best at this.

avatar image tonysomeone · Aug 25, 2017 at 01:53 PM 0
Share

@akillingbeck Replacing Collider2D with Collision2D removed the error but I can still only jump once through the whole game.

avatar image akillingbeck tonysomeone · Aug 25, 2017 at 01:58 PM 0
Share

If your collisions are working correctly, then this could be caused by a collider which is not "GroundCollider" and is blocking your player from reaching a GroundCollider.

Add a Debug.Log(string.Format("OnCollisionEnter2D : I got hit by {0}",coll.gameObject.name));

Inside your OnCollisionEnter2D function. If nothing prints in the Unity console, you haven't setup properly (check docs). If it does print and it's not the object with the correct tag, you can look at the Edit->Proect Settings->Physics matrix to avoid certain layers colliding with other layers.

avatar image tonysomeone akillingbeck · Aug 25, 2017 at 02:10 PM 0
Share

@akillingbeck I played around with the physics matrix a bit and still nothing, I did get a message in the console whenever I hit ground collider though.

Show more comments

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

113 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Unity 2D Enemy jump Question (Frog jump) 1 Answer

Several errors in my acceleration script trying to update variables from other scripts 0 Answers

error CS0103: The name `canvasGroup' does not exist in the current context 3 Answers

Weapon Swap loop only one way. Any ideas? 0 Answers

can't change float value from OnTriggerEnter 1 Answer


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