我正在使用canvas
和JavaScript创建一个完全基于瓷砖的平台游戏。在游戏中,如何存储块和物品(墙壁、地板、物品)是最好的方法?问题在于每个瓷砖都可以被摧毁或创建。
目前,我有一个二维数组,这样我就能够快速检查特定X和Y位置是否有物品。但问题在于当用户移动并且地图需要滚动时,我需要重新分配每个块。而当物品位于x = 0
时会发生什么?我不能使用负索引。
我希望滚动是模拟的,而不是一次滚动一个瓷砖。另外,我计划在用户移动时随机生成地图,如果以前没有生成过的话。因此,一旦生成了某些内容,它应该永远保持不变。
还有一点要提到的是,它也将是多人游戏。因此,对屏幕进行分块处理是一个很好的想法,直到缓存数据变得脏,并且需要从数据库获取最新数据。啊,我对这一切都很陌生;看起来似乎不可能,任何帮助都将不胜感激。