fix play here

This commit is contained in:
KadeDeveloper 2021-08-13 16:05:06 -07:00
parent 73d5f068c3
commit c3020d9dff
2 changed files with 65 additions and 47 deletions

View File

@ -1285,7 +1285,7 @@ class ChartingState extends MusicBeatState
FlxG.sound.music.stop(); FlxG.sound.music.stop();
if (!PlayState.isSM) if (!PlayState.isSM)
vocals.stop(); vocals.stop();
PlayState.startTime = lastUpdatedSection.startTime; PlayState.startTime = _song.notes[curSection].startTime;
LoadingState.loadAndSwitchState(new PlayState()); LoadingState.loadAndSwitchState(new PlayState());
}); });
@ -1834,6 +1834,7 @@ class ChartingState extends MusicBeatState
{ {
if (i.overlaps(selectBox) && !i.charterSelected) if (i.overlaps(selectBox) && !i.charterSelected)
{ {
trace("seleting " + i.strumTime);
selectNote(i, false); selectNote(i, false);
} }
} }
@ -2225,7 +2226,7 @@ class ChartingState extends MusicBeatState
{ {
if (FlxG.keys.pressed.CONTROL) if (FlxG.keys.pressed.CONTROL)
{ {
selectNote(note); selectNote(note, false);
} }
else else
{ {
@ -2699,27 +2700,31 @@ class ChartingState extends MusicBeatState
selectedBoxes.members.remove(selectedBoxes.members[0]); selectedBoxes.members.remove(selectedBoxes.members[0]);
} }
for (i in getSectionByTime(note.strumTime).sectionNotes) for(sec in _song.notes)
{ {
if (i[0] == note.strumTime && i[1] == note.rawNoteData) swagNum = 0;
for(i in sec.sectionNotes)
{ {
curSelectedNote = getSectionByTime(note.strumTime).sectionNotes[swagNum]; if (i[0] == note.strumTime && i[1] == note.rawNoteData)
if (curSelectedNoteObject != null)
curSelectedNoteObject.charterSelected = false;
curSelectedNoteObject = note;
if (!note.charterSelected)
{ {
var box = new ChartingBox(note.x,note.y,note); curSelectedNote = sec.sectionNotes[swagNum];
box.connectedNoteData = i; if (curSelectedNoteObject != null)
selectedBoxes.add(box); curSelectedNoteObject.charterSelected = false;
note.charterSelected = true;
curSelectedNoteObject.charterSelected = true; curSelectedNoteObject = note;
if (!note.charterSelected)
{
var box = new ChartingBox(note.x,note.y,note);
box.connectedNoteData = i;
selectedBoxes.add(box);
note.charterSelected = true;
curSelectedNoteObject.charterSelected = true;
}
} }
swagNum += 1;
} }
swagNum += 1;
} }
updateNoteUI(); updateNoteUI();

View File

@ -1061,6 +1061,46 @@ class PlayState extends MusicBeatState
} }
} }
if (startTime != 0)
{
var toBeRemoved = [];
for(i in 0...notes.members.length)
{
var dunceNote:Note = notes.members[i];
if (dunceNote.strumTime - startTime <= 0)
toBeRemoved.push(dunceNote);
else
{
if (PlayStateChangeables.useDownscroll)
{
if (dunceNote.mustPress)
dunceNote.y = (playerStrums.members[Math.floor(Math.abs(dunceNote.noteData))].y
+ 0.45 * (startTime - dunceNote.strumTime) * FlxMath.roundDecimal(PlayStateChangeables.scrollSpeed == 1 ? SONG.speed : PlayStateChangeables.scrollSpeed,
2)) - dunceNote.noteYOff;
else
dunceNote.y = (strumLineNotes.members[Math.floor(Math.abs(dunceNote.noteData))].y
+ 0.45 * (startTime - dunceNote.strumTime) * FlxMath.roundDecimal(PlayStateChangeables.scrollSpeed == 1 ? SONG.speed : PlayStateChangeables.scrollSpeed,
2)) - dunceNote.noteYOff;
}
else
{
if (dunceNote.mustPress)
dunceNote.y = (playerStrums.members[Math.floor(Math.abs(dunceNote.noteData))].y
- 0.45 * (startTime - dunceNote.strumTime) * FlxMath.roundDecimal(PlayStateChangeables.scrollSpeed == 1 ? SONG.speed : PlayStateChangeables.scrollSpeed,
2)) + dunceNote.noteYOff;
else
dunceNote.y = (strumLineNotes.members[Math.floor(Math.abs(dunceNote.noteData))].y
- 0.45 * (startTime - dunceNote.strumTime) * FlxMath.roundDecimal(PlayStateChangeables.scrollSpeed == 1 ? SONG.speed : PlayStateChangeables.scrollSpeed,
2)) + dunceNote.noteYOff;
}
}
}
for(i in toBeRemoved)
notes.members.remove(i);
}
trace('generated'); trace('generated');
// add(strumLine); // add(strumLine);
@ -1362,34 +1402,7 @@ class PlayState extends MusicBeatState
//generateStaticArrows(0); //generateStaticArrows(0);
//generateStaticArrows(1); //generateStaticArrows(1);
if (startTime != 0)
{
var toBeRemoved = [];
for(i in 0...unspawnNotes.length)
{
var dunceNote:Note = unspawnNotes[i];
if (dunceNote.strumTime - startTime <= 0)
toBeRemoved.push(dunceNote);
else if (dunceNote.strumTime - startTime < 3500)
{
notes.add(dunceNote);
if (dunceNote.mustPress)
dunceNote.y = (playerStrums.members[Math.floor(Math.abs(dunceNote.noteData))].y
+ 0.45 * (startTime - dunceNote.strumTime) * FlxMath.roundDecimal(PlayStateChangeables.scrollSpeed == 1 ? SONG.speed : PlayStateChangeables.scrollSpeed,
2)) - dunceNote.noteYOff;
else
dunceNote.y = (strumLineNotes.members[Math.floor(Math.abs(dunceNote.noteData))].y
+ 0.45 * (startTime - dunceNote.strumTime) * FlxMath.roundDecimal(PlayStateChangeables.scrollSpeed == 1 ? SONG.speed : PlayStateChangeables.scrollSpeed,
2)) - dunceNote.noteYOff;
toBeRemoved.push(dunceNote);
}
}
for(i in toBeRemoved)
unspawnNotes.remove(i);
}
#if windows #if windows
// pre lowercasing the song name (startCountdown) // pre lowercasing the song name (startCountdown)