What is causing the object to fly upwards?
Basically I just want to be able to make the object jump, but whenever I start the game, the ball ends up floating up. I believe the issue lies within either line 20 or 17, but I could very well be mistaken.
#pragma strict
var rotationSpeed = 100;
var jumpHeight = 8;
private var isFalling = false;
function Update ()
{
//Ball rotation.
var rotation : float = Input.GetAxis ("Horizontal") * rotationSpeed;
rotation *= Time.deltaTime;
var rigidbody: Rigidbody = gameObject.GetComponent(Rigidbody) as Rigidbody;
GetComponent.<Rigidbody> ().AddRelativeTorque (Vector3.back * rotation);
if (Input.GetKeyDown(KeyCode.W) && isFalling == false);
{
rigidbody.velocity.y = jumpHeight;
}
isFalling = true;
}
function onCollisionStay ()
{
isFalling = false;
}
You already have a suggestion as to what might be causing this. Why don't you just remove the lines you mention and see if this still happens. Then put the lines back into place one at a time and in different order until you know what line causes the bug.
That's debugging 101. You need to know what's wrong before you can fix it.
Answer by hexagonius · Jan 31, 2017 at 04:33 PM
Remove the semicolon ; at the end of line 17 (if (Input.GetKeyDown(KeyCode.W) && isFalling == false);)
Okay that worked, but I am still not able to jump, but now that I have that issue out of the way, I think I might be able to figure that out, but do you have any suggestions @hexagonius ?
Your answer
Follow this Question
Related Questions
Jump at fixed height on single touch : Unity 2D 0 Answers
Wondering script Javascript 0 Answers
';' expected. Add semicolon at the end. 2 Answers
Health Will Not Deplete as I shoot Enemy. 0 Answers
Can I use ZeroC Ice with Unity? 0 Answers