Example #1
0
        public static void Create(string serverTitle, string password, int maxPlayerCount)
        {
            UnityEngine.Network.InitializeSecurity();
            try
            {
                G.Sys.NetworkingManager_.password_       = password;
                G.Sys.NetworkingManager_.serverTitle_    = serverTitle;
                G.Sys.NetworkingManager_.maxPlayerCount_ = maxPlayerCount;

                G.Sys.GameData_.SetString("ServerTitleDefault", serverTitle);
                G.Sys.GameData_.SetInt("MaxPlayersDefault", maxPlayerCount);

                var ncError = UnityEngine.Network.InitializeServer(maxPlayerCount - 1, 32323, true);

                if (ncError == NetworkConnectionError.NoError)
                {
                    var eventArgs = new ServerCreatedEventArgs(serverTitle, password, maxPlayerCount);
                    ServerCreated?.Invoke(null, eventArgs);
                    return;
                }

                G.Sys.MenuPanelManager_.ShowError(ncError.ToString(), "Failed to start server");
            }
            catch (Exception ex)
            {
                Debug.LogError(ex.Message);
            }
        }
        private void ServerCreated(object sender, ServerCreatedEventArgs args)
        {
            // Save user settings as there might be new settings
            _userSettings.ServerSetup = args.Settings;
            SaveUserSettings(UserSettingsFilePath, _userSettings);

            BitmapRepository          bitmapRepository    = new BitmapRepository(new FileSystem(), _userSettings.ServerSetup.BitmapFolder);
            BitmapThumbnailRepository thumbnailRepository = new BitmapThumbnailRepository(new FileSystem(), ThumbnailRepository, bitmapRepository);

            thumbnailRepository.Create();
            BitmapStoryboardCreator bitmapStoryboardCreator = new BitmapStoryboardCreator(bitmapRepository, 480, 3, 2);  // TODO get these magic values from the config
            StoryboardRepository    storyboardRepository    = new StoryboardRepository(_userSettings.ServerSetup.StoryboardFolder);

            SelectedViewModel = new MainControlPanelViewModel(args.StellaServer, storyboardRepository, bitmapStoryboardCreator, bitmapRepository, thumbnailRepository, LogViewModel, args.MidiInputManager);
        }