namespace Microsoft.Xna.Framework.GamerServices { /// /// Represents a signed-in gamer. /// public class SignedInGamer : Gamer { private static SignedInGamer current; /// /// Gets the current signed-in gamer. /// public static SignedInGamer Current { get { if (current == null) { current = new SignedInGamer(); current.SetGamertag(Environment.UserName); } return current; } internal set => current = value; } private string gamertag; /// /// Gets or sets the gamertag for this gamer. /// public override string Gamertag { get => gamertag; } /// /// Sets the gamertag for this gamer. /// internal void SetGamertag(string value) { gamertag = value; } /// /// Gets whether this gamer is signed in to a live service. /// public bool IsSignedInToLive => false; // Mock implementation /// /// Gets whether this gamer is a guest. /// public bool IsGuest => false; /// /// Gets the display name for this gamer. /// public new string DisplayName => Gamertag; /// /// Gets the presence information for this gamer. /// public GamerPresence Presence { get; } = new GamerPresence(); /// /// Gets the player index for this gamer. /// public PlayerIndex PlayerIndex { get; internal set; } = PlayerIndex.One; internal SignedInGamer() { } public GamerPrivileges Privileges { get; private set; } } }