From 01350851841a8a4d0bd1ca9802633e15fe35152a Mon Sep 17 00:00:00 2001 From: Lukas Klingsbo Date: Mon, 12 Oct 2020 17:57:30 +0200 Subject: [PATCH] Fix alternation bug of combined effect --- doc/examples/effects/sequence_effect/lib/main.dart | 2 ++ lib/effects/combined_effect.dart | 9 --------- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/doc/examples/effects/sequence_effect/lib/main.dart b/doc/examples/effects/sequence_effect/lib/main.dart index f1e5f9af1..a41591f18 100644 --- a/doc/examples/effects/sequence_effect/lib/main.dart +++ b/doc/examples/effects/sequence_effect/lib/main.dart @@ -75,12 +75,14 @@ class MyGame extends BaseGame with TapDetector { isAlternating: false, isInfinite: false, ); + combination.onComplete = () => print("combination complete"); final sequence = SequenceEffect( effects: [move1, scale, combination], isInfinite: false, isAlternating: true, ); + sequence.onComplete = () => print("sequence complete"); greenSquare.addEffect(sequence); } } diff --git a/lib/effects/combined_effect.dart b/lib/effects/combined_effect.dart index 4b400ea5c..2827de824 100644 --- a/lib/effects/combined_effect.dart +++ b/lib/effects/combined_effect.dart @@ -53,10 +53,6 @@ class CombinedEffect extends PositionComponentEffect { if (effects.every((effect) => effect.hasFinished())) { if (isAlternating && curveDirection.isNegative) { effects.forEach((effect) => effect.isAlternating = true); - } else if (isInfinite) { - reset(); - } else if (isAlternating && isMin()) { - dispose(); } } } @@ -96,11 +92,6 @@ class CombinedEffect extends PositionComponentEffect { } } - @override - bool hasFinished() { - return super.hasFinished() && effects.every((e) => e.hasFinished()); - } - void _maybeReverse(PositionComponentEffect effect) { if (isAlternating && !effect.isAlternating && effect.isMax()) { // Make the effect go in reverse