mirror of
https://github.com/RHeavenStudio/HeavenStudio.git
synced 2025-06-12 11:07:39 +02:00
Merge branch 'master' into misc-additions-3
This commit is contained in:
@ -403,57 +403,45 @@ namespace HeavenStudio.Editor
|
||||
{
|
||||
var path = Path.Combine(paths);
|
||||
|
||||
if (path != String.Empty)
|
||||
{
|
||||
loadedMusic = false;
|
||||
if (path == string.Empty) return;
|
||||
loadedMusic = false;
|
||||
|
||||
using (FileStream zipFile = File.Open(path, FileMode.Open))
|
||||
using var zipFile = File.Open(path, FileMode.Open);
|
||||
using var archive = new ZipArchive(zipFile, ZipArchiveMode.Read);
|
||||
|
||||
foreach (var entry in archive.Entries)
|
||||
switch (entry.Name)
|
||||
{
|
||||
using (var archive = new ZipArchive(zipFile, ZipArchiveMode.Read))
|
||||
case "remix.json":
|
||||
{
|
||||
foreach (ZipArchiveEntry entry in archive.Entries)
|
||||
{
|
||||
if (entry.Name == "remix.json")
|
||||
{
|
||||
using (var stream = entry.Open())
|
||||
{
|
||||
byte[] bytes;
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
stream.CopyTo(ms);
|
||||
bytes = ms.ToArray();
|
||||
string json = Encoding.UTF8.GetString(bytes);
|
||||
LoadRemix(json);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (entry.Name == "song.ogg")
|
||||
{
|
||||
using (var stream = entry.Open())
|
||||
{
|
||||
using (var ms = new MemoryStream())
|
||||
{
|
||||
stream.CopyTo(ms);
|
||||
MusicBytes = ms.ToArray();
|
||||
Conductor.instance.musicSource.clip = OggVorbis.VorbisPlugin.ToAudioClip(MusicBytes, "music");
|
||||
loadedMusic = true;
|
||||
Timeline.FitToSong();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
using var stream = entry.Open();
|
||||
using var reader = new StreamReader(stream);
|
||||
LoadRemix(reader.ReadToEnd());
|
||||
|
||||
break;
|
||||
}
|
||||
case "song.ogg":
|
||||
{
|
||||
using var stream = entry.Open();
|
||||
using var memoryStream = new MemoryStream();
|
||||
stream.CopyTo(memoryStream);
|
||||
MusicBytes = memoryStream.ToArray();
|
||||
Conductor.instance.musicSource.clip = OggVorbis.VorbisPlugin.ToAudioClip(MusicBytes, "music");
|
||||
loadedMusic = true;
|
||||
Timeline.FitToSong();
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!loadedMusic)
|
||||
Conductor.instance.musicSource.clip = null;
|
||||
if (!loadedMusic)
|
||||
Conductor.instance.musicSource.clip = null;
|
||||
|
||||
currentRemixPath = path;
|
||||
remixName = Path.GetFileName(path);
|
||||
UpdateEditorStatus(false);
|
||||
CommandManager.instance.Clear();
|
||||
Timeline.FitToSong();
|
||||
}
|
||||
currentRemixPath = path;
|
||||
remixName = Path.GetFileName(path);
|
||||
UpdateEditorStatus(false);
|
||||
CommandManager.instance.Clear();
|
||||
Timeline.FitToSong();
|
||||
});
|
||||
}
|
||||
|
||||
@ -495,7 +483,7 @@ namespace HeavenStudio.Editor
|
||||
private void UpdateEditorStatus(bool updateTime)
|
||||
{
|
||||
if (discordDuringTesting || !Application.isEditor)
|
||||
DiscordRPC.DiscordRPC.UpdateActivity("In Editor", $"{remixName}", updateTime);
|
||||
DiscordRPC.DiscordRPC.UpdateActivity("In Editor", $"{remixName}", updateTime);
|
||||
}
|
||||
|
||||
public string GetJson()
|
||||
|
Reference in New Issue
Block a user