private static void CheckDx11AndJoin(MyObjectBuilder_World world, MyMultiplayerBase multiplayer) { bool needsDx11 = world.Checkpoint.RequiresDX >= 11; if (!needsDx11 || MySandboxGame.IsDirectX11) { if (multiplayer.Battle) { if (multiplayer.BattleCanBeJoined) { MySessionLoader.LoadMultiplayerBattleWorld(world, multiplayer); } else { MyLog.Default.WriteLine("World downloaded but battle game ended"); MySessionLoader.UnloadAndExitToMenu(); MyGuiSandbox.Show(MyCommonTexts.MultiplayerErrorSessionEnded); multiplayer.Dispose(); } } else if (multiplayer.Scenario) { MySessionLoader.LoadMultiplayerScenarioWorld(world, multiplayer); } else { MySessionLoader.LoadMultiplayerSession(world, multiplayer); } } else { HandleDx11Needed(); } }