Ejemplo n.º 1
0
        public BasicHandChooser(LifeBoardGameVMData model, IEventAggregator aggregator)
        {
            StackLayout stack = new StackLayout()
            {
                Orientation = StackOrientation.Horizontal
            };
            Button button = GetGamingButton("", nameof(BasicSubmitViewModel.SubmitAsync));

            _button = button;

            //button.FontSize = 50;
            button.VerticalOptions = LayoutOptions.Start;
            LifeHandXF hand = new LifeHandXF();

            hand.HandType = HandObservable <LifeBaseCard> .EnumHandList.Vertical;

            stack.Children.Add(hand);
            StackLayout seconds = new StackLayout();

            seconds.Children.Add(button);

            stack.Children.Add(button);
            hand.LoadList(model.HandList, "");
            Content     = stack;
            _aggregator = aggregator;
        }
Ejemplo n.º 2
0
        public ShowCardView(LifeBoardGameVMData model)
        {
            LifePileXF card = new LifePileXF();

            card.Init(model.SinglePile, "");
            Content = card;
        }
 public GenderProcesses(LifeBoardGameVMData model, LifeBoardGameGameContainer gameContainer)
 {
     _model         = model;
     _gameContainer = gameContainer;
     _gameContainer.ComputerChooseGenderAsync = ComputerChooseGenderAsync;
     _gameContainer.ShowGenderAsync           = ShowGenderAsync;
 }
Ejemplo n.º 4
0
        //this is going to be the hardest.  because this one is responsible for making sure the proper screens load.

        public LifeBoardGameMainViewModel(CommandContainer commandContainer,
                                          LifeBoardGameMainGameClass mainGame,
                                          LifeBoardGameVMData model,
                                          BasicData basicData,
                                          TestOptions test,
                                          IGamePackageResolver resolver,
                                          LifeBoardGameGameContainer gameContainer
                                          )
            : base(commandContainer, mainGame, model, basicData, test, resolver)
        {
            _mainGame = mainGame;
            if (_mainGame.SaveRoot.GameStatus == EnumWhatStatus.NeedChooseGender)
            {
                throw new BasicBlankException("Cannot load main view model because you need to choose gender.  Rethink");
            }
            if (_mainGame.PlayerList.Any(x => x.Gender == EnumGender.None))
            {
                throw new BasicBlankException("Cannot load the main screen if sombody did not choose gender.  Rethink");
            }
            //_basicData = basicData;
            _resolver = resolver;
            gameContainer.HideCardAsync = HideCardAsync;
            gameContainer.CardVisible   = (() => ShowCardScreen != null);
            if (LifeBoardGameGameContainer.StartCollegeCareer && basicData.GamePackageMode == EnumGamePackageMode.Production)
            {
                throw new BasicBlankException("You cannot start college career because its in production");
            }
        }
Ejemplo n.º 5
0
 public ChooseHouseViewModel(CommandContainer commandContainer,
                             LifeBoardGameVMData model,
                             IHouseProcesses processes
                             ) : base(commandContainer)
 {
     _model     = model;
     _processes = processes;
     //decided to take a risk here.
 }
Ejemplo n.º 6
0
 public MoveProcesses(LifeBoardGameVMData model,
                      LifeBoardGameGameContainer gameContainer,
                      GameBoardProcesses gameBoard
                      )
 {
     _model         = model;
     _gameContainer = gameContainer;
     _gameBoard     = gameBoard;
 }
Ejemplo n.º 7
0
 public ChooseCareerViewModel(CommandContainer commandContainer,
                              LifeBoardGameGameContainer gameContainer,
                              LifeBoardGameVMData model,
                              ICareerProcesses processes
                              ) : base(commandContainer)
 {
     _gameContainer = gameContainer;
     _model         = model;
     _processes     = processes;
     //this time, can't double check unfortunately.
 }
Ejemplo n.º 8
0
 public ChooseGenderViewModel(CommandContainer commandContainer, LifeBoardGameVMData model, IGenderProcesses processes, LifeBoardGameGameContainer gameContainer)
 {
     CommandContainer = commandContainer;
     _model           = model;
     _processes       = processes;
     _gameContainer   = gameContainer;
     _gameContainer.SelectGenderAsync = _processes.ChoseGenderAsync;
     _processes.SetInstructions       = (x => Instructions = x);
     _processes.SetTurn = (x => Turn = x); //has to set delegates before init obviously.
     _model.GenderChooser.ItemClickedAsync += GenderChooser_ItemClickedAsync;
     //_processes.Init();
 }
 public ReturnStockViewModel(CommandContainer commandContainer,
                             LifeBoardGameGameContainer gameContainer,
                             LifeBoardGameVMData model,
                             IReturnStockProcesses processes
                             ) : base(commandContainer)
 {
     _gameContainer = gameContainer;
     _model         = model;
     _processes     = processes;
     if (_gameContainer.SaveRoot.GameStatus != EnumWhatStatus.NeedReturnStock)
     {
         throw new BasicBlankException("Does not even need to return stock.  Rethink");
     }
 }
Ejemplo n.º 10
0
 public ChooseSalaryViewModel(CommandContainer commandContainer,
                              LifeBoardGameGameContainer gameContainer,
                              LifeBoardGameVMData model,
                              IBasicSalaryProcesses processes
                              ) : base(commandContainer)
 {
     _gameContainer = gameContainer;
     _model         = model;
     _processes     = processes;
     if (_gameContainer.SaveRoot.GameStatus != EnumWhatStatus.NeedChooseSalary)
     {
         throw new BasicBlankException("Does not even need to choose salary.  Rethink");
     }
 }
 public StealTilesViewModel(
     CommandContainer commandContainer,
     LifeBoardGameGameContainer gameContainer,
     LifeBoardGameVMData model,
     IStolenTileProcesses processes
     ) : base(commandContainer)
 {
     if (gameContainer.SaveRoot.GameStatus != EnumWhatStatus.NeedStealTile)
     {
         throw new BasicBlankException("Was not stealing tiles");
     }
     _gameContainer      = gameContainer;
     _model              = model;
     _processes          = processes;
     _model.PlayerChosen = ""; //i think
 }
        //iffy
        public TradeSalaryViewModel(
            CommandContainer commandContainer,
            LifeBoardGameGameContainer gameContainer,
            LifeBoardGameVMData model,
            ITradeSalaryProcesses processes
            ) : base(commandContainer)
        {
            if (gameContainer.SaveRoot.GameStatus != EnumWhatStatus.NeedTradeSalary)
            {
                throw new BasicBlankException("Was not trading salary.  Therefore, should not have loaded the trade salary view model.  Rethink");
            }

            _gameContainer = gameContainer;
            _model         = model;
            _processes     = processes;
            //_model.PlayerChosen = ""; //i think
            //reset the other part.
        }
        public BasicPlayerPicker(LifeBoardGameVMData model)
        {
            //i think just the listview and submit
            //hopefully this one does not need end turn (?)
            //this is desktop anyways.
            ListChooserWPF list  = new ListChooserWPF();
            StackPanel     stack = new StackPanel()
            {
                Orientation = Orientation.Horizontal
            };

            stack.Children.Add(list);
            list.LoadLists(model.PlayerPicker);
            Button button = GetGamingButton("Submit", nameof(BasicSubmitViewModel.SubmitAsync));

            button.FontSize = 100;      //make 100 instead of 200 now.
            stack.Children.Add(button); //can always adjust as needed anyways.
            Content = stack;
        }
        public BasicHandChooser(LifeBoardGameVMData model)
        {
            StackPanel stack = new StackPanel()
            {
                Orientation = Orientation.Horizontal
            };
            Button button = GetGamingButton("", nameof(BasicSubmitViewModel.SubmitAsync));

            _button                  = button;
            button.FontSize          = 100; //make 100 instead of 200 now.
            button.VerticalAlignment = VerticalAlignment.Top;
            LifeHandWPF hand = new LifeHandWPF();

            hand.HandType = HandObservable <LifeBaseCard> .EnumHandList.Vertical;

            stack.Children.Add(hand);
            stack.Children.Add(button);
            hand.LoadList(model.HandList, "");
            Content = stack;
        }
        public BasicPlayerPicker(LifeBoardGameVMData model, IEventAggregator aggregator, LifeBoardGameGameContainer gameContainer)
        {
            //i think just the listview and submit
            //hopefully this one does not need end turn (?)
            //this is desktop anyways.
            ListChooserXF list = new ListChooserXF();

            list.ItemHeight = 50; // try this.
            StackLayout stack = new StackLayout();

            //{
            //    Orientation = StackOrientation.Horizontal
            //};
            stack.Children.Add(list);
            list.LoadLists(model.PlayerPicker);
            _button          = GetGamingButton("Submit", nameof(BasicSubmitViewModel.SubmitAsync));
            _button.FontSize = 80;       //could be iffy.
            stack.Children.Add(_button); //can always adjust as needed anyways.
            Content        = stack;
            _aggregator    = aggregator;
            _gameContainer = gameContainer;
        }
Ejemplo n.º 16
0
        public ChooseGenderView(IEventAggregator aggregator, LifeBoardGameVMData model, LifeBoardGameGameContainer gameContainer)
        {
            _aggregator    = aggregator;
            _gameContainer = gameContainer;
            _aggregator.Subscribe(this);
            StackPanel stack  = new StackPanel();
            var        picker = new EnumPickerWPF <CirclePieceCP <EnumGender>, CirclePieceWPF <EnumGender>, EnumGender>();

            stack.Children.Add(picker);
            picker.LoadLists(model.GenderChooser);
            _car           = new CarPieceWPF();
            _car.Height    = 186;
            _car.Width     = 102;
            _car.Margin    = new Thickness(0, 20, 0, 0);
            _car.MainColor = _gameContainer.SingleInfo !.Color.ToColor(); //because too late the first time it runs.
            _car.Init();
            stack.Children.Add(_car);
            SimpleLabelGrid simple = new SimpleLabelGrid();

            simple.AddRow("Turn", nameof(ChooseGenderViewModel.Turn));
            simple.AddRow("Instructions", nameof(ChooseGenderViewModel.Instructions));
            stack.Children.Add(simple.GetContent);
            Content = stack;
        }
 public LifeBoardGameMainGameClass(IGamePackageResolver resolver,
                                   IEventAggregator aggregator,
                                   BasicData basic,
                                   TestOptions test,
                                   LifeBoardGameVMData model,
                                   IMultiplayerSaveState state,
                                   IAsyncDelayer delay,
                                   CommandContainer command,
                                   LifeBoardGameGameContainer container,
                                   IBoardProcesses boardProcesses,
                                   ISpinnerProcesses spinnerProcesses,
                                   ITwinProcesses twinProcesses,
                                   IHouseProcesses houseProcesses,
                                   IChooseStockProcesses chooseStockProcesses,
                                   IReturnStockProcesses returnStockProcesses,
                                   ICareerProcesses careerProcesses,
                                   IBasicSalaryProcesses basicSalaryProcesses,
                                   ITradeSalaryProcesses tradeSalaryProcesses,
                                   IStolenTileProcesses stolenTileProcesses,
                                   GameBoardProcesses gameBoard
                                   ) : base(resolver, aggregator, basic, test, model, state, delay, command, container)
 {
     _model                = model;
     _boardProcesses       = boardProcesses; //hopefully i won't regret this.  can always do delegates if necessary as well.
     _spinnerProcesses     = spinnerProcesses;
     _twinProcesses        = twinProcesses;
     _houseProcesses       = houseProcesses;
     _chooseStockProcesses = chooseStockProcesses;
     _returnStockProcesses = returnStockProcesses;
     _careerProcesses      = careerProcesses;
     _basicSalaryProcesses = basicSalaryProcesses;
     _tradeSalaryProcesses = tradeSalaryProcesses;
     _stolenTileProcesses  = stolenTileProcesses;
     _gameBoard            = gameBoard;
     _gameContainer        = container;
 }
Ejemplo n.º 18
0
 public BasicSalaryProcesses(LifeBoardGameVMData model, LifeBoardGameGameContainer gameContainer)
 {
     _model         = model;
     _gameContainer = gameContainer;
 }
Ejemplo n.º 19
0
 public StealTilesView(LifeBoardGameVMData model) : base(model)
 {
 }
 public ChooseSalaryView(LifeBoardGameVMData model) : base(model)
 {
 }
Ejemplo n.º 21
0
 public HouseProcesses(LifeBoardGameVMData model, LifeBoardGameGameContainer gameContainer)
 {
     _model         = model;
     _gameContainer = gameContainer;
 }
Ejemplo n.º 22
0
 public ChooseHouseView(LifeBoardGameVMData model) : base(model)
 {
 }
 public ChooseStockProcesses(LifeBoardGameVMData model, LifeBoardGameGameContainer gameContainer)
 {
     _model         = model;
     _gameContainer = gameContainer;
 }
Ejemplo n.º 24
0
 public TradeSalaryView(LifeBoardGameVMData model, IEventAggregator aggregator, LifeBoardGameGameContainer gameContainer) : base(model, aggregator, gameContainer)
 {
 }
Ejemplo n.º 25
0
 public TradeSalaryView(LifeBoardGameVMData model) : base(model)
 {
 }
Ejemplo n.º 26
0
 public ChooseCareerView(LifeBoardGameVMData model) : base(model)
 {
 }
 public ChooseHouseView(LifeBoardGameVMData model, IEventAggregator aggregator) : base(model, aggregator)
 {
 }
 public StealTilesView(LifeBoardGameVMData model, IEventAggregator aggregator, LifeBoardGameGameContainer gameContainer) : base(model, aggregator, gameContainer)
 {
 }
Ejemplo n.º 29
0
 public ReturnStockView(LifeBoardGameVMData model, IEventAggregator aggregator) : base(model, aggregator)
 {
 }
 public ReturnStockView(LifeBoardGameVMData model) : base(model)
 {
 }