private static void OnAskInfo(ref AskInfoMsg msg, MyNetworkClient sender) { var answer = new AnswerInfoMsg(); answer.IsRunning = MyMultiplayer.Static.ScenarioStartTime > DateTime.MinValue; answer.CanJoin = !answer.IsRunning || MySession.Static.Settings.CanJoinRunning; Sync.Layer.SendMessage(ref answer, sender.SteamUserId); var timeoutMsg = new SetTimeoutMsg(); timeoutMsg.Index = (int)MyGuiScreenScenarioMpBase.Static.TimeoutCombo.GetSelectedIndex(); Sync.Layer.SendMessage(ref timeoutMsg, sender.SteamUserId); var outMsg = new SetJoinRunningMsg(); outMsg.CanJoin = MySession.Static.Settings.CanJoinRunning; Sync.Layer.SendMessage(ref outMsg, sender.SteamUserId); }
//client connected, asks for latest info (like if the game is already running and gui should be used accordingly) internal static void AskInfo() { var msg = new AskInfoMsg(); Sync.Layer.SendMessageToServer(ref msg); }