Olá, Luiz!
Entendi sua dúvida. Você gostaria que, após o ator marcar um ponto, ele volte à posição inicial e haja um atraso antes que a tecla de seta para cima comece a mover o ator novamente.
Uma maneira de fazer isso é adicionar um pequeno atraso antes de permitir que o ator se mova novamente. Você pode usar a função setTimeout
do JavaScript para criar esse atraso. Aqui está um exemplo de como você pode implementar isso no seu código:
function marcaPonto() {
// Código para marcar o ponto
// Volta à posição inicial
ator.y = 366;
// Atraso de 1 segundo antes de permitir o movimento novamente
setTimeout(function() {
podeMover = true;
}, 1000);
}
function keyPressed() {
if (keyCode === UP_ARROW && podeMover) {
// Código para mover o ator para cima
}
}
Nesse exemplo, a função marcaPonto
é chamada sempre que o ator marca um ponto. Dentro dessa função, o ator é movido de volta à posição inicial e, em seguida, é definido um atraso de 1 segundo usando a função setTimeout
. Após o atraso, a variável podeMover
é definida como true
, permitindo que o ator se mova novamente quando a tecla de seta para cima for pressionada.
Lembre-se de adaptar o código para o seu projeto, substituindo os nomes das variáveis e funções pelos que você está usando.
Bons estudos!