コード例 #1
0
 private void SetUpTeamPiles()
 {
     _mainGame !.SingleInfo = _gameContainer.PlayerList !.GetSelf();
     if (_gameContainer.SingleInfo !.MainHandList.Any(items => items.CompleteCategory == EnumCompleteCategories.None))
     {
         throw new BasicBlankException("Cannot have category of none.  Rethink");
     }
     _pileStack !.Children.Clear();
     _gameContainer.TeamList.ForEach(thisTeam =>
     {
         Grid tempGrid   = new Grid();
         tempGrid.Margin = new Thickness(0, 0, 0, 20);
         AddAutoRows(tempGrid, 2);
         AddAutoColumns(tempGrid, 2);
         TextBlock ThisLabel  = new TextBlock();
         ThisLabel.Text       = thisTeam.Text;
         ThisLabel.Foreground = Brushes.Aqua;
         ThisLabel.FontWeight = FontWeights.Bold;
         AddControlToGrid(tempGrid, ThisLabel, 0, 0);
         Grid.SetColumnSpan(ThisLabel, 2);
         ThisLabel.HorizontalAlignment = HorizontalAlignment.Center; // try this
         BasicMultiplePilesWPF <MillebournesCardInformation, MillebournesGraphicsCP, CardGraphicsWPF> thisDis = new BasicMultiplePilesWPF <MillebournesCardInformation, MillebournesGraphicsCP, CardGraphicsWPF>();
         thisDis.Init(thisTeam.CardPiles, "");
         thisDis.StartAnimationListener("team" + thisTeam.TeamNumber);
         AddControlToGrid(tempGrid, thisDis, 1, 0);
         SafetiesWPF thisS = new SafetiesWPF();
         thisS.Init(thisTeam, _mainGame, _gameContainer.Command);
         _disList.Add(thisDis);
         AddControlToGrid(tempGrid, thisS, 1, 1);
         _pileStack.Children.Add(tempGrid);
     });
 }
コード例 #2
0
        public void Init(BasicMultiplePilesWPF <SolitaireCard, ts, DeckOfCardsWPF <SolitaireCard> > main)
        {
            WastePiles thisWaste = Resolve <WastePiles>();

            if (thisWaste.Discards !.PileList !.Count != 8)
            {
                throw new BasicBlankException("There must be 8 piles total");
            }
            _thisGrid = new Grid();
            Margin    = new Thickness(10, 5, 5, 5);
            AddAutoColumns(_thisGrid, 4);
            AddAutoRows(_thisGrid, 3);
            var thisList = thisWaste.Discards.PileList.Take(4).ToCustomBasicList();

            main.Margin = new Thickness(0, 0, 0, 0);
            CustomMain thisMain = Resolve <CustomMain>();

            main.Init(thisMain.Piles, ts.TagUsed);
            LoadList(0, thisList, thisWaste);
            AddControlToGrid(_thisGrid, main, 1, 0);
            Grid.SetColumnSpan(main, 4);
            thisList = thisWaste.Discards.PileList.Skip(4).ToCustomBasicList();
            LoadList(2, thisList, thisWaste);
            Content = _thisGrid;
        }
コード例 #3
0
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            HeapSolitaireMainViewModel model = (HeapSolitaireMainViewModel)DataContext;

            _mainPile.Init(model.Main1, ts.TagUsed);
            _wastePile.Init(model);

            return(Task.CompletedTask);
        }
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            EagleWingsSolitaireMainViewModel model = (EagleWingsSolitaireMainViewModel)DataContext;

            _waste.Init(model);
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);
            return(Task.CompletedTask);
        }
コード例 #5
0
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            GamePackageViewModelBinder.ManuelElements.Clear();                     //often times i have to add manually.

            ConcentrationSaveInfo save = cons !.Resolve <ConcentrationSaveInfo>(); //usually needs this part for multiplayer games.

            _score !.LoadLists(save.PlayerList);
            _board.Init(_model.GameBoard1, ts.TagUsed);
            return(this.RefreshBindingsAsync(_aggregator));
        }
コード例 #6
0
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            BeleaguredCastleMainViewModel model = (BeleaguredCastleMainViewModel)DataContext;
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);
            var tempWaste = (WastePiles)model.WastePiles1 !;

            _waste.Init(tempWaste.Piles, _main);
            return(Task.CompletedTask);
        }
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            FlorentineSolitaireMainViewModel model = (FlorentineSolitaireMainViewModel)DataContext;
            var tempWaste = (WastePiles)model.WastePiles1 !;

            _waste.Init(tempWaste.Discards !, ts.TagUsed);
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);
            return(Task.CompletedTask);
        }
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            CalculationSolitaireMainViewModel model = (CalculationSolitaireMainViewModel)DataContext;
            var tempWaste = (WastePiles)model.WastePiles1 !;

            _waste.Init(tempWaste.Piles);
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);

            return(this.RefreshBindingsAsync(_aggregator));
        }
コード例 #9
0
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            FreeCellSolitaireMainViewModel model = (FreeCellSolitaireMainViewModel)DataContext;
            var tempWaste = (WastePiles)model.WastePiles1 !;

            _waste.Init(tempWaste.Piles);
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);
            _free.Init(model.FreePiles1, ts.TagUsed);
            return(Task.CompletedTask);
        }
コード例 #10
0
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            EightOffSolitaireMainViewModel model = (EightOffSolitaireMainViewModel)DataContext;
            var tempWaste = (WastePiles)model.WastePiles1 !;

            _waste.Init(tempWaste.Piles);
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);
            _reserve.LoadList(model.ReservePiles1, ts.TagUsed);
            return(Task.CompletedTask);
        }
コード例 #11
0
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            //todo:  most of the time needs this.  if in a case its not needed, then delete then.
            PersianSolitaireMainViewModel model = (PersianSolitaireMainViewModel)DataContext;
            var tempWaste = (WastePiles)model.WastePiles1 !;

            _waste.Init(tempWaste.Piles);
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);
            return(Task.CompletedTask);
        }
コード例 #12
0
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            RaglanSolitaireMainViewModel model = (RaglanSolitaireMainViewModel)DataContext;
            var tempWaste = (WastePiles)model.WastePiles1 !;

            _waste.Init(tempWaste.Piles);
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);
            _stock.LoadList(model.Stock1 !, ts.TagUsed);
            return(Task.CompletedTask);
        }
        Task IHandleAsync <LoadEventModel> .HandleAsync(LoadEventModel message)
        {
            AlternationSolitaireSaveInfo thisSave = cons !.Resolve <AlternationSolitaireSaveInfo>();
            //todo:  most of the time needs this.  if in a case its not needed, then delete then.
            AlternationSolitaireMainViewModel model = (AlternationSolitaireMainViewModel)DataContext;
            var tempWaste = (WastePiles)model.WastePiles1 !;

            _waste.Init(tempWaste.Piles);
            var tempMain = (MainPilesCP)model.MainPiles1 !;

            _main.Init(tempMain.Piles, ts.TagUsed);

            return(this.RefreshBindingsAsync(_aggregator));
        }