javascript - Canvas 游戏 : My food disappears

标签 javascript html canvas coffeescript

我正在观看有关构建 Canvas 游戏的 ThinkVitamin 截屏视频,但似乎缺少最后一部分,我不得不自己弄清楚很多东西。

我成功构建了游戏,但是其中有两个错误不断出现。

编辑:将第一个错误移到另一个问题中,因为这个问题得到了解答!

另一个错误是食物有时不会出现。我不知道为什么会这样,但我唯一能想到的就是蛇体内出现的食物。但是,我也对此进行了检查,但它仍然发生:

inSnake = (x, y) ->
    for part in Snake.position              # check if the food is being placed inside the snake
        if x == part.x && y == part.y
            true
    false

placeFood = ->
    x = Math.round Math.random() * MAX_X - 1
    y = Math.round Math.random() * MAX_Y - 1

    if inSnake x, y                                     # if so, run placeFood() again
      placeFood()   

    Food.position = { x: x, y: y }

食物应该随机放置在我的 Canvas 内(我指定了 MAX_X 和 MAX_Y),所以我只能认为它在蛇里面。我在调试这个问题时遇到了麻烦。

可以找到该应用程序的演示 here .

提前致谢!

最佳答案

inSnake = (x, y) ->
    for part in Snake.position              
        if x == part.x && y == part.y
            true
    false

看起来你想说 return true。否则它将始终运行整个循环并在函数结束时返回 false

关于javascript - Canvas 游戏 : My food disappears,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7993579/

相关文章:

Javascript:匹配变量名称并应用于匹配的变量

javascript - 如何在 javascript 中获取 CSS 字体大小?

python - 如何查找一个 Canvas 项目是否正在接触另一个 Canvas 项目,Tkinter

html - 社交媒体粘性垂直对齐

JavaScript 贷款计算器问题

javascript - HTML Canvas 放大

c# - 密码的按需正则表达式

javascript - 将带有用户输入值的 HTML 表单 XML 保存到 javascript 变量?

javascript - 将图像大小调整与动画移动相结合时的浏览器性能

javascript - 谷歌组织结构图 : Modify node parent