@@ -2007,7 +2007,7 @@ class PlayState extends MusicBeatState
20072007
20082008 scoreTxt .x = (originalX - (lengthInPx / 2 )) + 335 ;
20092009
2010- if (FlxG . keys . justPressed . ENTER && startedCountdown && canPause )
2010+ if (controls. PAUSE && startedCountdown && canPause )
20112011 {
20122012 persistentUpdate = false ;
20132013 persistentDraw = true ;
@@ -2023,6 +2023,7 @@ class PlayState extends MusicBeatState
20232023 openSubState (new PauseSubState (boyfriend .getScreenPosition ().x , boyfriend .getScreenPosition ().y ));
20242024 }
20252025
2026+
20262027 if (FlxG .keys .justPressed .SEVEN )
20272028 {
20282029 if (useVideo )
@@ -3184,18 +3185,36 @@ class PlayState extends MusicBeatState
31843185 var directionsAccounted : Array <Bool > = [false ,false ,false ,false ]; // we don't want to do judgments for more than one presses
31853186
31863187 notes .forEachAlive (function (daNote : Note )
3187- {
3188- if (daNote .canBeHit && daNote .mustPress && ! daNote .tooLate && ! daNote .wasGoodHit )
31893188 {
3190- if (! directionsAccounted [daNote .noteData ])
3189+ if (daNote . canBeHit && daNote . mustPress && ! daNote . tooLate && ! daNote . wasGoodHit && ! directionsAccounted [daNote .noteData ])
31913190 {
3192- directionsAccounted [daNote .noteData ] = true ;
3193- possibleNotes .push (daNote );
3194- directionList .push (daNote .noteData );
3191+ if (directionList .contains (daNote .noteData ))
3192+ {
3193+ directionsAccounted [daNote .noteData ] = true ;
3194+ for (coolNote in possibleNotes )
3195+ {
3196+ if (coolNote .noteData == daNote .noteData && Math .abs (daNote .strumTime - coolNote .strumTime ) < 10 )
3197+ { // if it's the same note twice at < 10ms distance, just delete it
3198+ // EXCEPT u cant delete it in this loop cuz it fucks with the collection lol
3199+ dumbNotes .push (daNote );
3200+ break ;
3201+ }
3202+ else if (coolNote .noteData == daNote .noteData && daNote .strumTime < coolNote .strumTime )
3203+ { // if daNote is earlier than existing note (coolNote), replace
3204+ possibleNotes .remove (coolNote );
3205+ possibleNotes .push (daNote );
3206+ break ;
3207+ }
3208+ }
3209+ }
3210+ else
3211+ {
3212+ possibleNotes .push (daNote );
3213+ directionList .push (daNote .noteData );
3214+ }
31953215 }
3196- }
31973216 });
3198- trace ( ' notes that can be hit: ' + possibleNotes . length );
3217+
31993218 for (note in dumbNotes )
32003219 {
32013220 FlxG .log .add (" killing dumb ass note at " + note .strumTime );
0 commit comments