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 carlogo11 · Oct 11, 2018 at 01:16 AM · c#movetowards

Using movetowards while in the Air

So i got this game where you can only move between 3 spots
You can jump
Move to another spot while in the air
My problems is while moving to another spot while in the air it looks like my character is doing a double jump.
Im using MoveTowards between the 3 spots

 void Center(){
     transform.position = Vector3.MoveTowards(transform.position, locPts[1].position, moveSpeed*Time.deltaTime);
 }  void Left(){
     transform.Position = Vector3.MoveTowards(transform.position, locPts[0].position, moveSpeed*Time.deltaTime);
     
 void Right(){
     transform.position = Vector3.MoveTowards(transform.position, locPts[2].position, moveSpeed*Time.deltaTime);
 }
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

2 Replies

· Add your reply
  • Sort: 
avatar image
0

Answer by Matthew_Ostil · Oct 11, 2018 at 06:35 PM

You're moving the character via it's world position (transform.position) except for in your Left() method.

Depending on where the parent is situated in the world, the localPosition is likely not aligned with the world, meaning it might seemingly "pop" to another location causing what looks to be a double jump? 

That's my guess anyway. Everything else looks like it should work otherwise.

Comment
Add comment · Show 2 · 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 carlogo11 · Oct 11, 2018 at 10:57 PM 0
Share

oh sorry about that i forgot to change that its the same as the other two
i Attach i img to show you in paint sorry about about the quality xDalt text so basically when i switch position while in the air it does like another jump
im using rb.AddForce(Vector3.up * jumpForce,Force$$anonymous$$ode.VelocityChange); for the jump

untitled.png (48.5 kB)
avatar image Matthew_Ostil carlogo11 · Oct 12, 2018 at 02:26 PM 0
Share

Sorry, I'm a little confused then what the issue is and how it relates to your code. Your code looks fine in that the object will move to one of the three location points based on which you call.

However, you're saying that when you call either of these methods while already in the air, the player does an additional jump? Perhaps it's because you're actually calling for another jump? Do you have a check in place to make sure the playing is not already in the air?

I feel like there might be some missing code surrounding this issue that might be the cause. It's hard to say. :S

avatar image
0

Answer by carlogo11 · Oct 13, 2018 at 07:56 AM

@Osteel i dont think im calling it again anyways here's my player script

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 public enum locations{LEFT = 0, CENTER = 1, RIGHT}
 
 public class Player : MonoBehaviour {
     
     [SerializeField]locations currentLocation = locations.CENTER;
     [SerializeField]GameObject UIManager;
     [SerializeField]float moveSpeed;
     [SerializeField][Range(10,20)]float jumpForce;
     [SerializeField]Transform[] locPts;
     [SerializeField]bool isGrounded = true;
     private Rigidbody rb;
     [SerializeField]private int _switcher;
     private UIManager UImgr;
     
     // Use this for initialization
     void Start () {
         rb = GetComponent<Rigidbody>();
         moveSpeed = 5f;
         jumpForce = 14f;
         UImgr = UIManager.GetComponent<UIManager>();
         currentLocation = locations.CENTER;
         _switcher = (int)currentLocation;
     }
     
     // Update is called once per frame
     void Update () {
         
         _switcher = Mathf.Clamp(_switcher, 0, 2);
         switch(_switcher){
             case (int)locations.LEFT:
                 Left();
                 break;
             case (int)locations.CENTER:
                 Center();
                 break;
             case (int)locations.RIGHT:
                 Right();
                 break;
         }
     
 
     }
     
 
     ////////////////////////////////////////////////////////////////
     /////////~~~~~~~~PUT COLLIDER CODES HERE~~~~~~~~~~//////////////
     ////////////////////////////////////////////////////////////////
     void OnTriggerEnter(Collider col) {
         if(col.gameObject.tag == "Ground") {
             isGrounded = true;
         }
         if(col.gameObject.tag == "PickUps") {
             GameManager.Instance.Score += 1;
         }
         if(col.gameObject.tag == "Rock") {
            UImgr.currentState = states.GAMEOVER;
         }
     }
     void OnTriggerExit(Collider col){
         if(col.gameObject.tag == "Ground") {
             isGrounded = false;
         }
     }
 
     ////////////////////////////////////////////////////////////////
     /////////~~~~~~~~PUBLIC ACCESSORS HERE~~~~~~~~~~////////////////
     ////////////////////////////////////////////////////////////////
     public void changePos(int changer){
         _switcher += changer;
     }
 
     public void Jump(){
            rb.AddForce(Vector3.up * jumpForce,ForceMode.Impulse); 
     }
 
     public bool get_isGrounded(){
         return isGrounded;
     }
 
 
     ////////////////////////////////////////////////////////////////
     /////////~~~~~~~~PUT MOVEMENT CODES HERE~~~~~~~~~~//////////////
     ////////////////////////////////////////////////////////////////
     void Left(){
         transform.position = Vector3.MoveTowards(transform.position, locPts[0].position, moveSpeed*Time.deltaTime);
     }
 
     void Center(){
         transform.position = Vector3.MoveTowards(transform.position, locPts[1].position, moveSpeed*Time.deltaTime);
     }
 
     void Right(){
         transform.position = Vector3.MoveTowards(transform.position, locPts[2].position, moveSpeed*Time.deltaTime);
     }
 }

Comment
Add comment · Show 2 · 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 Matthew_Ostil · Oct 13, 2018 at 04:21 PM 0
Share

What is calling Jump() and changePos()?

If the character is jumping twice, the first step to debugging it will be seeing the logic around what makes the character jump in the first place.

avatar image carlogo11 Matthew_Ostil · Oct 13, 2018 at 07:57 PM 0
Share

its not really double jumping per se it looks like it is double jumping when you change position when in air.
because when i change position while going down it doesn't do the weird double jump looking move

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

610 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 avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image 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

Why doesn't this script work right? 1 Answer

MoveTowards not moving accurately. Getting stuck on target. 2 Answers

Variable containing a transform is modifying the object's transform it is referenced to. 1 Answer

Vector3.MoveTowards Problems 0 Answers

Move Gameobject towards/away from position based on the proximity of 2 other objects 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