[英]Restart button for snake game
我從幾周開始學習 JS。 我試圖做這個指導練習,添加重啟按鈕等功能。 我知道我做錯了什么,有人可以幫助我理解嗎?
這是我的代碼: https : //github.com/StefaniaGalazzo/snake-game
到目前為止,您的代碼看起來不錯。 從您的 JS 文件來看,問題似乎出在這個函數上:
function main() {
if (has_game_ended()) return;
changing_direction = false;
setTimeout(function onTick() {
clear_board();
drawFood();
move_snake();
drawSnake();
// Call main again
main();
}, 100)
}
特別是這一行:
if (has_game_ended()) return;
如果你想要重啟按鈕:
restartBtn.addEventListener("click", () => {
return main();
});
要在按下時重置電路板,您應該刪除該 if 語句。 或者,您可以更改添加一個! 給它
if (!has_game_ended()) return;
因此,如果 has_game_ended 為真,則該行將被跳過,並且您的 main() 函數中低於該行的重置游戲函數將實際執行。 目前,如果您的游戲已經結束,這不是您想要的,則您返回(退出)該函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.