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 Maxi19201 · Feb 17, 2019 at 04:46 PM · 2dmovementcharacternot working

This script doesnt work why? (2D)

Hi i made an character controller that lets me move in air slower than on the ground and i have no idea why it doesnt work i changed the script 3 times and for me it should work. If someone has the time to read through it THANKS! The movement only works if i change the Realacceleration to acceleration... but then i have the same acceleration in the air as on the ground. When i start this script now my character just doesnt move...

         using System.Collections;
         using System.Collections.Generic;
         using UnityEngine;

         public class Playermovement : MonoBehaviour
  {

 public float acceleration = 0f;

 public float maxSpeed = 0f;

 public float airmovement = 0f;

 public float distToGround = 0f;

 public Animator anim;

 private Vector2 RealAcceleration = new Vector2 (0,0);

 private Rigidbody2D rb;


 // Start is called before the first frame update
 void Start()
 {
     rb = GetComponent<Rigidbody2D>();
 }


 private void Update()
 {

 }

 void FixedUpdate()
 {
   
     //Gets input
     float moveHorizontal = Input.GetAxisRaw("Horizontal");
     float moveVertical = Input.GetAxisRaw("Vertical");
     Vector2 moveInput = new Vector2(moveHorizontal, 0);

     // The code that should change the input when the Character is in the air
     if (isGrounded())
     {
         Vector2 Realacceleration = new Vector2 (moveInput.x * acceleration,0);
     }
     if (isGrounded() == false)
     {
         Vector2 Realacceleration = new Vector2(moveInput.x * acceleration / airmovement, 0);
     }


     Debug.Log(acceleration);
     Debug.Log(airmovement);
     Debug.Log(RealAcceleration);                

     rb.AddForce(RealAcceleration);
     if (rb.velocity.magnitude > maxSpeed)
     {
          rb.velocity = rb.velocity.normalized * maxSpeed;
     }

     bool isGrounded()
     {
         Vector3 Raymove = new Vector3(0, 0.8f, 0);
         return Physics2D.Raycast(transform.position - Raymove, Vector3.down, distToGround);
     }
 }

}

Comment
Add comment · Show 4
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 Pinkuboxu · Feb 17, 2019 at 09:22 PM 0
Share

Well, you are multiplying by acceleration which is zero so you are applying no acceleration since multiplying by zero makes zero. That's why it's not moving in this case. I don't really know exactly the effect you are going for to begin with but if it's to give your character that old $$anonymous$$ario feel where you have air control left and right, then you'll just make the acceleration smaller. Ins$$anonymous$$d of dividing by airmovment try making groundAcceleration and airAcceleration variables to multiply to your horz. movement controls. That will give you more control over it. Also, you'll want your control input and logic in Update(). Your physics is in the right place in FixedUpdate(), though.

avatar image Maxi19201 Pinkuboxu · Jun 29, 2019 at 10:51 PM 0
Share

The thing is the acceleration = 0f was just a placeholder and in the Engine i changed the parameters...

avatar image Pinkuboxu · Feb 17, 2019 at 09:34 PM 0
Share

Also, don't new Vector2() your RealAcceleration in the control logic, just Vector2(). And consider rena$$anonymous$$g to realAcceleration to keep your na$$anonymous$$g consistant and code more readable. I was actually looking for where you defined the method or Type at first glance...

avatar image Maxi19201 Pinkuboxu · Jun 29, 2019 at 10:48 PM 0
Share

Thanks, that was btw my first script and i did learn a lot since then! If i look at it soo much things dont make any sense.

0 Replies

· Add your reply
  • Sort: 

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

331 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 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 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

Check if Dump's velocity is zero 0 Answers

Unity2D Help with rigidbody character movement. 0 Answers

2D Animation Delay 3 Answers

Player Movement Not Always Responding 1 Answer

Isometric movement for MoveTowards 0 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