public SixtySix2PlayerMainViewModel(CommandContainer commandContainer, SixtySix2PlayerMainGameClass mainGame, SixtySix2PlayerVMData viewModel, BasicData basicData, TestOptions test, IGamePackageResolver resolver ) : base(commandContainer, mainGame, viewModel, basicData, test, resolver) { _mainGame = mainGame; _model = viewModel; _model.Deck1.NeverAutoDisable = true; commandContainer.ExecutingChanged += CommandContainer_ExecutingChanged; }
public SixtySix2PlayerMainGameClass(IGamePackageResolver mainContainer, IEventAggregator aggregator, BasicData basicData, TestOptions test, SixtySix2PlayerVMData currentMod, IMultiplayerSaveState state, IAsyncDelayer delay, ICardInfo <SixtySix2PlayerCardInformation> cardInfo, CommandContainer command, SixtySix2PlayerGameContainer gameContainer, ITrickData trickData, ITrickPlay trickPlay, IAdvancedTrickProcesses aTrick ) : base(mainContainer, aggregator, basicData, test, currentMod, state, delay, cardInfo, command, gameContainer, trickData, trickPlay) { _model = currentMod; _command = command; _gameContainer = gameContainer; _aTrick = aTrick; }
public void LoadList(SixtySix2PlayerVMData thisMod) { Text = "Scoring Guide"; _thisGrid = new Grid(); _thisGrid.RowSpacing = 0; _thisGrid.ColumnSpacing = 0; SetUpMarginsOnParentControl(_thisGrid); AddAutoColumns(_thisGrid, 2); AddAutoRows(_thisGrid, 9); var thisLabel = GetLargestLabel("Point Values:"); AddControlToGrid(_thisGrid, thisLabel, 0, 0); _rowNumber = 1; var thisList = thisMod.GetDescriptionList(); thisList.ForEach(thisscore => AddStandardLabel(thisscore)); Grid finalGrid = new Grid(); finalGrid.Children.Add(ThisDraw); finalGrid.Children.Add(_thisGrid); Content = finalGrid; }
public SixtySix2PlayerMainView(IEventAggregator aggregator, TestOptions test, SixtySix2PlayerVMData model, IGamePackageResolver resolver ) { _aggregator = aggregator; _model = model; _resolver = resolver; _aggregator.Subscribe(this); _deckGPile = new BaseDeckWPF <SixtySix2PlayerCardInformation, ts, DeckOfCardsWPF <SixtySix2PlayerCardInformation> >(); _discardGPile = new BasePileWPF <SixtySix2PlayerCardInformation, ts, DeckOfCardsWPF <SixtySix2PlayerCardInformation> >(); _score = new ScoreBoardWPF(); _playerHandWPF = new BaseHandWPF <SixtySix2PlayerCardInformation, ts, DeckOfCardsWPF <SixtySix2PlayerCardInformation> >(); _trick1 = new TwoPlayerTrickWPF <EnumSuitList, SixtySix2PlayerCardInformation, ts, DeckOfCardsWPF <SixtySix2PlayerCardInformation> >(); _deckStack = new StackPanel(); _marriage1 = new BaseHandWPF <SixtySix2PlayerCardInformation, ts, DeckOfCardsWPF <SixtySix2PlayerCardInformation> >(); _guide1 = new GuideUI(); StackPanel mainStack = new StackPanel(); ParentSingleUIContainer?restoreP = null; if (test.SaveOption == EnumTestSaveCategory.RestoreOnly) { restoreP = new ParentSingleUIContainer() { Name = nameof(SixtySix2PlayerMainViewModel.RestoreScreen) }; } StackPanel otherStack = new StackPanel(); otherStack.Orientation = Orientation.Horizontal; otherStack.Children.Add(_deckStack); _deckStack.Children.Add(_discardGPile); // can reposition or not even have as well. mainStack.Children.Add(otherStack); _score.AddColumn("Cards Left", true, nameof(SixtySix2PlayerPlayerItem.ObjectCount)); _score.AddColumn("Tricks Won", true, nameof(SixtySix2PlayerPlayerItem.TricksWon)); _score.AddColumn("Score Round", true, nameof(SixtySix2PlayerPlayerItem.ScoreRound)); _score.AddColumn("Game Points Round", true, nameof(SixtySix2PlayerPlayerItem.GamePointsRound)); _score.AddColumn("Total Points Game", true, nameof(SixtySix2PlayerPlayerItem.GamePointsGame)); SimpleLabelGrid firstInfo = new SimpleLabelGrid(); firstInfo.AddRow("Turn", nameof(SixtySix2PlayerMainViewModel.NormalTurn)); firstInfo.AddRow("Trump", nameof(SixtySix2PlayerMainViewModel.TrumpSuit)); firstInfo.AddRow("Status", nameof(SixtySix2PlayerMainViewModel.Status)); firstInfo.AddRow("Bonus", nameof(SixtySix2PlayerMainViewModel.BonusPoints)); otherStack.Children.Add(_trick1); mainStack.Children.Add(_playerHandWPF); mainStack.Children.Add(firstInfo.GetContent); mainStack.Children.Add(_score); otherStack = new StackPanel(); otherStack.Orientation = Orientation.Horizontal; var thisBut = GetGamingButton("Go Out", nameof(SixtySix2PlayerMainViewModel.GoOutAsync)); otherStack.Children.Add(thisBut); thisBut = GetGamingButton("Announce Marriage", nameof(SixtySix2PlayerMainViewModel.AnnouceMarriageAsync)); otherStack.Children.Add(thisBut); mainStack.Children.Add(otherStack); mainStack.Children.Add(_marriage1); Grid finalGrid = new Grid(); AddLeftOverColumn(finalGrid, 60); AddLeftOverColumn(finalGrid, 40); // hopefully that works. AddControlToGrid(finalGrid, mainStack, 0, 0); AddControlToGrid(finalGrid, _guide1, 0, 1); _deckGPile.Margin = new Thickness(5, 5, 5, 5); _discardGPile.Margin = new Thickness(5, 5, 5, 5); if (restoreP != null) { mainStack.Children.Add(restoreP); //default add to grid but does not have to. } Content = finalGrid; }
public SixtySix2PlayerMainView(IEventAggregator aggregator, TestOptions test, SixtySix2PlayerVMData model, IGamePackageResolver resolver ) { _aggregator = aggregator; _model = model; _resolver = resolver; _aggregator.Subscribe(this); _deckGPile = new BaseDeckXF <SixtySix2PlayerCardInformation, ts, DeckOfCardsXF <SixtySix2PlayerCardInformation> >(); _discardGPile = new BasePileXF <SixtySix2PlayerCardInformation, ts, DeckOfCardsXF <SixtySix2PlayerCardInformation> >(); _score = new ScoreBoardXF(); _playerHandWPF = new BaseHandXF <SixtySix2PlayerCardInformation, ts, DeckOfCardsXF <SixtySix2PlayerCardInformation> >(); _trick1 = new TwoPlayerTrickXF <EnumSuitList, SixtySix2PlayerCardInformation, ts, DeckOfCardsXF <SixtySix2PlayerCardInformation> >(); _deckStack = new StackLayout(); _marriage1 = new BaseHandXF <SixtySix2PlayerCardInformation, ts, DeckOfCardsXF <SixtySix2PlayerCardInformation> >(); StackLayout mainStack = new StackLayout(); ParentSingleUIContainer?restoreP = null; if (test.SaveOption == EnumTestSaveCategory.RestoreOnly) { restoreP = new ParentSingleUIContainer(nameof(SixtySix2PlayerMainViewModel.RestoreScreen)); } StackLayout otherStack = new StackLayout(); otherStack.Orientation = StackOrientation.Horizontal; otherStack.Children.Add(_deckStack); _deckStack.Children.Add(_discardGPile); // can reposition or not even have as well. otherStack.Children.Add(_trick1); mainStack.Children.Add(otherStack); _score.AddColumn("Cards Left", true, nameof(SixtySix2PlayerPlayerItem.ObjectCount)); _score.AddColumn("Tricks Won", true, nameof(SixtySix2PlayerPlayerItem.TricksWon)); _score.AddColumn("Score Round", true, nameof(SixtySix2PlayerPlayerItem.ScoreRound)); _score.AddColumn("Game Points Round", true, nameof(SixtySix2PlayerPlayerItem.GamePointsRound)); _score.AddColumn("Total Points Game", true, nameof(SixtySix2PlayerPlayerItem.GamePointsGame)); SimpleLabelGridXF firstInfo = new SimpleLabelGridXF(); firstInfo.AddRow("Turn", nameof(SixtySix2PlayerMainViewModel.NormalTurn)); firstInfo.AddRow("Trump", nameof(SixtySix2PlayerMainViewModel.TrumpSuit)); firstInfo.AddRow("Status", nameof(SixtySix2PlayerMainViewModel.Status)); firstInfo.AddRow("Bonus", nameof(SixtySix2PlayerMainViewModel.BonusPoints)); mainStack.Children.Add(_playerHandWPF); mainStack.Children.Add(firstInfo.GetContent); mainStack.Children.Add(_score); otherStack = new StackLayout(); otherStack.Orientation = StackOrientation.Horizontal; var thisBut = GetGamingButton("Go Out", nameof(SixtySix2PlayerMainViewModel.GoOutAsync)); otherStack.Children.Add(thisBut); thisBut = GetGamingButton("Announce Marriage", nameof(SixtySix2PlayerMainViewModel.AnnouceMarriageAsync)); otherStack.Children.Add(thisBut); mainStack.Children.Add(otherStack); mainStack.Children.Add(_guide1); mainStack.Children.Add(_marriage1); _deckGPile.Margin = new Thickness(5, 5, 5, 5); _discardGPile.Margin = new Thickness(5, 5, 5, 5); if (restoreP != null) { //todo: figure out where to place the restore ui if there is a restore option. mainStack.Children.Add(restoreP); //default add to grid but does not have to. } Content = mainStack; }