gpt4 book ai didi

c++ - 贪吃蛇游戏 - 食物 block 的随机数生成器

转载 作者:行者123 更新时间:2023-11-30 05:01:40 26 4
gpt4 key购买 nike

我正在尝试使用 Arduino (C++) 制作一个 16x16 LED 贪吃蛇游戏。我需要为下一个食物 block 分配一个随机网格索引。我拥有的是蛇 (snakeSquares) 占用的索引列表。

因此,我的想法是我需要生成一个潜在的 foodSquares 列表。然后我可以从该列表中随机选择一个索引,并将其中的值用于我的下一个食物方 block 。

我对此有一些想法,但它们看起来有点笨拙,所以我一直在寻找一些反馈。我正在使用 Arduino LinkedList.h 库代替 stdio.h 作为我的列表(用 random() 代替 rand()):

  1. 生成一个包含整数 [0, 255] 的列表 (foodSquares),以便索引对应于列表中的值(我不知道有什么快速方法可以做到这一点,可能需要使用一个 for 循环)。

  2. 生成 snakeSquares 列表时,设置 foodSquares[i] = -1。然后,遍历 foodSquares 并删除所有等于 -1 的元素。

  3. 然后,从[0, foodSquares.size()-1]中生成一个随机数randNum,使下一个食物方 block 索引等于foodSquares[randNum]。

所以我想我的问题是,这种方法是否有效,是否有更好的方法?

谢谢。

最佳答案

不需要更多列表的潜在方法:

  • 计算代表步数的随机整数。
  • 以头或尾作为起始 block 。
  • 每一步随机移动相邻的免费瓷砖。

关于c++ - 贪吃蛇游戏 - 食物 block 的随机数生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50193912/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com