A Dart Tiled library.
To include the package as a depencency in your pubspec.yaml
, run the following (or add it manually):
dart pub add tiled
Import the package like this:
import 'package:tiled/tiled.dart';
Load a TMX file into a string by any means, and then pass the string to TileMapParser.parseXml():
final String tmxBody = /* ... */;
final TiledMap mapTmx = TileMapParser.parseTmx(tmxBody);
If your tmx file includes a external tsx reference, you have to add a CustomParser
class CustomTsxProvider extends TsxProvider {
@override
Parser getSource(String fileName) {
final xml = File(fileName).readAsStringSync();
final node = XmlDocument.parse(xml).rootElement;
return XmlParser(node);
}
}
And use it in the parseTmx method
final String tmxBody = /* ... */;
final TiledMap mapTmx = TileMapParser.parseTmx(tmxBody, tsx: CustomTsxProvider());
Alternatively load a json file.
final String jsonBody = /* ... */;
final TiledMap mapTmx = TileMapParser.parseJson(jsonBody);
For further information and more usage examples, please take a look at the examples in flame_tiled.