Adapt conversion for RawChartResource.
This commit is contained in:
@@ -169,7 +169,7 @@ namespace Cryville.Crtr.Browsing {
|
||||
var dir = new DirectoryInfo(_rootPath + "/charts/" + res.Name);
|
||||
if (!dir.Exists) dir.Create();
|
||||
using (var writer = new StreamWriter(dir.FullName + "/.json")) {
|
||||
writer.Write(JsonConvert.SerializeObject(tres.Main, Game.GlobalJsonSerializerSettings));
|
||||
writer.Write(JsonConvert.SerializeObject(ConvertChartData(tres.Main), Game.GlobalJsonSerializerSettings));
|
||||
}
|
||||
using (var writer = new StreamWriter(dir.FullName + "/.umgc")) {
|
||||
tres.Meta.data = "";
|
||||
@@ -227,5 +227,76 @@ namespace Cryville.Crtr.Browsing {
|
||||
public Dictionary<string, string> GetPresetPaths() {
|
||||
return localRes;
|
||||
}
|
||||
|
||||
static Chart ConvertChartData(ChartData i) {
|
||||
return new Chart {
|
||||
endtime = ConvertBeatTime(i.endtime),
|
||||
format = i.format,
|
||||
groups = ConvertGroups(i.groups),
|
||||
motions = ConvertMotions(i.motions),
|
||||
ruleset = i.ruleset,
|
||||
sigs = ConvertSignatures(i.sigs),
|
||||
sounds = ConvertSounds(i.sounds),
|
||||
time = ConvertBeatTime(i.time),
|
||||
};
|
||||
}
|
||||
static BeatTime? ConvertBeatTime(Extension.BeatTime? value) {
|
||||
if (value == null) return null;
|
||||
return new BeatTime(value.Value.b, value.Value.n, value.Value.d);
|
||||
}
|
||||
static List<Chart.Group> ConvertGroups(List<ChartData.Group> l) {
|
||||
return l.Select(i => new Chart.Group {
|
||||
endtime = ConvertBeatTime(i.endtime),
|
||||
motions = ConvertMotions(i.motions),
|
||||
notes = ConvertNotes(i.notes),
|
||||
time = ConvertBeatTime(i.time),
|
||||
tracks = ConvertTracks(i.tracks),
|
||||
}).ToList();
|
||||
}
|
||||
static List<Chart.Judge> ConvertJudges(List<ChartData.Judge> l) {
|
||||
return l.Select(i => new Chart.Judge {
|
||||
endtime = ConvertBeatTime(i.endtime),
|
||||
name = i.name,
|
||||
time = ConvertBeatTime(i.time),
|
||||
}).ToList();
|
||||
}
|
||||
static List<Chart.Motion> ConvertMotions(List<ChartData.Motion> l) {
|
||||
return l.Select(i => new Chart.Motion {
|
||||
endtime = ConvertBeatTime(i.endtime),
|
||||
motion = i.motion,
|
||||
sumfix = i.sumfix,
|
||||
time = ConvertBeatTime(i.time),
|
||||
}).ToList();
|
||||
}
|
||||
static List<Chart.Note> ConvertNotes(List<ChartData.Note> l) {
|
||||
return l.Select(i => new Chart.Note {
|
||||
endtime = ConvertBeatTime(i.endtime),
|
||||
judges = ConvertJudges(i.judges),
|
||||
motions = ConvertMotions(i.motions),
|
||||
time = ConvertBeatTime(i.time),
|
||||
}).ToList();
|
||||
}
|
||||
static List<Chart.Signature> ConvertSignatures(List<ChartData.Signature> l) {
|
||||
return l.Select(i => new Chart.Signature {
|
||||
endtime = ConvertBeatTime(i.endtime),
|
||||
tempo = i.tempo,
|
||||
time = ConvertBeatTime(i.time),
|
||||
}).ToList();
|
||||
}
|
||||
static List<Chart.Sound> ConvertSounds(List<ChartData.Sound> l) {
|
||||
return l.Select(i => new Chart.Sound {
|
||||
endtime = ConvertBeatTime(i.endtime),
|
||||
id = i.id,
|
||||
offset = i.offset,
|
||||
time = ConvertBeatTime(i.time),
|
||||
}).ToList();
|
||||
}
|
||||
static List<Chart.Track> ConvertTracks(List<ChartData.Track> l) {
|
||||
return l.Select(i => new Chart.Track {
|
||||
endtime = ConvertBeatTime(i.endtime),
|
||||
motions = ConvertMotions(i.motions),
|
||||
time = ConvertBeatTime(i.time),
|
||||
}).ToList();
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user