From 63261cbc29a27f1f970c77f8727483eff858d024 Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Sat, 26 Aug 2023 13:57:45 -0600 Subject: [PATCH] remove titlecards when skipping --- src/hollywoo_flixel/FlxDirector.kiss | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/src/hollywoo_flixel/FlxDirector.kiss b/src/hollywoo_flixel/FlxDirector.kiss index e45e5d8..0862da8 100644 --- a/src/hollywoo_flixel/FlxDirector.kiss +++ b/src/hollywoo_flixel/FlxDirector.kiss @@ -107,6 +107,7 @@ labels ->label { (let [m flxMovie] + // This calls cleanup: (m.prepareForSkip) ((dictGet runners label) m.skipMovie)) } true "escape") @@ -399,11 +400,23 @@ (FlxG.state.add lightSprite)) (method :Void hideLighting [] - (FlxG.state.remove darkness true) - (FlxG.state.remove lightSprite true)) + (when darkness + (FlxG.state.remove darkness true) + (set darkness null)) + (when lightSprite + (FlxG.state.remove lightSprite true) + (set lightSprite null))) (method :Void cleanup [] + (hideTitleCard) + (hideBlackScreen) + (hideDialog) + (hideLighting) + + // Don't remove the sprite layers, which are added in new() + // TODO does this need to clear out currentSounds, etc? Probably + ) (method :Option autoZConfig [] (Some (object zPerLayer flxMovie.STAGE_BEHIND_DY frontLayer 0))) @@ -511,8 +524,9 @@ (FlxG.state.add loop))) (method :Void hideTitleCard [] - (FlxG.state.remove titleCard true) - (set titleCard null)) + (when titleCard + (FlxG.state.remove titleCard true) + (set titleCard null))) // TODO these could be customizable to the Actor, wrylies, etc. (var DIALOG_BOX_COLOR FlxColor.BLACK) @@ -823,7 +837,9 @@ (FlxG.state.add blackBG)) (method :Void hideBlackScreen [] - (FlxG.state.remove blackBG true)) + (when blackBG + (FlxG.state.remove blackBG true) + (set blackBG null))) (var IDEAL_SCROLL_SPEED 200)