Я новичок в Phaser.io, поэтому я извиняюсь, если этот пост не очень хорошо.Завершить игру после 5 секунд бездействия
Как закончить игру после 5 секунд бездействия? Я сделал что-то, но я думаю, что это действительно очень плохо для производительности. Каждый раз, когда вызывается функция обновления, я проверяю, не нажал ли пользователь «вверх», «влево», «вправо», «вниз» и после проверки, превысило ли мы время (currentTime - началоTime> 5000). У этого кода есть 2 проблемы, которые я пытаюсь запустить: - Производительность очень плохая, потому что не нужно слишком проверять каждый раз, когда мы вызываем функцию обновления. - В моем состоянии я хочу проверить, что «ни один ключ не был нажат »и на данный момент я просто проверяю, не пользователь ли нажал« вверх »,« влево »,« вправо »или« вниз »
Как это сделать? Извините за мой английский
var timeBeginning = new Date().getTime();
function update() {
// input to move the ship
if (cursors.up.isDown) {
game.physics.arcade.accelerationFromRotation(ship.rotation, 200, ship.body.acceleration);
} else {
// stopper the acceleration
ship.body.acceleration.set(0);
}
if (cursors.left.isDown) {
ship.body.angularVelocity = -300;
} else if (cursors.right.isDown) {
ship.body.angularVelocity = 300;
} else {
// stop the rotation
ship.body.angularVelocity = 0;
}
if (!cursors.up.isDown && !cursors.left.isDown && !cursors.right.isDown && !cursors.down.isDown) {
if (new Date().getTime() - timeBeginning > 5000) {
end();
}
} else {
timeBeginning = new Date().getTime();
}
}