input drop fix - poco

This commit is contained in:
Kade M 2021-06-21 01:08:28 -07:00
parent ca20b5ce4d
commit ed5d48567a
2 changed files with 5 additions and 34 deletions

View File

@ -3082,33 +3082,12 @@ class PlayState extends MusicBeatState
if (daNote.canBeHit && daNote.mustPress && !daNote.tooLate && !daNote.wasGoodHit) if (daNote.canBeHit && daNote.mustPress && !daNote.tooLate && !daNote.wasGoodHit)
{ {
if (!directionsAccounted[daNote.noteData]) if (!directionsAccounted[daNote.noteData])
{
if (directionList.contains(daNote.noteData))
{ {
directionsAccounted[daNote.noteData] = true; 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); possibleNotes.push(daNote);
directionList.push(daNote.noteData); directionList.push(daNote.noteData);
} }
} }
}
}); });
for (note in dumbNotes) for (note in dumbNotes)
@ -3121,17 +3100,9 @@ class PlayState extends MusicBeatState
possibleNotes.sort((a, b) -> Std.int(a.strumTime - b.strumTime)); possibleNotes.sort((a, b) -> Std.int(a.strumTime - b.strumTime));
var dontCheck = false;
for (i in 0...pressArray.length)
{
if (pressArray[i] && !directionList.contains(i))
dontCheck = true;
}
if (perfectMode) if (perfectMode)
goodNoteHit(possibleNotes[0]); goodNoteHit(possibleNotes[0]);
else if (possibleNotes.length > 0 && !dontCheck) else if (possibleNotes.length > 0)
{ {
if (!FlxG.save.data.ghost) if (!FlxG.save.data.ghost)
{ {

View File

@ -119,7 +119,7 @@ class Ratings
public static function checkRating(ms:Float, ts:Float) public static function checkRating(ms:Float, ts:Float)
{ {
var rating = "miss"; var rating = "sick";
if (ms <= 166 * ts && ms >= 135 * ts) if (ms <= 166 * ts && ms >= 135 * ts)
rating = "shit"; rating = "shit";
if (ms < 135 * ts && ms >= 90 * ts) if (ms < 135 * ts && ms >= 90 * ts)