diff --git a/Project.xml b/Project.xml
index 77c16ee..e0cf3aa 100644
--- a/Project.xml
+++ b/Project.xml
@@ -3,7 +3,7 @@
-
+
diff --git a/source/FreeplayState.hx b/source/FreeplayState.hx
index e893b0b..3a45314 100644
--- a/source/FreeplayState.hx
+++ b/source/FreeplayState.hx
@@ -78,6 +78,7 @@ class FreeplayState extends MusicBeatState
var cantEarnText:FlxText;
var rNText:FlxText;
var bothSidesText:FlxText;
+ var csaText:FlxText;
var rPNT:Array = ['Off', 'Low Chance', 'Medium Chance', 'High Chance', 'Unfair'];
var loadingPack:Bool = false;
@@ -540,7 +541,7 @@ class FreeplayState extends MusicBeatState
add(randomOption);
modeArray.push(randomOption);
- keyOption = new FlxText(settingsBG.x, settingsBG.y + 70, "Keys Added: " + FlxG.save.data.maniabutyeah + " (U)", 20);
+ keyOption = new FlxText(settingsBG.x, settingsBG.y + 60, "Keys Added: " + FlxG.save.data.maniabutyeah + " (U)", 20);
keyOption.setFormat(Paths.font("comic.ttf"), 24, FlxColor.WHITE, RIGHT);
keyOption.antialiasing = FlxG.save.data.antialiasing;
keyOption.scrollFactor.set();
@@ -548,7 +549,7 @@ class FreeplayState extends MusicBeatState
add(keyOption);
modeArray.push(keyOption);
- rNText = new FlxText(settingsBG.x, settingsBG.y + 110, "Randomly Place Note Types: " + rPNT[FlxG.save.data.randomNoteTypes] + " (I)", 20);
+ rNText = new FlxText(settingsBG.x, settingsBG.y + 90, "Randomly Place Note Types: " + rPNT[FlxG.save.data.randomNoteTypes] + " (I)", 20);
rNText.setFormat(Paths.font("comic.ttf"), 16, FlxColor.WHITE, RIGHT);
rNText.antialiasing = FlxG.save.data.antialiasing;
rNText.scrollFactor.set();
@@ -556,7 +557,7 @@ class FreeplayState extends MusicBeatState
add(rNText);
modeArray.push(rNText);
- bothSidesText = new FlxText(settingsBG.x, settingsBG.y + 150, FlxG.save.data.bothSides ? "Both Sides: On (S)" : "Both Sides: Off (S)", 20);
+ bothSidesText = new FlxText(settingsBG.x, settingsBG.y + 110, FlxG.save.data.bothSides ? "Both Sides: On (S)" : "Both Sides: Off (S)", 20);
bothSidesText.setFormat(Paths.font("comic.ttf"), 24, FlxColor.WHITE, RIGHT);
bothSidesText.antialiasing = FlxG.save.data.antialiasing;
bothSidesText.scrollFactor.set();
@@ -564,6 +565,14 @@ class FreeplayState extends MusicBeatState
add(bothSidesText);
modeArray.push(bothSidesText);
+ csaText = new FlxText(settingsBG.x, settingsBG.y + 140, FlxG.save.data.csAllSongs ? "Character Select on All Songs: On (Y)" : "Character Select on All Songs: Off (Y)", 20);
+ csaText.setFormat(Paths.font("comic.ttf"), 14, FlxColor.WHITE, RIGHT);
+ csaText.antialiasing = FlxG.save.data.antialiasing;
+ csaText.scrollFactor.set();
+ csaText.alpha = 0;
+ add(csaText);
+ modeArray.push(csaText);
+
pModeOption = new FlxText(settingsBG.x, settingsBG.y + 230, FlxG.save.data.practiceMode ? "Practice Mode: On (P)" : "Practice Mode: Off (P)", 5);
pModeOption.setFormat(Paths.font("comic.ttf"), 24, FlxColor.WHITE, RIGHT);
pModeOption.antialiasing = FlxG.save.data.antialiasing;
@@ -811,6 +820,12 @@ class FreeplayState extends MusicBeatState
oppOption.text = FlxG.save.data.oppM ? "Oppenent Mode: On (O)" : "Oppenent Mode: Off (O)";
FlxG.save.flush();
}
+ if (FlxG.keys.justPressed.Y)
+ {
+ FlxG.save.data.csAllSongs = !FlxG.save.data.csAllSongs;
+ csaText.text = FlxG.save.data.csAllSongs ? "Character Select on All Songs: On (Y)" : "Character Select on All Songs: Off (Y)";
+ FlxG.save.flush();
+ }
if (FlxG.keys.justPressed.R)
{
FlxG.save.data.randomNotes = !FlxG.save.data.randomNotes;
@@ -1006,7 +1021,7 @@ class FreeplayState extends MusicBeatState
PlayState.storyWeek = songs[curSelected].week;
packTransitionDone = false;
- if ((FlxG.keys.pressed.CONTROL || skipSelect.contains(PlayState.SONG.song.toLowerCase())) && !(PlayState.SONG.song.toLowerCase() == 'exploitation' && !FlxG.save.data.modchart))
+ if ((FlxG.keys.pressed.CONTROL || skipSelect.contains(PlayState.SONG.song.toLowerCase())) /*&& !(PlayState.SONG.song.toLowerCase() == 'exploitation'*/ && !FlxG.save.data.modchart && !FlxG.save.data.csAllSongs)
{
if (curDifficulty == 0) {
if (PlayState.SONG.song.toLowerCase() == 'roofs') {
diff --git a/source/Main.hx b/source/Main.hx
index a9fdc23..41d3dc9 100644
--- a/source/Main.hx
+++ b/source/Main.hx
@@ -25,7 +25,7 @@ class Main extends Sprite
public static var fps:FpsDisplay;
- public static var applicationName:String = "Friday Night Funkin' | VS. Dave and Bambi 3.0b | Moddable 2.5.0";
+ public static var applicationName:String = "Friday Night Funkin' | VS. Dave and Bambi 3.0b | Moddable 2.5.1";
// You can pretty much ignore everything from here on - your code should go in your states.
diff --git a/source/MainMenuState.hx b/source/MainMenuState.hx
index 2733d52..6ada347 100644
--- a/source/MainMenuState.hx
+++ b/source/MainMenuState.hx
@@ -75,7 +75,7 @@ class MainMenuState extends MusicBeatState
public static var daRealEngineVer:String = 'Dave';
public static var engineVer:String = '3.0b';
- public static var fanmadeEngineVer:String = '2.5.0';
+ public static var fanmadeEngineVer:String = '2.5.1';
public static var engineVers:Array =
[
diff --git a/source/PauseSubState.hx b/source/PauseSubState.hx
index 55827a7..7673dba 100644
--- a/source/PauseSubState.hx
+++ b/source/PauseSubState.hx
@@ -114,7 +114,7 @@ class PauseSubState extends MusicBeatSubstate
doALittleTrolling(levelDifficulty);
}
}});
- if (PlayState.isStoryMode || FreeplayState.skipSelect.contains(PlayState.SONG.song.toLowerCase()) || PlayState.instance.localFunny == PlayState.CharacterFunnyEffect.Recurser)
+ if (PlayState.isStoryMode || FreeplayState.skipSelect.contains(PlayState.SONG.song.toLowerCase()) && !FlxG.save.data.csAllSongs || PlayState.instance.localFunny == PlayState.CharacterFunnyEffect.Recurser)
{
menuItems.remove(PauseOption.getOption(menuItems, 'Change Character'));
}
diff --git a/source/SaveDataHandler.hx b/source/SaveDataHandler.hx
index 2896b23..c111abc 100644
--- a/source/SaveDataHandler.hx
+++ b/source/SaveDataHandler.hx
@@ -168,5 +168,8 @@ class SaveDataHandler
if (FlxG.save.data.checkVersion == null)
FlxG.save.data.checkVersion = true;
+
+ if (FlxG.save.data.csAllSongs == null)
+ FlxG.save.data.csAllSongs = false;
}
}
\ No newline at end of file