From fa1d932705356323a8925ab2cf46957e372808b5 Mon Sep 17 00:00:00 2001 From: alestiago Date: Mon, 18 Apr 2022 13:21:26 +0100 Subject: [PATCH] feat: implemented DebugGameController --- lib/game/pinball_game.dart | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/game/pinball_game.dart b/lib/game/pinball_game.dart index b1ff2c6c..1781559e 100644 --- a/lib/game/pinball_game.dart +++ b/lib/game/pinball_game.dart @@ -5,6 +5,7 @@ import 'package:flame/components.dart'; import 'package:flame/input.dart'; import 'package:flame_bloc/flame_bloc.dart'; import 'package:flame_forge2d/flame_forge2d.dart'; +import 'package:pinball/flame/flame.dart'; import 'package:pinball/game/game.dart'; import 'package:pinball/gen/assets.gen.dart'; import 'package:pinball_audio/pinball_audio.dart'; @@ -168,12 +169,21 @@ class DebugPinballGame extends PinballGame with TapDetector { await add(spriteComponent); } +} + +// FIXME(alestiago): This doesn't work. Is an issue with Flame. +// https://github.com/flame-engine/flame/issues/1132 +// https://github.com/flame-engine/flame/pull/1506 +class DebugGameController extends ComponentController + with Tappable { + DebugGameController(DebugPinballGame game) : super(game); @override - void onTapUp(TapUpInfo info) { + bool onTapUp(TapUpInfo info) { add( ControlledBall.debug()..initialPosition = info.eventPosition.game, ); + return false; } }