@@ -19,6 +19,7 @@ public class ItemHandler {
19
19
public MusicInfo GoalSong { get ; private set ; }
20
20
public int NumberOfMusicSheetsToWin { get ; private set ; }
21
21
public int CurrentNumberOfMusicSheets { get ; private set ; }
22
+ private int _prospectiveSheetCount ;
22
23
23
24
public HashSet < string > SongsInLogic = new HashSet < string > ( ) ;
24
25
public HashSet < string > UnlockedSongUids = new HashSet < string > ( ) ;
@@ -147,11 +148,9 @@ IMuseDashItem GetItemFromNetworkItem(NetworkItem item, bool otherPlayersItem) {
147
148
}
148
149
149
150
if ( name == MusicSheetItemName ) {
150
- CurrentNumberOfMusicSheets ++ ;
151
-
152
- if ( NumberOfMusicSheetsToWin == CurrentNumberOfMusicSheets )
151
+ if ( CurrentNumberOfMusicSheets + 1 >= NumberOfMusicSheetsToWin )
153
152
return new SongItem ( GoalSong ) ;
154
- return new MusicSheetItem ( NumberOfMusicSheetsToWin - CurrentNumberOfMusicSheets ) { Item = item } ;
153
+ return new MusicSheetItem ( ) { Item = item } ;
155
154
}
156
155
157
156
if ( ArchipelagoStatic . AlbumDatabase . TryGetMusicInfo ( name , out var singularInfo ) )
@@ -166,6 +165,10 @@ IMuseDashItem GetItemFromNetworkItem(NetworkItem item, bool otherPlayersItem) {
166
165
return null ;
167
166
}
168
167
168
+ public void AddMusicSheet ( ) {
169
+ CurrentNumberOfMusicSheets ++ ;
170
+ }
171
+
169
172
public MusicInfo GetRandomUnfinishedSong ( ) {
170
173
//Not very efficient, but its a button clicked once.
171
174
var unfinishedSongs = UnlockedSongUids . Where ( x => ! CompletedSongUids . Contains ( x ) ) . ToList ( ) ;
0 commit comments