fix notes deleting (LIVE ON STREAM!)

This commit is contained in:
KadeDev 2021-03-31 12:58:17 -07:00
parent 174fffcece
commit 200714f866
3 changed files with 64 additions and 77 deletions

View File

@ -1003,27 +1003,19 @@ class ChartingState extends MusicBeatState
updateNoteUI(); updateNoteUI();
} }
function deleteNote(note:Note):Void
{
trace(_song.notes[curSection].sectionNotes);
for (n in 0..._song.notes[curSection].sectionNotes.length)
{
var i = _song.notes[curSection].sectionNotes[n];
if (i == null)
continue;
if ((i[0] == note.strumTime + (note.strumTime == 0 ? 0 : 1)
? true : i[0] == note.strumTime)
&& i[1] % 4 == note.noteData)
// Why does it do this?
// I DONT FUCKING KNOW!!!!!!!!!!!!!!
{
trace('GAMING');
_song.notes[curSection].sectionNotes.remove(i);
}
}
updateGrid(); function deleteNote(note:Note):Void
} {
for (i in _song.notes[curSection].sectionNotes)
{
if (i[0] == note.strumTime && i[1] % 4 == note.noteData)
{
_song.notes[curSection].sectionNotes.remove(i);
}
}
updateGrid();
}
function clearSection():Void function clearSection():Void
{ {

View File

@ -66,4 +66,4 @@ class Conductor
crochet = ((60 / bpm) * 1000); crochet = ((60 / bpm) * 1000);
stepCrochet = crochet / 4; stepCrochet = crochet / 4;
} }
} }

View File

@ -41,14 +41,14 @@ class Note extends FlxSprite
if (prevNote == null) if (prevNote == null)
prevNote = this; prevNote = this;
this.prevNote = prevNote; this.prevNote = prevNote;
isSustainNote = sustainNote; isSustainNote = sustainNote;
x += 50; x += 50;
// MAKE SURE ITS DEFINITELY OFF SCREEN? // MAKE SURE ITS DEFINITELY OFF SCREEN?
y -= 2000; y -= 2000;
this.strumTime = strumTime + FlxG.save.data.offset; this.strumTime = strumTime;
this.noteData = noteData; this.noteData = noteData;
@ -121,61 +121,60 @@ class Note extends FlxSprite
animation.play('redScroll'); animation.play('redScroll');
} }
// trace(prevNote);
// we make sure its downscroll and its a SUSTAIN NOTE (aka a trail, not a note) // we make sure its downscroll and its a SUSTAIN NOTE (aka a trail, not a note)
// and flip it so it doesn't look weird. // and flip it so it doesn't look weird.
// THIS DOESN'T FUCKING FLIP THE NOTE, CONTRIBUTERS DON'T JUST COMMENT THIS OUT JESUS // THIS DOESN'T FUCKING FLIP THE NOTE, CONTRIBUTERS DON'T JUST COMMENT THIS OUT JESUS
if (FlxG.save.data.downscroll && sustainNote) if (FlxG.save.data.downscroll && sustainNote)
flipY = true; flipY = true;
if (isSustainNote && prevNote != null) if (isSustainNote && prevNote != null)
{ {
noteScore * 0.2; noteScore * 0.2;
alpha = 0.6; alpha = 0.6;
x += width / 2;
switch (noteData)
{
case 2:
animation.play('greenholdend');
case 3:
animation.play('redholdend');
case 1:
animation.play('blueholdend');
case 0:
animation.play('purpleholdend');
}
updateHitbox();
x -= width / 2;
if (PlayState.curStage.startsWith('school'))
x += 30;
if (prevNote.isSustainNote)
{
switch (prevNote.noteData)
{
case 0:
prevNote.animation.play('purplehold');
case 1:
prevNote.animation.play('bluehold');
case 2:
prevNote.animation.play('greenhold');
case 3:
prevNote.animation.play('redhold');
}
prevNote.scale.y *= Conductor.stepCrochet / 100 * 1.5 * PlayState.SONG.speed;
prevNote.updateHitbox();
// prevNote.setGraphicSize();
}
}
}
var oneTime:Bool = false; x += width / 2;
switch (noteData)
{
case 2:
animation.play('greenholdend');
case 3:
animation.play('redholdend');
case 1:
animation.play('blueholdend');
case 0:
animation.play('purpleholdend');
}
updateHitbox();
x -= width / 2;
if (PlayState.curStage.startsWith('school'))
x += 30;
if (prevNote.isSustainNote)
{
switch (prevNote.noteData)
{
case 0:
prevNote.animation.play('purplehold');
case 1:
prevNote.animation.play('bluehold');
case 2:
prevNote.animation.play('greenhold');
case 3:
prevNote.animation.play('redhold');
}
prevNote.scale.y *= Conductor.stepCrochet / 100 * 1.5 * PlayState.SONG.speed;
prevNote.updateHitbox();
// prevNote.setGraphicSize();
}
}
}
override function update(elapsed:Float) override function update(elapsed:Float)
{ {
@ -183,19 +182,15 @@ class Note extends FlxSprite
if (mustPress) if (mustPress)
{ {
if ((strumTime > Conductor.songPosition - Conductor.safeZoneOffset // The * 0.5 is so that it's easier to hit them too late, instead of too early
&& strumTime < Conductor.songPosition + Conductor.safeZoneOffset)) if (strumTime > Conductor.songPosition - Conductor.safeZoneOffset
{ && strumTime < Conductor.songPosition + (Conductor.safeZoneOffset * 0.5))
canBeHit = true; canBeHit = true;
}
else else
canBeHit = false; canBeHit = false;
if (strumTime < Conductor.songPosition - Conductor.safeZoneOffset && !wasGoodHit) if (strumTime < Conductor.songPosition - Conductor.safeZoneOffset && !wasGoodHit)
{
tooLate = true; tooLate = true;
rating = "shit";
}
} }
else else
{ {