namespace Ashwild.Network { /// /// Carries the player's menu choice (save slot, host vs. join, join code) across the /// MenuScene → GameScene transition. Plain static state so it survives the scene load /// without needing a DontDestroyOnLoad object of its own. /// public static class GameSession { #region Types /// /// How the upcoming game scene should be launched on the network. /// public enum LaunchMode { Host, Join } #endregion #region State /// /// Whether the next launch hosts a new session or joins an existing one. /// public static LaunchMode Mode { get; set; } = LaunchMode.Host; /// /// The save slot picked in the menu (-1 when none). Reserved for the future SaveManager. /// public static int SelectedSlot { get; set; } = -1; /// /// The session code to connect to when is Join (host SteamID64). /// public static string JoinCode { get; set; } = string.Empty; #endregion } }