自己寫了個(gè)貪吃蛇,但是清除定時(shí)器的時(shí)候有點(diǎn)問(wèn)題
//?繪制每一幀function?act()?{????if(d)?{????????direction?=?d;????}????//?進(jìn)行碰撞檢測(cè),如果沒碰到返回true????if(snake.move(direction))?{????????drawBackground();????????snake.draw();????????food.draw();????}?else?{????????//?撞到了,游戲結(jié)束????????gameover();????}}function?start()?{????act();????timer?=?setTimeout(start,?interval);}pause.addEventListener("click",?function()?{????if(pause.innerHTML?===?"暫停")?{????????pause.innerHTML?=?"繼續(xù)";????????clearTimeout(timer);????????window.alert("游戲暫停");????}?else?{????????pause.innerHTML?=?"暫停";????????start();????}})function?gameover()?{????clearTimeout(timer);????window.alert("游戲失敗!");????init();}
pause正常工作,按下暫停按鈕蛇就不動(dòng)了。但是假如是撞墻觸發(fā)了gameover()的話,界面會(huì)回到初始狀態(tài),但是定時(shí)器好像沒有被清除,蛇會(huì)繼續(xù)運(yùn)動(dòng)。
這是為啥?
2019-11-27
完整代碼呢?能借鑒下嗎?
2021-08-19
不會(huì)吧 你學(xué)完前邊這些就寫出來(lái)了游戲嗎