Пример #1
0
        public GameSettingsWindow(MainWindow window)
        {
            InitializeComponent();
            Owner     = window;
            _roomView = null;

            Closing += (sender, e) =>
            {
                try
                {
                    Game.Game.Instance.ValidateRoles();

                    if (_roomView != null)
                    {
                        _roomView.EnableStartGameButton();
                    }
                }
                catch (NotEnoughWerewolfException)
                {
                    e.Cancel = true;
                    MessageBox.Show("Il doit y avoir au moins un loup-garou.", "Erreur", MessageBoxButton.OK, MessageBoxImage.Error);
                }
                catch (TooMuchWerewolfException)
                {
                    e.Cancel = true;
                    MessageBox.Show("Il doit y avoir plus de villageois que de loup-garous.", "Erreur", MessageBoxButton.OK, MessageBoxImage.Error);
                }
                catch (NotEnoughRolesException)
                {
                    e.Cancel = true;
                    MessageBox.Show("Il n'y a pas assez de rôles pour tous les joueurs.", "Erreur", MessageBoxButton.OK, MessageBoxImage.Error);
                }
                catch (TooMuchRolesException)
                {
                    e.Cancel = true;
                    MessageBox.Show("Il y a trop de rôles.", "Erreur", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            };

            foreach (Role role in Role.GetAllRoles())
            {
                if (!Game.Game.Instance.ContainsRole(role) || !role.IsUnique)
                {
                    AddRoleAndSort(AvailableRoleList, role);
                }
            }

            foreach (Role role in Game.Game.Instance.GetRoles())
            {
                AddRoleAndSort(ChosenRoleList, role);
            }
        }
Пример #2
0
 public void SetRoomView(RoomView roomView)
 {
     _roomView = roomView;
 }