diff --git a/src/Ryujinx/Systems/AppLibrary/ApplicationLibrary.cs b/src/Ryujinx/Systems/AppLibrary/ApplicationLibrary.cs index 1db2332b8..1a0314bcf 100644 --- a/src/Ryujinx/Systems/AppLibrary/ApplicationLibrary.cs +++ b/src/Ryujinx/Systems/AppLibrary/ApplicationLibrary.cs @@ -14,6 +14,7 @@ using LibHac.Tools.FsSystem.NcaUtils; using Ryujinx.Ava.Common.Models; using Ryujinx.Ava.Systems.Configuration; using Ryujinx.Ava.Systems.Configuration.System; +using Ryujinx.Ava.Systems.Starscript; using Ryujinx.Ava.Utilities; using Ryujinx.Common; using Ryujinx.Common.Configuration; @@ -25,6 +26,7 @@ using Ryujinx.HLE.HOS.SystemState; using Ryujinx.HLE.Loaders.Npdm; using Ryujinx.HLE.Loaders.Processes.Extensions; using Ryujinx.HLE.Utilities; +using Starscript; using System; using System.Collections.Generic; using System.IO; @@ -41,7 +43,7 @@ using TimeSpan = System.TimeSpan; namespace Ryujinx.Ava.Systems.AppLibrary { - public class ApplicationLibrary + public class ApplicationLibrary : IStarscriptObject { public Language DesiredLanguage { get; set; } public event EventHandler ApplicationCountUpdated; @@ -1611,5 +1613,14 @@ namespace Ryujinx.Ava.Systems.AppLibrary ApplicationData newApplication = newApplications.First(it => it.IdBase == appIdBase); _applications.AddOrUpdate(newApplication); } + + private ValueMap _starscriptMap; + + public ValueMap ToStarscript() + { + _starscriptMap ??= StarscriptHelper.Wrap(this); + + return _starscriptMap; + } } } diff --git a/src/Ryujinx/Systems/Starscript/RyujinxStarscript.cs b/src/Ryujinx/Systems/Starscript/RyujinxStarscript.cs index 9efa16178..0f9a12436 100644 --- a/src/Ryujinx/Systems/Starscript/RyujinxStarscript.cs +++ b/src/Ryujinx/Systems/Starscript/RyujinxStarscript.cs @@ -17,7 +17,7 @@ namespace Ryujinx.Ava.Systems.Starscript ? "Stable" : "Custom"); Hypervisor.Set("ryujinx.version", Program.Version); - Hypervisor.Set("appLibrary", StarscriptHelper.Wrap(RyujinxApp.MainWindow.ApplicationLibrary)); + Hypervisor.Set("appLibrary", RyujinxApp.MainWindow.ApplicationLibrary); Hypervisor.Set("currentApplication", () => RyujinxApp.MainWindow.ApplicationLibrary.FindApplication( RyujinxApp.MainWindow.ViewModel.AppHost?.ApplicationId ?? 0,