Итак, я создал Arkanoid Paddle, который в основном перемещается влево и вправо с помощью аналогового джойстика.Добавить Cool-Down для умения Использовать
if (GamePad.GetState(PlayerIndex.One).ThumbSticks.Left.X == -1.0f)
{
// Player one has pressed the left thumbstick up.
Position.X = Position.X - (5 + speedup1);
}
if (GamePad.GetState(PlayerIndex.One).ThumbSticks.Left.X == 1.0f)
{
// Player one has pressed the left thumbstick up.
Position.X = Position.X + (5 + speedup1);
}
speedup1
является начальным целое значение устанавливается на ноль, и, когда Player
нажимает на правый триггер, он устанавливает значение до 5, таким образом, увеличивая скорость мешалки.
if (GamePad.GetState(PlayerIndex.One).Triggers.Right > 0)
{
speedup1 = 5;
}
То, что я хочу сделать, это сделать так, чтобы после нажатия на спусковой крючок, значение speedup1
возвращается к 0 после заданного интервала времени, и игрок не в состоянии изменить его снова для другого заданного интервала время.
Помогите, пожалуйста,
Выражаясь просто и вообще, при создании игры, вы обычно хотите обновления часть вашего игрового цикла, где вы отправляете в истекшее время (в клещах или миллисекундах) каждый цикл. Это время затем используется в обновлениях всех сущностей для расчета их расстояния перемещения и т. Д. Это время также можно использовать для вычитания из таймеров, таких как кулдауны. Все это должно быть сделано в методе Update для игрового объекта. – Tobberoth