У меня проблема с моим прыжком в XNA.
Персонаж слегка прыгает, но я все равно могу подняться на экран, прежде чем вернуться. Это дает эффект, что его не прыжок и я двигался влево, правильно работаю, и они не работают, если игрок не находится в воздухе.
То, что я хочу, это переход типа mario, где пользователь нажимает и может перемещаться влево или вправо, пока игрок не упадет.Перейти не останавливается XNA
Может кто-нибудь помочь мне в этом.
Вот мой код: (Что в обновлении игрока)
public void handleInput(GameTime gameTime)
{
this.Transform.MoveIncrement = Vector2.Zero;
float timeBetweenUpdates = 0.25f * gameTime.ElapsedGameTime.Milliseconds;
if (game.KeyboardManager.isKeyDown(Keys.Left))
{
this.Transform.MoveIncrement += -this.Transform.Look;
this.Transform.IsMoved = true;
}
else if (game.KeyboardManager.isKeyDown(Keys.Right))
{
this.Transform.MoveIncrement += this.Transform.Look;
this.Transform.IsMoved = true;
}
if (game.KeyboardManager.isKeyDown(Keys.Up))
{
// this.Transform.MoveIncrement = -Vector2.UnitY * timeBetweenUpdates;
this.Transform.moveBy(-Vector2.UnitY);
this.Transform.IsMoved = true;
this.hasJumped = true;
}
else if(timeBetweenUpdates > 450)
{
hasJumped = true;
}
else if (hasJumped == true)
{
this.Transform.MoveIncrement = Vector2.UnitY * timeBetweenUpdates;
this.Transform.IsMoved= true;
}
}
Корректировка вашего поста; его трудно читать. Я не могу сказать, хотите ли вы, чтобы ваш персонаж мог двигаться, когда он прыгает. –
Боюсь, что это обновление не очень помогает. Кажется, ваша проблема в том, что ваш персонаж поднимается, а затем вниз, когда вы прыгаете. Разве это не должно произойти? –
отредактировал сообщение там :) –