From 61326448afa00ffbe462edee90bc3136cd3ba5a2 Mon Sep 17 00:00:00 2001 From: Cameron Taylor Date: Fri, 25 Dec 2020 04:09:14 -0500 Subject: [PATCH] AUTOSAVE FOR NOTE EDITOR! --- source/ChartingState.hx | 26 ++++++++++++++++++++++---- source/Song.hx | 11 +++++++---- 2 files changed, 29 insertions(+), 8 deletions(-) diff --git a/source/ChartingState.hx b/source/ChartingState.hx index 1832c6d00..789dba736 100644 --- a/source/ChartingState.hx +++ b/source/ChartingState.hx @@ -102,6 +102,9 @@ class ChartingState extends MusicBeatState }; } + FlxG.mouse.visible = true; + FlxG.save.bind('funkin', 'ninjamuffin99'); + tempBpm = _song.bpm; addSection(); @@ -175,6 +178,8 @@ class ChartingState extends MusicBeatState loadJson(_song.song.toLowerCase()); }); + var loadAutosaveBtn:FlxButton = new FlxButton(reloadSongJson.x, reloadSongJson.y + 60, 'load autosave', loadAutosave); + var stepperSpeed:FlxUINumericStepper = new FlxUINumericStepper(10, 80, 0.1, 1, 0.1, 10, 1); stepperSpeed.value = _song.speed; stepperSpeed.name = 'song_speed'; @@ -206,6 +211,7 @@ class ChartingState extends MusicBeatState tab_group_song.add(saveButton); tab_group_song.add(reloadSong); tab_group_song.add(reloadSongJson); + tab_group_song.add(loadAutosaveBtn); tab_group_song.add(stepperBPM); tab_group_song.add(stepperSpeed); tab_group_song.add(player1DropDown); @@ -769,6 +775,8 @@ class ChartingState extends MusicBeatState updateGrid(); updateNoteUI(); + + autosaveSong(); } function getStrumTime(yPos:Float):Float @@ -829,11 +837,21 @@ class ChartingState extends MusicBeatState FlxG.resetState(); } - var mp3File:Sound; - var waveForm:FlxSprite; - - function drawWave():Void + function loadAutosave():Void { + PlayState.SONG = Song.parseJSONshit(FlxG.save.data.autosave); + FlxG.resetState(); + } + + function autosaveSong():Void + { + FlxG.save.data.autosave = Json.stringify({ + "song": _song, + "bpm": Conductor.bpm, + "sections": _song.notes.length, + 'notes': _song.notes + }); + FlxG.save.flush(); } private function saveLevel() diff --git a/source/Song.hx b/source/Song.hx index 772652b94..55827e79b 100644 --- a/source/Song.hx +++ b/source/Song.hx @@ -58,10 +58,6 @@ class Song // LOL GOING THROUGH THE BULLSHIT TO CLEAN IDK WHATS STRANGE } - var swagShit:SwagSong = cast Json.parse(rawJson).song; - swagShit.validScore = true; - trace(swagShit.notes[0]); - // FIX THE CASTING ON WINDOWS/NATIVE // Windows??? // trace(songData); @@ -80,6 +76,13 @@ class Song daBpm = songData.bpm; daSectionLengths = songData.sectionLengths; */ + return parseJSONshit(rawJson); + } + + public static function parseJSONshit(rawJson:String):SwagSong + { + var swagShit:SwagSong = cast Json.parse(rawJson).song; + swagShit.validScore = true; return swagShit; } }