예제 #1
0
 private void ResetOptions()
 {
     Options.ResetToDefault();
     Settings.Default.GameOptions = Options;
     Settings.Default.Save();
     OnPropertyChanged("Options");
 }
예제 #2
0
        public Server(IPlayerManager playerManager, ISpectatorManager spectatorManager, IPieceProvider pieceProvider, IActionQueue gameActionQueue)
        {
            if (playerManager == null)
            {
                throw new ArgumentNullException(nameof(playerManager));
            }

            Options = new GameOptions();
            Options.ResetToDefault();

            _pieceProvider             = pieceProvider;
            _pieceProvider.Occurancies = () => Options.PieceOccurancies;
            _playerManager             = playerManager;
            _spectatorManager          = spectatorManager;
            _gameActionQueue           = gameActionQueue;
            _hosts = new List <IHost>();

            Assembly entryAssembly = Assembly.GetEntryAssembly();

            if (entryAssembly != null)
            {
                Version version = entryAssembly.GetName().Version;
                Version = new Versioning
                {
                    Major = version.Major,
                    Minor = version.Minor,
                };
            }// else, we suppose SetVersion will be called later, before connecting

            _gameStatistics = new Dictionary <string, GameStatisticsByPlayer>();

            _winList = new List <WinEntry>();

            State = ServerStates.WaitingStartServer;
        }
예제 #3
0
        public ServerOptionsViewModelDesignData()
        {
            Options = new GameOptions();
            Options.ResetToDefault();

            SpecialOccurancyChangedCommand = new RelayCommand(() => { });
            PieceOccurancyChangedCommand   = new RelayCommand(() => { });
        }