#javascript
#javascript
Вопрос:
Есть ли способ добавить задержку между двумя; this.bullets.push(this.ship.shoot());
if (this.mscore >= 1000) {
if (input.isPressed("spacebar")) {
this.bullets.push(this.ship.shoot());
this.bullets.push(this.ship.shoot());
}
}
Комментарии:
1. вы могли бы использовать
setTimeout()
2. k Я попробую это
3.
input.isPressed("spacebar")
? Уверены, что это JavaScript? Если да, опубликуйте объект или класс, который определяет.isPressed()
метод.4. Итак, как бы вы это изложили, и да, это JavaScript, название которого заканчивается на .js
Ответ №1:
Одним из возможных решений является использование setTimeout()
, в следующем примере второй код будет выполнен примерно после 1000ms
:
let delay = 1000;
if (this.mscore >= 1000)
{
if (input.isPressed("spacebar"))
{
this.bullets.push(this.ship.shoot());
let that = this;
setTimeout(
() => that.bullets.push(that.ship.shoot()),
delay
);
}
}
Ответ №2:
Вы могли бы использовать setInterval или setTimeout
Ниже приведен пример setInterval, который будет продолжать «стрелять».
const pressed = true
let interval = null
if (pressed) {
shoot()
interval = setInterval(() => shoot(), 1000)
} else {
interval = clearInterval(interval)
}
function shoot() {
console.log('shoot')
}