| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- 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);
- return ResultCode.Success;
- }
- public ResultCode GetResult()
- {
- return ResultCode.Success;
- }
- private byte[] BuildResponse()
- {
- UserProfile currentUser = _system.State.Account.LastOpenedUser;
- using (MemoryStream stream = new MemoryStream())
- using (BinaryWriter writer = new BinaryWriter(stream))
- {
- writer.Write((ulong)PlayerSelectResult.Success);
- currentUser.UserId.Write(writer);
- return stream.ToArray();
- }
- }
- }
- }
|