Aplicacions amb Flutter, Dart i Flame

Tutorial Flutter Flame Projectes   Recursos CITCEA
Exemples Dart Dades pràctiques     Inici

Programa principal

El programa principal quan fem servir Flame és força diferent del que tenim en les aplicacions de Flutter normals.

import 'package:flame/game.dart';
import 'package:flutter/material.dart';
void main() {
  final game = FlameGame();
  runApp(GameWidget(game: game));
}

El giny GameWidget és el que ens permet executar el joc dins de l'aplicació. En el programa anterior hi hem posat el joc FlameGame que ja ve per defecte i que, de fet, no fa res. Els nostres jocs seran extensions del joc per defecte.

Important: Quan es simulen les aplicacions fetes amb Flame cal sempre recarregar-les completament (amb el botó recarrega), l'actualització ràpida no funciona.

Quan es controlen els estats del joc, aquest es defineix com una classe:

class GameApp extends StatelessWidget {
  const GameApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
    ...
      child: GameWidget.controlled(
        gameFactory: Breakout.new,
        overlayBuilderMap: {
          PlayState.inici.name: (context, game) => Center(
            child: Text(
              'PICA PER COMENÇAR',
              style: Theme.of(context).textTheme.headlineLarge,
            ),
           ),
           ...
        }
      )
...

Llavors el programa principal quedaria així:

void main() {
  runApp(const GameApp());
}

 

 

 

 

 

 

 

 

 

 

Llicència de Creative Commons
Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.