Why isn't my character moving? 2D C# Physics
Hey everyone,
I'm trying to get my character to move left and right to no avail. Jumping is successful, but I can't figure out why the character can't move left and right. I'll post the whole script, which includes player health, elimination and a projectile that also works. Any additional tips on my coding in addition to solving the issue is very welcome!
using UnityEngine; using System.Collections;
public class PlayerController : MonoBehaviour {
 [SerializeField] [Tooltip("Control the jump height of the game object")] 
 private float jumpHeight = 5.0f;
 public GameObject bullet;
 public Transform gunEnd;
 public float maxHealth = 100.0f;
 public float currHealth;
 public GameObject player;
 public float speed = 10f;
 private Rigidbody2D rb2d1;
 // Use this for initialization
 void Start () {
     currHealth = maxHealth;
     rb2d1 = GetComponent<Rigidbody2D> ();
 }
 // Update is called once per frame
 void Update ()
 {
     if (Input.GetKeyDown (KeyCode.Space)) 
     {
         rb2d1.AddForce (transform.up * jumpHeight);
     }        
     if (Input.GetButtonDown ("Fire1")) 
     {
         Instantiate (bullet, gunEnd.position, gunEnd.rotation);    
     }
     if (currHealth == 0.0f) 
     {
         Destroy (gameObject);
     }
 }
 void FixedUpdate()
 {
 
     float h = Input.GetAxis("Horizontal");
     rb2d1.AddForce((Vector2.right * speed) * h);
 }
 
               }
Answer by jgodfrey · Apr 06, 2016 at 11:05 PM
What happens if you write out the value of your "h" variable in the FixedUpdate() method? I'd guess it's 0 - which will ultimately make your force 0.
If that's the case, you probably need to verify that the "Horizontal" input is appropriately defined in the Input Manager.
Answer by DanoVII · Apr 10, 2016 at 04:52 AM
That definitely helped, but not it's only returning stupidly small decimal values when I press the A and D buttons....any ideas for this?
Gravity 3 Dead .001 Sensitivity 3 Snap (Checked) Invert (Unchecked)
Just trying to get a -1 to 1 range here...any ideas?
Your answer
 
             Follow this Question
Related Questions
2D Weird Jumping 1 Answer
C# delaying command 0 Answers
Failed to achieve uniform circle movement with rigidbody2D. 0 Answers