aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Ava/UI/ViewModels/AmiiboWindowViewModel.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Ava/UI/ViewModels/AmiiboWindowViewModel.cs')
-rw-r--r--Ryujinx.Ava/UI/ViewModels/AmiiboWindowViewModel.cs35
1 files changed, 16 insertions, 19 deletions
diff --git a/Ryujinx.Ava/UI/ViewModels/AmiiboWindowViewModel.cs b/Ryujinx.Ava/UI/ViewModels/AmiiboWindowViewModel.cs
index 090c13a9..5311318c 100644
--- a/Ryujinx.Ava/UI/ViewModels/AmiiboWindowViewModel.cs
+++ b/Ryujinx.Ava/UI/ViewModels/AmiiboWindowViewModel.cs
@@ -4,11 +4,11 @@ using Avalonia.Media.Imaging;
using Avalonia.Threading;
using Ryujinx.Ava.Common.Locale;
using Ryujinx.Ava.UI.Helpers;
+using Ryujinx.Ava.UI.Models;
using Ryujinx.Ava.UI.Windows;
using Ryujinx.Common;
using Ryujinx.Common.Configuration;
using Ryujinx.Common.Utilities;
-using Ryujinx.Ui.Common.Models.Amiibo;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
@@ -17,7 +17,6 @@ using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
-using AmiiboJsonSerializerContext = Ryujinx.Ui.Common.Models.Amiibo.AmiiboJsonSerializerContext;
namespace Ryujinx.Ava.UI.ViewModels
{
@@ -32,8 +31,8 @@ namespace Ryujinx.Ava.UI.ViewModels
private readonly StyleableWindow _owner;
private Bitmap _amiiboImage;
- private List<AmiiboApi> _amiiboList;
- private AvaloniaList<AmiiboApi> _amiibos;
+ private List<Amiibo.AmiiboApi> _amiiboList;
+ private AvaloniaList<Amiibo.AmiiboApi> _amiibos;
private ObservableCollection<string> _amiiboSeries;
private int _amiiboSelectedIndex;
@@ -42,8 +41,6 @@ namespace Ryujinx.Ava.UI.ViewModels
private bool _showAllAmiibo;
private bool _useRandomUuid;
private string _usage;
-
- private static readonly AmiiboJsonSerializerContext SerializerContext = new(JsonHelper.GetDefaultSerializerOptions());
public AmiiboWindowViewModel(StyleableWindow owner, string lastScannedAmiiboId, string titleId)
{
@@ -55,9 +52,9 @@ namespace Ryujinx.Ava.UI.ViewModels
Directory.CreateDirectory(Path.Join(AppDataManager.BaseDirPath, "system", "amiibo"));
_amiiboJsonPath = Path.Join(AppDataManager.BaseDirPath, "system", "amiibo", "Amiibo.json");
- _amiiboList = new List<AmiiboApi>();
+ _amiiboList = new List<Amiibo.AmiiboApi>();
_amiiboSeries = new ObservableCollection<string>();
- _amiibos = new AvaloniaList<AmiiboApi>();
+ _amiibos = new AvaloniaList<Amiibo.AmiiboApi>();
_amiiboLogoBytes = EmbeddedResources.Read("Ryujinx.Ui.Common/Resources/Logo_Amiibo.png");
@@ -97,7 +94,7 @@ namespace Ryujinx.Ava.UI.ViewModels
}
}
- public AvaloniaList<AmiiboApi> AmiiboList
+ public AvaloniaList<Amiibo.AmiiboApi> AmiiboList
{
get => _amiibos;
set
@@ -190,9 +187,9 @@ namespace Ryujinx.Ava.UI.ViewModels
if (File.Exists(_amiiboJsonPath))
{
- amiiboJsonString = await File.ReadAllTextAsync(_amiiboJsonPath);
+ amiiboJsonString = File.ReadAllText(_amiiboJsonPath);
- if (await NeedsUpdate(JsonHelper.Deserialize(amiiboJsonString, SerializerContext.AmiiboJson).LastUpdated))
+ if (await NeedsUpdate(JsonHelper.Deserialize<Amiibo.AmiiboJson>(amiiboJsonString).LastUpdated))
{
amiiboJsonString = await DownloadAmiiboJson();
}
@@ -209,7 +206,7 @@ namespace Ryujinx.Ava.UI.ViewModels
}
}
- _amiiboList = JsonHelper.Deserialize(amiiboJsonString, SerializerContext.AmiiboJson).Amiibo;
+ _amiiboList = JsonHelper.Deserialize<Amiibo.AmiiboJson>(amiiboJsonString).Amiibo;
_amiiboList = _amiiboList.OrderBy(amiibo => amiibo.AmiiboSeries).ToList();
ParseAmiiboData();
@@ -226,7 +223,7 @@ namespace Ryujinx.Ava.UI.ViewModels
{
if (!ShowAllAmiibo)
{
- foreach (AmiiboApiGamesSwitch game in _amiiboList[i].GamesSwitch)
+ foreach (Amiibo.AmiiboApiGamesSwitch game in _amiiboList[i].GamesSwitch)
{
if (game != null)
{
@@ -258,7 +255,7 @@ namespace Ryujinx.Ava.UI.ViewModels
private void SelectLastScannedAmiibo()
{
- AmiiboApi scanned = _amiiboList.FirstOrDefault(amiibo => amiibo.GetId() == LastScannedAmiiboId);
+ Amiibo.AmiiboApi scanned = _amiiboList.FirstOrDefault(amiibo => amiibo.GetId() == LastScannedAmiiboId);
SeriesSelectedIndex = AmiiboSeries.IndexOf(scanned.AmiiboSeries);
AmiiboSelectedIndex = AmiiboList.IndexOf(scanned);
@@ -273,7 +270,7 @@ namespace Ryujinx.Ava.UI.ViewModels
return;
}
- List<AmiiboApi> amiiboSortedList = _amiiboList
+ List<Amiibo.AmiiboApi> amiiboSortedList = _amiiboList
.Where(amiibo => amiibo.AmiiboSeries == _amiiboSeries[SeriesSelectedIndex])
.OrderBy(amiibo => amiibo.Name).ToList();
@@ -283,7 +280,7 @@ namespace Ryujinx.Ava.UI.ViewModels
{
if (!_showAllAmiibo)
{
- foreach (AmiiboApiGamesSwitch game in amiiboSortedList[i].GamesSwitch)
+ foreach (Amiibo.AmiiboApiGamesSwitch game in amiiboSortedList[i].GamesSwitch)
{
if (game != null)
{
@@ -317,7 +314,7 @@ namespace Ryujinx.Ava.UI.ViewModels
return;
}
- AmiiboApi selected = _amiibos[_amiiboSelectedIndex];
+ Amiibo.AmiiboApi selected = _amiibos[_amiiboSelectedIndex];
string imageUrl = _amiiboList.FirstOrDefault(amiibo => amiibo.Equals(selected)).Image;
@@ -329,11 +326,11 @@ namespace Ryujinx.Ava.UI.ViewModels
{
bool writable = false;
- foreach (AmiiboApiGamesSwitch item in _amiiboList[i].GamesSwitch)
+ foreach (Amiibo.AmiiboApiGamesSwitch item in _amiiboList[i].GamesSwitch)
{
if (item.GameId.Contains(TitleId))
{
- foreach (AmiiboApiUsage usageItem in item.AmiiboUsage)
+ foreach (Amiibo.AmiiboApiUsage usageItem in item.AmiiboUsage)
{
usageString += Environment.NewLine +
$"- {usageItem.Usage.Replace("/", Environment.NewLine + "-")}";