Sign in to follow this  
gellin

timing a jump - solved

Recommended Posts

gellin    122
I'm making a simple 2d game and want to time my jumps so that in .75 seconds he reaches the peak of his jump and in another .75 seconds he is back on the ground. The way I do it right now is all frame independent but I have no control over how long he is in the air for. Here's what I have
	float jumpDistance = 32.0f;

	if (bjump == rising)
	{
		distanceJumped += jumpDistance*elapsedtime;
		movementValue = jumpDistance*elapsedtime;

		if (distanceJumped >= desiredDistance)
		{
			movementValue -= distanceJumped - jumpDistance;
			distanceJumped = 32;
			bjump = falling;
		}
	}
	else
	{
		distanceJumped -= jumpDistance*elapsedtime;
		movementValue = -jumpDistance*elapsedtime;

		if (distanceJumped <= 0)
		{
			movementValue -= distanceJumped;
			jumpingFlag = 0;
			bjump = rising;
			distanceJumped = 0;
			isJumping = 0;
		}
	}
		
	yPos += movementValue;


What would you reccommend that I do to make this jump timed? [Edited by - gellin on October 22, 2005 5:34:24 PM]

Share this post


Link to post
Share on other sites
JohnBolton    1372
Since you want the jumper to reach desiredDistance (which I would rename to halfDesiredDistance) in 0.75 seconds, you need to set jumpDistance (which I would rename to jumpVelocity) to desiredDistance / 0.75 (or 750 if your values are in ms), rather than setting it to a constant (32).

Share this post


Link to post
Share on other sites
gellin    122
Nevermind. It turns out I already had some timer in there. I haven't worked on this in a week and forgot I put it in already. Thanks anyways.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this