所以我想通过使用几个不同的 CCTMXTiledMaps 将我的游戏分成块。我可以将地图加载到我的主“HelloWorldLayer”中。我还能够检测到玩家精灵是否与具有“可收藏”属性的图块发生碰撞。当我将几个 CCTMXTiledMap 节点添加到游戏中时会出现我的问题,因为它不会对所有节点进行可收集的图块检测,而只是对第一个节点进行检测。
这是我进行检查的工作代码,但仅适用于第一个添加的 CCTMXTledMap:
CGPoint point = [self getTileCoordForPosition:position :map];
CCTMXLayer *metaLayer = [map layerNamed:@"Meta"];
CCTMXLayer *foregroundLayer = [map layerNamed:@"Foreground"];
CCSprite *metaTile = [metaLayer tileAt:point];
CCSprite *foregroundTile = [foregroundLayer tileAt:point];
if (foregroundTile)
{
NSLog(@"HIT!");
// Remove the meta tile and the foreground tile
[metaLayer removeTileAt:point];
[foregroundLayer removeTileAt:point];
}
如何使此代码检查已添加的每个 CCTMXTiledMap 节点?