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