Fix error on invalid resource item.
This commit is contained in:
@@ -57,13 +57,12 @@ namespace Cryville.Crtr.Browsing {
|
|||||||
get {
|
get {
|
||||||
var item = items[index];
|
var item = items[index];
|
||||||
ChartMeta meta = null;
|
ChartMeta meta = null;
|
||||||
|
AsyncDelivery<Texture2D> cover = null;
|
||||||
var metaFile = new FileInfo(Path.Combine(item.FullName, ".umgc"));
|
var metaFile = new FileInfo(Path.Combine(item.FullName, ".umgc"));
|
||||||
if (metaFile.Exists) {
|
if (metaFile.Exists) {
|
||||||
using (var reader = new StreamReader(metaFile.FullName)) {
|
using (var reader = new StreamReader(metaFile.FullName)) {
|
||||||
meta = JsonConvert.DeserializeObject<ChartMeta>(reader.ReadToEnd());
|
meta = JsonConvert.DeserializeObject<ChartMeta>(reader.ReadToEnd());
|
||||||
}
|
}
|
||||||
}
|
|
||||||
AsyncDelivery<Texture2D> cover = null;
|
|
||||||
if (meta.cover != null && meta.cover != "") {
|
if (meta.cover != null && meta.cover != "") {
|
||||||
var coverFile = item.GetFiles(meta.cover);
|
var coverFile = item.GetFiles(meta.cover);
|
||||||
if (coverFile.Length > 0) {
|
if (coverFile.Length > 0) {
|
||||||
@@ -73,6 +72,7 @@ namespace Cryville.Crtr.Browsing {
|
|||||||
Game.NetworkTaskWorker.SubmitNetworkTask(task);
|
Game.NetworkTaskWorker.SubmitNetworkTask(task);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return new ChartDetail {
|
return new ChartDetail {
|
||||||
Cover = cover,
|
Cover = cover,
|
||||||
Meta = meta,
|
Meta = meta,
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ namespace Cryville.Crtr.Browsing.UI {
|
|||||||
m_cover.sprite = m_coverPlaceholder;
|
m_cover.sprite = m_coverPlaceholder;
|
||||||
if (data.Cover != null) data.Cover.Destination = DisplayCover;
|
if (data.Cover != null) data.Cover.Destination = DisplayCover;
|
||||||
var meta = data.Meta;
|
var meta = data.Meta;
|
||||||
|
if (meta != null) {
|
||||||
m_title.text = string.Format("{0}\n{1}", meta.song.name, meta.name);
|
m_title.text = string.Format("{0}\n{1}", meta.song.name, meta.name);
|
||||||
m_desc.text = string.Format(
|
m_desc.text = string.Format(
|
||||||
"Music artist: {0}\nCharter: {1}\nLength: {2}\nNote Count: {3}",
|
"Music artist: {0}\nCharter: {1}\nLength: {2}\nNote Count: {3}",
|
||||||
@@ -50,6 +51,11 @@ namespace Cryville.Crtr.Browsing.UI {
|
|||||||
TimeSpan.FromSeconds(meta.length).ToString(3), meta.note_count
|
TimeSpan.FromSeconds(meta.length).ToString(3), meta.note_count
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
m_title.text = "<color=#ff0000>Invalid resource</color>";
|
||||||
|
m_desc.text = string.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
private void DisplayCover(bool succeeded, Texture2D tex) {
|
private void DisplayCover(bool succeeded, Texture2D tex) {
|
||||||
if (succeeded) {
|
if (succeeded) {
|
||||||
m_cover.sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), Vector2.zero, 160, 0, SpriteMeshType.FullRect);
|
m_cover.sprite = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), Vector2.zero, 160, 0, SpriteMeshType.FullRect);
|
||||||
|
|||||||
Reference in New Issue
Block a user