Skip to content

Commit d0ea056

Browse files
committed
whoops
1 parent 7b8a7f9 commit d0ea056

File tree

4 files changed

+52
-48
lines changed

4 files changed

+52
-48
lines changed

source/archipelago/APGameState.hx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1059,7 +1059,7 @@ class APGameState
10591059
info().casualSync = false;
10601060
try
10611061
{
1062-
states.freeplay.FreeplayState.instance.fpManager.reloadFreeplay(true);
1062+
FreeplayManager.getInstance().fpManager.reloadFreeplay(true);
10631063
}
10641064
catch (e:Dynamic)
10651065
{

source/archipelago/Client.hx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1446,7 +1446,7 @@ class Client {
14461446
APGameState.instance.APItems = APGameState.instance.findSpecialItems();
14471447
APGameState.instance.initSaveData();
14481448
try {
1449-
states.freeplay.FreeplayState.instance.fpManager.reloadFreeplay(true);
1449+
FreeplayManager.getInstance().fpManager.reloadFreeplay(true);
14501450
} catch (e:Dynamic) {
14511451
backend.MusicBeatState.resetState();
14521452
}
@@ -1500,7 +1500,7 @@ class Client {
15001500
APGameState.instance.APItems = APGameState.instance.findSpecialItems();
15011501
APGameState.instance.initSaveData();
15021502
try {
1503-
states.freeplay.FreeplayState.instance.fpManager.reloadFreeplay(true);
1503+
FreeplayManager.getInstance().fpManager.reloadFreeplay(true);
15041504
} catch (e:Dynamic) {
15051505
backend.MusicBeatState.resetState();
15061506
}

source/managers/APFreeplayManager.hx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ class APFreeplayManager extends FreeplayManager {
133133
}
134134

135135
trace("Reloading songs in FreeplayState instance...");
136-
FreeplayState.instance.fpManager.reloadFreeplay(true);
136+
FreeplayManager.getInstance().fpManager.reloadFreeplay(true);
137137

138138
trace("Checking if the song is a victory song...");
139139
if (archipelago.APEntryState.apGame.checkGoal(songName, modName)) {

source/states/freeplay/OsuFreeplayState.hx

Lines changed: 48 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,8 @@ class OsuFreeplayState extends MusicBeatState
6262
var visual:AudioDisplay;
6363
var vocalvisual:AudioDisplay = null;
6464
var oppvisual:AudioDisplay = null;
65+
66+
public var fpManager:FreeplayManager;
6567
override function create()
6668
{
6769
#if windows
@@ -71,6 +73,8 @@ class OsuFreeplayState extends MusicBeatState
7173

7274
instance = this; // For Archipelago
7375

76+
fpManager = FreeplayManager.loadFPManager();
77+
7478
// Check if the Victory Song is cleared.
7579
{
7680
APFreeplayManager.checkVictory();
@@ -123,7 +127,7 @@ class OsuFreeplayState extends MusicBeatState
123127
iconGrp = new FlxTypedGroup<HealthIcon>();
124128
add(iconGrp);
125129

126-
FreeplayState.instance.fpManager.reloadFreeplay(true);
130+
fpManager.reloadFreeplay(true);
127131

128132
if(WeekData.weeksList.length < 1)
129133
{
@@ -292,25 +296,25 @@ class OsuFreeplayState extends MusicBeatState
292296
if (APEntryState.inArchipelagoMode) {
293297
victoryColor = FlxColor.fromHSL(((e / 2) / 300 * 360) % 360, 1.0, 0.5 * 1.0);
294298

295-
for (i in 0...FreeplayState.instance.fpManager.songList.length) {
296-
if (APFreeplayManager.isVictorySong(FreeplayState.instance.fpManager.songList[i].songName, FreeplayState.instance.fpManager.songList[i].folder)) {
299+
for (i in 0...fpManager.songList.length) {
300+
if (APFreeplayManager.isVictorySong(fpManager.songList[i].songName, fpManager.songList[i].folder)) {
297301
songBox.members[i].color = victoryColor;
298302
}
299303
}
300304

301305
if (FlxG.keys.justPressed.L && APEntryState.inArchipelagoMode && !isTyping) {
302306
try { //Because this menu has no actual difficulty select, just assume it's the first difficulty
303-
var songLowercase:String = Paths.formatToSongPath(FreeplayState.instance.fpManager.songList[curSelected].songName);
307+
var songLowercase:String = Paths.formatToSongPath(fpManager.songList[curSelected].songName);
304308
var poop:String = Highscore.formatSong(songLowercase, 0);
305-
Mods.currentModDirectory = FreeplayState.instance.fpManager.songList[curSelected].folder;
309+
Mods.currentModDirectory = fpManager.songList[curSelected].folder;
306310
Song.loadFromJson(poop, songLowercase);
307311
PlayState.isStoryMode = false;
308312
PlayState.storyDifficulty = 0;
309313
} catch (e:Dynamic) {
310314
trace('Error loading song: ' + e);
311315
}
312316
try {
313-
APFreeplayManager.forceUnlockCheck(FreeplayState.instance.fpManager.songList[curSelected].songName, WeekData.getCurrentWeek().folder);
317+
APFreeplayManager.forceUnlockCheck(fpManager.songList[curSelected].songName, WeekData.getCurrentWeek().folder);
314318
} catch (e:Dynamic) {
315319
trace("You can't check nothing, silly!");
316320
}
@@ -319,7 +323,7 @@ class OsuFreeplayState extends MusicBeatState
319323

320324
if (FlxG.keys.justPressed.H && APEntryState.inArchipelagoMode && !isTyping) {
321325
try {
322-
var SongInfo = APEntryState.apGame.getSongAndMod(FreeplayState.instance.fpManager.songList[curSelected].songName + (FreeplayState.instance.fpManager.songList[curSelected].folder != "" ? " (" + FreeplayState.instance.fpManager.songList[curSelected].folder + ")" : ""));
326+
var SongInfo = APEntryState.apGame.getSongAndMod(fpManager.songList[curSelected].songName + (fpManager.songList[curSelected].folder != "" ? " (" + fpManager.songList[curSelected].folder + ")" : ""));
323327
if (APEntryState.ap != null) {
324328
APEntryState.ap.Say("!hint " + SongInfo.song + ((SongInfo.mod != "" && SongInfo.mod != null) ? " (" + SongInfo.mod + ")" : ""));
325329
archipelago.console.SideUI.instance.active = true;
@@ -428,10 +432,10 @@ class OsuFreeplayState extends MusicBeatState
428432

429433
if(controls.ACCEPT)
430434
{
431-
var vicCheck:Bool = APFreeplayManager.isVictorySong(FreeplayState.instance.fpManager.songList[curSelected].songName, FreeplayState.instance.fpManager.songList[curSelected].folder) && APInfo.ticketCount >= APInfo.ticketWinCount;
435+
var vicCheck:Bool = APFreeplayManager.isVictorySong(fpManager.songList[curSelected].songName, fpManager.songList[curSelected].folder) && APInfo.ticketCount >= APInfo.ticketWinCount;
432436
//You need the song AND the tickets.
433437
trace('can play victory song: ${vicCheck}');
434-
if (APFreeplayManager.isVictorySong(FreeplayState.instance.fpManager.songList[curSelected].songName, FreeplayState.instance.fpManager.songList[curSelected].folder) && !vicCheck) {
438+
if (APFreeplayManager.isVictorySong(fpManager.songList[curSelected].songName, fpManager.songList[curSelected].folder) && !vicCheck) {
435439
FlxG.camera.shake(0.005, 0.5);
436440
FlxG.sound.play(Paths.sound("badnoise"+FlxG.random.int(1,3)), 1);
437441
var ogColor = songBox.members[curSelected].color;
@@ -443,7 +447,7 @@ class OsuFreeplayState extends MusicBeatState
443447
return;
444448
}
445449

446-
if (APFreeplayManager.trueMissing.contains(FreeplayState.instance.fpManager.songList[curSelected].songName) && !APFreeplayManager.unplayedList.contains(FreeplayState.instance.fpManager.songList[curSelected].songName)) {
450+
if (APFreeplayManager.trueMissing.contains(fpManager.songList[curSelected].songName) && !APFreeplayManager.unplayedList.contains(fpManager.songList[curSelected].songName)) {
447451
FlxG.camera.shake(0.005, 0.5);
448452
FlxG.sound.play(Paths.sound("badnoise"+FlxG.random.int(1,3)), 1);
449453
var ogColor = songBox.members[curSelected].color;
@@ -456,7 +460,7 @@ class OsuFreeplayState extends MusicBeatState
456460

457461
//reloadSongArray();
458462
inSub = true;
459-
openSubState(new DifficultySelectorSubState(FreeplayState.instance.fpManager.songList[curSelected]));
463+
openSubState(new DifficultySelectorSubState(fpManager.songList[curSelected]));
460464
}
461465

462466
if(FlxG.keys.justPressed.TAB || FlxG.keys.justPressed.CONTROL) //adding control for consistancy sake
@@ -496,11 +500,11 @@ class OsuFreeplayState extends MusicBeatState
496500
isTyping = false;
497501
if(searchTypeText.text == '') {
498502
searchTypeText.text = 'Type Here To Search!';
499-
FreeplayState.instance.fpManager.reloadFreeplay(true);
503+
fpManager.reloadFreeplay(true);
500504
trace("Regual Refr");
501505
}
502506
else
503-
FreeplayState.instance.fpManager.reloadFreeplay(false, searchTypeText.text);
507+
fpManager.reloadFreeplay(false, searchTypeText.text);
504508
}
505509
}
506510

@@ -550,13 +554,13 @@ class OsuFreeplayState extends MusicBeatState
550554
for(item in songBox)
551555
item.posY = i++ - curSelected;
552556

553-
if (FreeplayState.instance.fpManager.songList[curSelected] != null)
557+
if (fpManager.songList[curSelected] != null)
554558
{
555559
WeekData.setDirectoryFromWeek();
556-
Mods.currentModDirectory = FreeplayState.instance.fpManager.songList[curSelected].folder;
557-
PlayState.storyWeek = FreeplayState.instance.fpManager.songList[curSelected].week;
560+
Mods.currentModDirectory = fpManager.songList[curSelected].folder;
561+
PlayState.storyWeek = fpManager.songList[curSelected].week;
558562
try {
559-
switch (FreeplayState.instance.fpManager.songList[curSelected].songName)
563+
switch (fpManager.songList[curSelected].songName)
560564
{
561565
case 'Small Argument' | 'Beat Battle 2':
562566
Difficulty.list = ['Hard'];
@@ -566,7 +570,7 @@ class OsuFreeplayState extends MusicBeatState
566570
Difficulty.loadFromWeek();
567571
}
568572
} catch(e:Dynamic) {}
569-
try {metadata = FreeplayState.instance.fpManager.metadata.get(FreeplayState.instance.fpManager.songList[curSelected].songName.toLowerCase());}
573+
try {metadata = fpManager.metadata.get(fpManager.songList[curSelected].songName.toLowerCase());}
570574
catch(e) {metadata = null;}
571575

572576
if (metadata != null && metadata.freeplay != null) {
@@ -627,7 +631,7 @@ class OsuFreeplayState extends MusicBeatState
627631
}
628632

629633
function loadDiffs(song:Dynamic) {
630-
var week:WeekData = WeekData.weeksLoaded.get(WeekData.weeksList[FreeplayState.instance.fpManager.songList[curSelected].week]);
634+
var week:WeekData = WeekData.weeksLoaded.get(WeekData.weeksList[fpManager.songList[curSelected].week]);
631635
Difficulty.loadFromWeek(week);
632636

633637
var diffInt:Int = 0;
@@ -636,7 +640,7 @@ class OsuFreeplayState extends MusicBeatState
636640
var songBox:SongBox = new SongBox(320, 100);
637641
songBox.loadGraphic(Paths.image('freeplay/OSUState/bars/background2'));
638642
songBox.setGraphicSize(650, 50);
639-
songBox.setColorTransform(-1, -1, -1, 1, FreeplayState.instance.fpManager.songList[curSelected].color[0][0], FreeplayState.instance.fpManager.songList[curSelected].color[0][1], FreeplayState.instance.fpManager.songList[curSelected].color[0][2], 1);
643+
songBox.setColorTransform(-1, -1, -1, 1, fpManager.songList[curSelected].color[0][0], fpManager.songList[curSelected].color[0][1], fpManager.songList[curSelected].color[0][2], 1);
640644
songBox.ID = song.ID + diffInt;
641645
this.songBox.add(songBox);
642646

@@ -664,7 +668,7 @@ class OsuFreeplayState extends MusicBeatState
664668

665669
APFreeplayManager.checkSongStatus();
666670

667-
for (i in 0...FreeplayState.instance.fpManager.songList.length)
671+
for (i in 0...fpManager.songList.length)
668672
{
669673
var songName:String = '';
670674
var modName:String = '';
@@ -674,14 +678,14 @@ class OsuFreeplayState extends MusicBeatState
674678
var someLocationsNotMissing:Bool = false;
675679

676680
if (APEntryState.inArchipelagoMode) {
677-
songName = FreeplayState.instance.fpManager.songList[i].songName;
678-
modName = FreeplayState.instance.fpManager.songList[i].folder;
681+
songName = fpManager.songList[i].songName;
682+
modName = fpManager.songList[i].folder;
679683
locationId = APEntryState.apGame.locationData(songName, modName).concat(APEntryState.apGame.noteData(songName, modName));
680684
isMissing = [for (ID in locationId) APEntryState.apGame.isLocationMissing(APEntryState.apGame.info().get_location_name(ID))].indexOf(true) != -1 || locationId.length == 0;
681685
color = isMissing ? FlxColor.RED : FlxColor.GREEN;
682686
}
683687

684-
Mods.currentModDirectory = FreeplayState.instance.fpManager.songList[i].folder;
688+
Mods.currentModDirectory = fpManager.songList[i].folder;
685689

686690
var songBox:SongBox = new SongBox(320, 100);
687691
songBox.loadGraphic(Paths.image('freeplay/OSUState/bars/background2'));
@@ -698,26 +702,26 @@ class OsuFreeplayState extends MusicBeatState
698702
: songBox.color = 0xFFFFD700)
699703
: songBox.color = color;
700704
} else {
701-
songBox.setColorTransform(-1, -1, -1, 1, FreeplayState.instance.fpManager.songList[i].color[0][0], FreeplayState.instance.fpManager.songList[i].color[0][1], FreeplayState.instance.fpManager.songList[i].color[0][2], 1);
705+
songBox.setColorTransform(-1, -1, -1, 1, fpManager.songList[i].color[0][0], fpManager.songList[i].color[0][1], fpManager.songList[i].color[0][2], 1);
702706
}
703707
songBox.ID = i;
704708
this.songBox.add(songBox);
705709

706710
var isLock:Bool = APEntryState.inArchipelagoMode && CategoryState.loadWeekForce == "all" && isMissing && !APFreeplayManager.unplayedList.contains(songName);
707-
var icon:HealthIcon = new HealthIcon(isLock ? "lock" : FreeplayState.instance.fpManager.songList[i].songCharacter, false);
711+
var icon:HealthIcon = new HealthIcon(isLock ? "lock" : fpManager.songList[i].songCharacter, false);
708712
icon.setPosition(320, 100);
709713
icon.ID = i;
710714
icon.setGraphicSize(Std.int(icon.width / 1.7), Std.int(icon.height / 1.7));
711715
iconGrp.add(icon);
712716

713-
try {metadata = FreeplayState.instance.fpManager.metadata.get(FreeplayState.instance.fpManager.songList[i].songName.toLowerCase());}
717+
try {metadata = fpManager.metadata.get(fpManager.songList[i].songName.toLowerCase());}
714718
catch(e) {metadata = null;}
715719

716720
var text:FlxText = new FlxText(0, 0, 500, '', 20);
717721
if (metadata != null)
718-
text.text = FreeplayState.instance.fpManager.songList[i].songName + '\nBy ${metadata.song.artist}';
722+
text.text = fpManager.songList[i].songName + '\nBy ${metadata.song.artist}';
719723
else
720-
text.text = FreeplayState.instance.fpManager.songList[i].songName + '\nBy Unknown';
724+
text.text = fpManager.songList[i].songName + '\nBy Unknown';
721725
text.alignment = 'left';
722726
text.ID = i;
723727
textGrp.add(text);
@@ -740,7 +744,7 @@ class OsuFreeplayState extends MusicBeatState
740744
if (APEntryState.inArchipelagoMode)
741745
APFreeplayManager.checkSongStatus();
742746

743-
for (i in 0...FreeplayState.instance.fpManager.songList.length)
747+
for (i in 0...fpManager.songList.length)
744748
{
745749
var songName:String = '';
746750
var modName:String = '';
@@ -750,14 +754,14 @@ class OsuFreeplayState extends MusicBeatState
750754
var someLocationsNotMissing:Bool = false;
751755

752756
if (APEntryState.inArchipelagoMode) {
753-
songName = FreeplayState.instance.fpManager.songList[i].songName;
754-
modName = FreeplayState.instance.fpManager.songList[i].folder;
757+
songName = fpManager.songList[i].songName;
758+
modName = fpManager.songList[i].folder;
755759
locationId = APEntryState.apGame.locationData(songName, modName).concat(APEntryState.apGame.noteData(songName, modName));
756760
isMissing = [for (ID in locationId) APEntryState.apGame.isLocationMissing(APEntryState.apGame.info().get_location_name(ID))].indexOf(true) != -1 || locationId.length == 0;
757761
color = isMissing ? FlxColor.RED : FlxColor.GREEN;
758762
}
759763

760-
Mods.currentModDirectory = FreeplayState.instance.fpManager.songList[i].folder;
764+
Mods.currentModDirectory = fpManager.songList[i].folder;
761765

762766
var songBox:SongBox = new SongBox(320, 100);
763767
songBox.loadGraphic(Paths.image('freeplay/OSUState/bars/background2'));
@@ -774,34 +778,34 @@ class OsuFreeplayState extends MusicBeatState
774778
: songBox.color = 0xFFFFD700)
775779
: songBox.color = color;
776780
} else {
777-
songBox.setColorTransform(-1, -1, -1, 1, FreeplayState.instance.fpManager.songList[i].color[0][0], FreeplayState.instance.fpManager.songList[i].color[0][1], FreeplayState.instance.fpManager.songList[i].color[0][2], 1);
781+
songBox.setColorTransform(-1, -1, -1, 1, fpManager.songList[i].color[0][0], fpManager.songList[i].color[0][1], fpManager.songList[i].color[0][2], 1);
778782
}
779783
songBox.ID = i + trueInt;
780784
this.songBox.add(songBox);
781785

782786
var isLock:Bool = APEntryState.inArchipelagoMode && CategoryState.loadWeekForce == "all" && isMissing && !APFreeplayManager.unplayedList.contains(songName);
783-
var icon:HealthIcon = new HealthIcon(isLock ? "lock" : FreeplayState.instance.fpManager.songList[i].songCharacter, false);
787+
var icon:HealthIcon = new HealthIcon(isLock ? "lock" : fpManager.songList[i].songCharacter, false);
784788
icon.setPosition(320, 100);
785789
icon.ID = i + trueInt;
786790
icon.setGraphicSize(Std.int(icon.width / 1.7), Std.int(icon.height / 1.7));
787791
iconGrp.add(icon);
788792

789-
try {metadata = FreeplayState.instance.fpManager.metadata.get(FreeplayState.instance.fpManager.songList[i].songName.toLowerCase());}
793+
try {metadata = fpManager.metadata.get(fpManager.songList[i].songName.toLowerCase());}
790794
catch(e) {metadata = null;}
791795

792796
var text:FlxText = new FlxText(0, 0, 500, '', 20);
793797
if (metadata != null)
794-
text.text = FreeplayState.instance.fpManager.songList[i].songName + '\nBy ${metadata.song.artist}';
798+
text.text = fpManager.songList[i].songName + '\nBy ${metadata.song.artist}';
795799
else
796-
text.text = FreeplayState.instance.fpManager.songList[i].songName + '\nBy Unknown';
800+
text.text = fpManager.songList[i].songName + '\nBy Unknown';
797801
text.alignment = 'left';
798802
text.ID = i + trueInt;
799803
textGrp.add(text);
800804

801-
var week:WeekData = WeekData.weeksLoaded.get(WeekData.weeksList[FreeplayState.instance.fpManager.songList[i].week]);
805+
var week:WeekData = WeekData.weeksLoaded.get(WeekData.weeksList[fpManager.songList[i].week]);
802806
Difficulty.loadFromWeek(week);
803807

804-
if (FreeplayState.instance.fpManager.songList[i].songName == FreeplayState.instance.fpManager.songList[curSelected].songName) {
808+
if (fpManager.songList[i].songName == fpManager.songList[curSelected].songName) {
805809
trace(songName);
806810
trueInt = i+1;
807811
for (j in 0...Difficulty.list.length)
@@ -810,21 +814,21 @@ class OsuFreeplayState extends MusicBeatState
810814
var songBox:SongBox = new SongBox(320, 100);
811815
songBox.loadGraphic(Paths.image('freeplay/OSUState/bars/background2'));
812816
songBox.setGraphicSize(650, 100);
813-
songBox.setColorTransform(-1, -1, -1, 1, FreeplayState.instance.fpManager.songList[i].color[0][0], FreeplayState.instance.fpManager.songList[i].color[0][1], FreeplayState.instance.fpManager.songList[i].color[0][2], 1);
817+
songBox.setColorTransform(-1, -1, -1, 1, fpManager.songList[i].color[0][0], fpManager.songList[i].color[0][1], fpManager.songList[i].color[0][2], 1);
814818
songBox.ID = trueInt;
815819
this.songBox.add(songBox);
816820

817-
var icon:HealthIcon = new HealthIcon(FreeplayState.instance.fpManager.songList[i].songCharacter, false);
821+
var icon:HealthIcon = new HealthIcon(fpManager.songList[i].songCharacter, false);
818822
icon.setPosition(320, 100);
819823
icon.ID = trueInt;
820824
icon.setGraphicSize(Std.int(icon.width / 1.7), Std.int(icon.height / 1.7));
821825
this.iconGrp.add(icon);
822826

823-
try {metadata = FreeplayState.instance.fpManager.metadata.get(FreeplayState.instance.fpManager.songList[i].songName.toLowerCase());}
827+
try {metadata = fpManager.metadata.get(fpManager.songList[i].songName.toLowerCase());}
824828
catch(e) {metadata = null;}
825829

826830
var text:FlxText = new FlxText(0, 0, 500, '', 20);
827-
text.text = FreeplayState.instance.fpManager.songList[i].songName + '\n' + Difficulty.list[j];
831+
text.text = fpManager.songList[i].songName + '\n' + Difficulty.list[j];
828832
text.alignment = 'left';
829833
text.ID = trueInt;
830834
this.textGrp.add(text);

0 commit comments

Comments
 (0)