From 125aa0a438e7032db6ecd2efef070913b14caead Mon Sep 17 00:00:00 2001 From: Cameron Taylor Date: Thu, 3 Jul 2025 18:29:18 -0400 Subject: [PATCH] some cute guard clauses --- source/funkin/ui/freeplay/FreeplayState.hx | 76 +++++++++++----------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/source/funkin/ui/freeplay/FreeplayState.hx b/source/funkin/ui/freeplay/FreeplayState.hx index 7a9105cf4..6394bead0 100644 --- a/source/funkin/ui/freeplay/FreeplayState.hx +++ b/source/funkin/ui/freeplay/FreeplayState.hx @@ -1664,52 +1664,52 @@ class FreeplayState extends MusicBeatSubState function handleDebugKeys():Void { #if FEATURE_CHART_EDITOR - if (controls.DEBUG_CHART && !busy) + if (busy) return; + if (!controls.DEBUG_CHART) return; + + busy = true; + + var targetSongID = grpCapsules.members[curSelected]?.freeplayData?.data.id ?? 'unknown'; + if (targetSongID == 'unknown') { - busy = true; - var targetSongID = grpCapsules.members[curSelected]?.freeplayData?.data.id ?? 'unknown'; - if (targetSongID == 'unknown') - { - trace('CHART RANDOM SONG'); - letterSort.inputEnabled = false; + letterSort.inputEnabled = false; - var availableSongCapsules:Array = grpCapsules.members.filter(function(cap:SongMenuItem) { - // Dead capsules are ones which were removed from the list when changing filters. - return cap.alive && cap.freeplayData != null; - }); + var availableSongCapsules:Array = grpCapsules.members.filter(function(cap:SongMenuItem) { + // Dead capsules are ones which were removed from the list when changing filters. + return cap.alive && cap.freeplayData != null; + }); - trace('Available songs: ${availableSongCapsules.map(function(cap) { + trace('Available songs: ${availableSongCapsules.map(function(cap) { return cap?.freeplayData?.data.songName; })}'); - if (availableSongCapsules.length == 0) - { - trace('No songs available!'); - busy = false; - letterSort.inputEnabled = true; - FunkinSound.playOnce(Paths.sound('cancelMenu')); - return; - } - - var targetSong:SongMenuItem = FlxG.random.getObject(availableSongCapsules); - - // Seeing if I can do an animation... - curSelected = grpCapsules.members.indexOf(targetSong); - changeSelection(0); - targetSongID = grpCapsules.members[curSelected]?.freeplayData?.data.id ?? 'unknown'; + if (availableSongCapsules.length == 0) + { + trace('No songs available!'); + busy = false; + letterSort.inputEnabled = true; + FunkinSound.playOnce(Paths.sound('cancelMenu')); + return; } - // Play the confirm animation so the user knows they actually did something. - FunkinSound.playOnce(Paths.sound('confirmMenu')); - if (dj != null) dj.confirm(); - new FlxTimer().start(styleData?.getStartDelay(), function(tmr:FlxTimer) { - FlxG.switchState(() -> new ChartEditorState( - { - targetSongId: targetSongID, - targetSongDifficulty: currentDifficulty, - targetSongVariation: currentVariation, - })); - }); + + var targetSong:SongMenuItem = FlxG.random.getObject(availableSongCapsules); + + // Seeing if I can do an animation... + curSelected = grpCapsules.members.indexOf(targetSong); + changeSelection(0); + targetSongID = grpCapsules.members[curSelected]?.freeplayData?.data.id ?? 'unknown'; } + // Play the confirm animation so the user knows they actually did something. + FunkinSound.playOnce(Paths.sound('confirmMenu')); + if (dj != null) dj.confirm(); + new FlxTimer().start(styleData?.getStartDelay(), function(tmr:FlxTimer) { + FlxG.switchState(() -> new ChartEditorState( + { + targetSongId: targetSongID, + targetSongDifficulty: currentDifficulty, + targetSongVariation: currentVariation, + })); + }); #end }