diff --git a/source/PlayState.hx b/source/PlayState.hx index 949dea2..73d2377 100644 --- a/source/PlayState.hx +++ b/source/PlayState.hx @@ -3075,13 +3075,36 @@ class PlayState extends MusicBeatState { if (!directionsAccounted[daNote.noteData]) { - directionsAccounted[daNote.noteData] = true; - possibleNotes.push(daNote); - directionList.push(daNote.noteData); + if (directionList.contains(daNote.noteData)) + { + directionsAccounted[daNote.noteData] = true; + for (coolNote in possibleNotes) + { + if (coolNote.noteData == daNote.noteData && Math.abs(daNote.strumTime - coolNote.strumTime) < 10) + { // if it's the same note twice at < 10ms distance, just delete it + // EXCEPT u cant delete it in this loop cuz it fucks with the collection lol + dumbNotes.push(daNote); + break; + } + else if (coolNote.noteData == daNote.noteData && daNote.strumTime < coolNote.strumTime) + { // if daNote is earlier than existing note (coolNote), replace + possibleNotes.remove(coolNote); + possibleNotes.push(daNote); + break; + } + } + } + else + { + possibleNotes.push(daNote); + directionList.push(daNote.noteData); + } } } }); + trace('notes that can be hit: ' + possibleNotes.length); + for (note in dumbNotes) { FlxG.log.add("killing dumb ass note at " + note.strumTime);