fledge_tiled 0.1.10 copy "fledge_tiled: ^0.1.10" to clipboard
fledge_tiled: ^0.1.10 copied to clipboard

Tiled tilemap support for the Fledge ECS game framework. Load TMX/TSX maps and integrate with the Fledge render system.

example/example.dart

// ignore_for_file: avoid_print
import 'package:fledge_ecs/fledge_ecs.dart';
import 'package:fledge_tiled/fledge_tiled.dart';

void main() async {
  final app = App()
    ..addPlugin(TimePlugin())
    ..addPlugin(TiledPlugin());

  await app.tick();

  // Load a tilemap:
  // final loader = AssetTilemapLoader(
  //   loadStringContent: (path) => rootBundle.loadString(path),
  // );
  //
  // final tilemap = await loader.load(
  //   'assets/maps/level1.tmx',
  //   (path, width, height) async => await loadTexture(path),
  // );
  //
  // // Store in assets
  // app.world.getResource<TilemapAssets>()!.put('level1', tilemap);
  //
  // // Spawn the tilemap
  // app.world.eventWriter<SpawnTilemapEvent>().send(
  //   SpawnTilemapEvent(
  //     assetKey: 'level1',
  //     config: TilemapSpawnConfig(
  //       tileConfig: TileLayerConfig(
  //         generateColliders: true,
  //         colliderLayers: {'Collision'},
  //       ),
  //       objectTypes: {
  //         'enemy': ObjectTypeConfig(
  //           onSpawn: (entity, obj) {
  //             entity.insert(Enemy(
  //               health: obj.properties.getIntOr('health', 100),
  //             ));
  //           },
  //         ),
  //         'collectible': ObjectTypeConfig(
  //           createCollider: false,
  //         ),
  //       },
  //     ),
  //   ),
  // );

  // Query tile layers:
  // for (final (_, layer) in world.query1<TileLayer>().iter()) {
  //   print('Layer: ${layer.name}, tiles: ${layer.tiles?.length}');
  // }

  print('Tiled plugin configured');
  print('See package README for full usage examples');
}

// Placeholder for example
class Enemy {
  final int health;
  Enemy({required this.health});
}
0
likes
160
points
423
downloads

Publisher

verified publisherfledge-framework.dev

Weekly Downloads

Tiled tilemap support for the Fledge ECS game framework. Load TMX/TSX maps and integrate with the Fledge render system.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#ecs #game-engine #tilemap #tiled #flutter-games

Documentation

API reference

License

Apache-2.0 (license)

Dependencies

fledge_ecs, fledge_render, fledge_render_2d, flutter, meta, tiled, vector_math, xml

More

Packages that depend on fledge_tiled