From 95aba09cd6c294ae5a2f3d77d4111903c945f1fc Mon Sep 17 00:00:00 2001 From: Lasercar <64717068+Lasercar@users.noreply.github.com> Date: Wed, 30 Apr 2025 20:09:15 +1000 Subject: [PATCH] Fix target variation Also no need to do instrumental stuff if not random --- source/funkin/ui/freeplay/FreeplayState.hx | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/source/funkin/ui/freeplay/FreeplayState.hx b/source/funkin/ui/freeplay/FreeplayState.hx index 82bcc357b..f6df6b21a 100644 --- a/source/funkin/ui/freeplay/FreeplayState.hx +++ b/source/funkin/ui/freeplay/FreeplayState.hx @@ -2461,6 +2461,10 @@ class FreeplayState extends MusicBeatSubState letterSort.inputEnabled = false; var targetSongCap:SongMenuItem = FlxG.random.getObject(availableSongCapsules); + // Seeing if I can do an animation... + curSelected = grpCapsules.members.indexOf(targetSongCap); + changeSelection(); // Trigger an update. This will also fix the target variation. + var targetSongId:String = targetSongCap?.freeplayData?.data.id ?? 'unknown'; var targetSongNullable:Null = SongRegistry.instance.fetchEntry(targetSongId); if (targetSongNullable == null) @@ -2483,14 +2487,6 @@ class FreeplayState extends MusicBeatSubState return; } - var baseInstrumentalId:String = targetSong.getBaseInstrumentalId(targetDifficultyId, targetDifficulty?.variation ?? Constants.DEFAULT_VARIATION) ?? ''; - var altInstrumentalIds:Array = targetSong.listAltInstrumentalIds(targetDifficultyId, - targetDifficulty?.variation ?? Constants.DEFAULT_VARIATION) ?? []; - - // Choose a random instrumental - var instrumentalIds:Array = [baseInstrumentalId].concat(altInstrumentalIds); - var targetInstrumentalId:String = FlxG.random.getObject(instrumentalIds); - // Seeing if I can do an animation... curSelected = grpCapsules.members.indexOf(targetSongCap); changeSelection(0); // Trigger an update. @@ -2501,6 +2497,13 @@ class FreeplayState extends MusicBeatSubState if (instChoice == 'random') { + var baseInstrumentalId:String = targetSong.getBaseInstrumentalId(targetDifficultyId, targetDifficulty?.variation ?? Constants.DEFAULT_VARIATION) ?? ''; + var altInstrumentalIds:Array = targetSong.listAltInstrumentalIds(targetDifficultyId, + targetDifficulty?.variation ?? Constants.DEFAULT_VARIATION) ?? []; + + // Choose a random instrumental + var instrumentalIds:Array = [baseInstrumentalId].concat(altInstrumentalIds); + var targetInstrumentalId:String = FlxG.random.getObject(instrumentalIds); // Hit Confirm on that song with random instrumental capsuleOnConfirmDefault(targetSongCap, targetInstrumentalId); }