我正在开发一个迷你游戏,并且已经使用Tiled程序绘制了地图。假设我使用了由三张图片组成的图块;如何将它们“转换”为SKSpriteNodes?假设有一个图块代表角色,三个图块代表地面。我希望这四个是精灵节点。
提前致谢
最佳答案
我无法为您提供Swift版本,但请查看以下图片,以更好地了解我在说什么。
在Tiled中创建对象层。
在地图中创建对象并命名。
我假设您正在使用Tiled应用程序来创建地图。您可以在“平铺”应用程序中为地图创建对象层。完成后,只需在地图中创建各种对象即可。例如,创建几个称为“敌人”的对象。该对象层将由JSTileMap读取,并且可以通过以下代码访问:
TMXObjectGroup *group = [tiledMap groupNamed:@"objectLayer"];
// make sure the you use the same groupNamed as is in your map!
NSArray *floorObjects = [group objectsNamed:@"enemy"];
for (NSDictionary *floorObj in floorObjects)
{
CGFloat x = [floorObj[@"x"] floatValue];
CGFloat y = [floorObj[@"y"] floatValue];
CGFloat w = [floorObj[@"width"] floatValue];
CGFloat h = [floorObj[@"height"] floatValue];
// create your SKSpriteNode here
// use the x, y as the node's position in the map
// myNode.position = CGPointMake(x, y);
}