Я новичок в программировании игр, но меня интересует этот домен; теперь я работаю над небольшой игрой для своей курсовой работы. Я использовал некоторые идеи из Интернета, чтобы заставить моего героя прыгать; код работает, но после того, как я нажимаю первый раз, герой прыгает и не возвращается к своей позиции, он остается в верхней части экрана. Пожалуйста, помогите мне сделать моего героя, а затем вернитесь на его исходное положение. Если я снова коснусь места, он прыгает, но прыгает туда, в верхней части экрана.Пересказ персонажа в XNA
public void Initialize()
{
startY = position.Y;
jumping = false;
jumpspeed = 0;
}
public void Update(GameTime gameTime)
{
KeyboardState keyState = Keyboard.GetState();
rectangle = new Rectangle(currentFrame * frameWidth, 0, frameWidth, frameHeight);
origin = new Vector2(rectangle.Width/2, rectangle.Height/2);
AnimateRight(gameTime);//calling AnimateRight function to animate heroes sprite
if (jumping)
{
position.Y += jumpspeed;
jumpspeed += 1;
if (position.Y >= startY)
{
position.Y = startY;
jumping = false;
}
}
else
{
if (keyState.IsKeyDown(Keys.Space))
{
jumping = true;
jumpspeed = -14;
}
}
}