FlameGame<W extends World> constructor

FlameGame<W extends World>({
  1. Iterable<Component>? children,
  2. W? world,
  3. CameraComponent? camera,
})

Implementation

FlameGame({
  super.children,
  W? world,
  CameraComponent? camera,
}) : assert(
       world != null || W == World,
       'The generics type $W does not conform to the type of '
       '${world?.runtimeType ?? 'World'}.',
     ),
     _world = world ?? World() as W,
     _camera = camera ?? CameraComponent() {
  assert(
    Component.staticGameInstance == null,
    '$this instantiated, while another game ${Component.staticGameInstance} '
    'declares itself to be a singleton',
  );

  if (kDebugMode) {
    DevToolsService.initWithGame(this);
  }

  _camera.world = _world;
  add(_camera);
  add(_world);
}