繁体   English   中英

Javascript(gameQuery game)如何获取tilemap中的下一个底部元素?

[英]Javascript(gameQuery game) how can I get the next bottom element in the tilemap?

如何在不遍历整个tilemap的情况下获取所选tile的下一个底部元素(id,class)? 例如:我的图块$('。gQ_tileType_4')是游戏中的一块石头,如果下一个底部图块$('。gQ_tileType_8')是一个空格,则该图块应该掉落。 现在,我遍历整个tilemap并将元素与那里的xy坐标进行比较。 但是我认为这是错误的方法,因为游戏性能正在降低。

gameQuery为通过以下方式构造的每个图块提供唯一的ID:

$.gameQuery.tileIdPrefix+name+"_"+row+"_"+column

这意味着,如果将您的tilemap称为“ foo”,则可以通过以下方式访问位置(a,b)的tile:

$("#"+$.gameQuery.tileIdPrefi+"foo_"+a+"_"+b);

以同样的方式,您可以通过解析其ID来推断出图块的位置(按索引)。 这意味着对于给定的图块,您可以找到它的位置并专门探查波纹管的状态。

我不确定使用平铺地图是最好的解决方案,因为它们不应更改。 目前它不会造成任何问题,但我无法保证在将来的版本中不会破坏某些功能,例如碰撞检测。

在这种情况下,我将仅使用精灵显示元素。 为了使游戏的游戏逻辑实现更快,我将简单地将图块状态存储在二维数组中,并存储对关联的精灵的引用。

这样,您就可以简单地使用数组并根据需要更新关联的精灵。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM