| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- using Ryujinx.HLE.HOS.Services.Account.Acc;
- using Ryujinx.HLE.HOS.Services.Am.AppletAE;
- using System;
- using System.IO;
- namespace Ryujinx.HLE.HOS.Applets
- {
- internal class PlayerSelectApplet : IApplet
- {
- private Horizon _system;
- private AppletSession _normalSession;
- private AppletSession _interactiveSession;
- public event EventHandler AppletStateChanged;
- public PlayerSelectApplet(Horizon system)
- {
- _system = system;
- }
- public ResultCode Start(AppletSession normalSession, AppletSession interactiveSession)
- {
- _normalSession = normalSession;
- _interactiveSession = interactiveSession;
- // TODO(jduncanator): Parse PlayerSelectConfig from input data
- _normalSession.Push(BuildResponse());
- AppletStateChanged?.Invoke(this, null);
- _system.ReturnFocus();
- return ResultCode.Success;
- }
- public ResultCode GetResult()
- {
- return ResultCode.Success;
- }
- private byte[] BuildResponse()
- {
- UserProfile currentUser = _system.AccountManager.LastOpenedUser;
- using (MemoryStream stream = new MemoryStream())
- using (BinaryWriter writer = new BinaryWriter(stream))
- {
- writer.Write((ulong)PlayerSelectResult.Success);
- currentUser.UserId.Write(writer);
- return stream.ToArray();
- }
- }
- }
- }
|