From 802ec7a940765a4078ce01709db4a5b2c5fbc6fa Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Mon, 14 Oct 2024 16:28:16 -0500 Subject: [PATCH] don't draw darkness unless there are shaped lights --- src/hollywoo_flixel/FlxDirector.kiss | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/hollywoo_flixel/FlxDirector.kiss b/src/hollywoo_flixel/FlxDirector.kiss index 32b7675..4e0d6e7 100644 --- a/src/hollywoo_flixel/FlxDirector.kiss +++ b/src/hollywoo_flixel/FlxDirector.kiss @@ -489,13 +489,19 @@ (Night NIGHT_COLOR) (otherwise FlxColor.TRANSPARENT))) (darkness.makeGraphic FlxG.width FlxG.height darkColor true) - (doFor source lightSources (drawLight source)) + // When there are no shaped light sources, don't draw darkness, it's usually just annoying. + (localVar &mut lightIsHere false) + (doFor source lightSources + (set lightIsHere true) + (drawLight source)) (blackAlphaMaskFlxSprite darkness lightMask darkness) (set lightSprite.cameras [flxMovie.screenCamera]) (set darkness.alpha darkColor.alphaFloat) (set darkness.cameras [flxMovie.screenCamera]) - (FlxG.state.add darkness) - (FlxG.state.add lightSprite)) + // TODO put these in defined sprite layers! + (when lightIsHere + (FlxG.state.add darkness) + (FlxG.state.add lightSprite))) (method :Void hideLighting [] (when darkness