public RageBiddingView(IEventAggregator aggregator, RageCardGameVMData model, RageCardGameGameContainer gameContainer) { _aggregator = aggregator; _aggregator.Subscribe(this); StackLayout stack = new StackLayout(); NumberChooserXF bid = new NumberChooserXF(); BaseHandXF <RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsXF> hand = new BaseHandXF <RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsXF>(); ScoreBoardXF score = new ScoreBoardXF(); RageCardGameMainView.PopulateScores(score); Button button = GetGamingButton("Submit", nameof(RageBiddingViewModel.BidAsync)); SimpleLabelGridXF bidInfo = new SimpleLabelGridXF(); bidInfo.AddRow("Trump", nameof(RageBiddingViewModel.TrumpSuit)); bidInfo.AddRow("Turn", nameof(RageBiddingViewModel.NormalTurn)); stack.Children.Add(bid); stack.Children.Add(button); stack.Children.Add(hand); stack.Children.Add(bidInfo.GetContent); stack.Children.Add(score); Content = stack; score !.LoadLists(gameContainer.SaveRoot.PlayerList); hand !.LoadList(model.PlayerHand1 !, ""); bid !.LoadLists(model.Bid1); }
public RageCardGameMainView(IEventAggregator aggregator, TestOptions test, RageCardGameVMData model ) { _aggregator = aggregator; _model = model; _aggregator.Subscribe(this); _deckGPile = new BaseDeckXF <RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsXF>(); _discardGPile = new BasePileXF <RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsXF>(); _score = new ScoreBoardXF(); _playerHandWPF = new BaseHandXF <RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsXF>(); _trick1 = new SeveralPlayersTrickXF <EnumColor, RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsXF, RageCardGamePlayerItem>(); StackLayout mainStack = new StackLayout(); ParentSingleUIContainer?restoreP = null; if (test.SaveOption == EnumTestSaveCategory.RestoreOnly) { restoreP = new ParentSingleUIContainer(nameof(RageCardGameMainViewModel.RestoreScreen)); } StackLayout otherStack = new StackLayout(); otherStack.Orientation = StackOrientation.Horizontal; otherStack.Children.Add(_deckGPile); otherStack.Children.Add(_discardGPile); // can reposition or not even have as well. mainStack.Children.Add(otherStack); PopulateScores(_score); SimpleLabelGridXF firstInfo = new SimpleLabelGridXF(); firstInfo.AddRow("Turn", nameof(RageCardGameMainViewModel.NormalTurn)); firstInfo.AddRow("Status", nameof(RageCardGameMainViewModel.Status)); firstInfo.AddRow("Trump", nameof(RageCardGameMainViewModel.TrumpSuit)); firstInfo.AddRow("Lead", nameof(RageCardGameMainViewModel.Lead)); mainStack.Children.Add(_trick1); mainStack.Children.Add(_playerHandWPF); mainStack.Children.Add(firstInfo.GetContent); mainStack.Children.Add(_score); _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. } GamePackageViewModelBinder.ManuelElements.Clear(); //often times i have to add manually. RageCardGameSaveInfo save = cons !.Resolve <RageCardGameSaveInfo>(); //usually needs this part for multiplayer games. _score !.LoadLists(save.PlayerList); _playerHandWPF !.LoadList(_model.PlayerHand1 !, ""); // i think _trick1 !.Init(_model.TrickArea1 !, _model.TrickArea1, ""); //just in case the load won't work properly this time on xamarin forms. Content = mainStack; }
public RageCardGameMainGameClass(IGamePackageResolver mainContainer, IEventAggregator aggregator, BasicData basicData, TestOptions test, RageCardGameVMData currentMod, IMultiplayerSaveState state, IAsyncDelayer delay, ICardInfo <RageCardGameCardInformation> cardInfo, CommandContainer command, RageCardGameGameContainer gameContainer, ITrickData trickData, ITrickPlay trickPlay, IAdvancedTrickProcesses aTrick, IColorProcesses colorProcesses, IBidProcesses bidProcesses, RageDelgates delgates ) : base(mainContainer, aggregator, basicData, test, currentMod, state, delay, cardInfo, command, gameContainer, trickData, trickPlay) { _model = currentMod; _command = command; _gameContainer = gameContainer; _aTrick = aTrick; _colorProcesses = colorProcesses; _bidProcesses = bidProcesses; _delgates = delgates; delgates.CardsToPassOut = (() => SaveRoot.CardsToPassOut); }
public RageColorViewModel(CommandContainer commandContainer, RageCardGameVMData model) { CommandContainer = commandContainer; _model = model; Lead = _model.Lead; TrumpSuit = _model.TrumpSuit; _model.PropertyChanged += Model_PropertyChanged; }
public RageBiddingViewModel(CommandContainer commandContainer, RageCardGameVMData model, IBidProcesses processes) { CommandContainer = commandContainer; _model = model; _processes = processes; NormalTurn = _model.NormalTurn; TrumpSuit = _model.TrumpSuit; _model.PropertyChanged += Model_PropertyChanged; }
public ColorProcesses(RageCardGameGameContainer gameContainer, RageCardGameVMData model, RageDelgates delgates) { _gameContainer = gameContainer; _model = model; _delgates = delgates; _gameContainer.ColorChosenAsync = ColorChosenAsync; _gameContainer.ShowLeadColor = ShowLeadColor; _gameContainer.ChooseColorAsync = ChooseColorAsync; }
public RageCardGameMainViewModel(CommandContainer commandContainer, RageCardGameMainGameClass mainGame, RageCardGameVMData viewModel, BasicData basicData, TestOptions test, IGamePackageResolver resolver ) : base(commandContainer, mainGame, viewModel, basicData, test, resolver) { _model = viewModel; _model.Deck1.NeverAutoDisable = true; }
public RageCardGameMainView(IEventAggregator aggregator, TestOptions test, RageCardGameVMData model ) { _aggregator = aggregator; _model = model; _aggregator.Subscribe(this); _score = new ScoreBoardWPF(); _playerHandWPF = new BaseHandWPF <RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsWPF>(); _trick1 = new SeveralPlayersTrickWPF <EnumColor, RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsWPF, RageCardGamePlayerItem>(); StackPanel mainStack = new StackPanel(); ParentSingleUIContainer?restoreP = null; if (test.SaveOption == EnumTestSaveCategory.RestoreOnly) { restoreP = new ParentSingleUIContainer() { Name = nameof(RageCardGameMainViewModel.RestoreScreen) }; } PopulateScores(_score); SimpleLabelGrid firstInfo = new SimpleLabelGrid(); firstInfo.AddRow("Turn", nameof(RageCardGameMainViewModel.NormalTurn)); firstInfo.AddRow("Status", nameof(RageCardGameMainViewModel.Status)); firstInfo.AddRow("Trump", nameof(RageCardGameMainViewModel.TrumpSuit)); firstInfo.AddRow("Lead", nameof(RageCardGameMainViewModel.Lead)); mainStack.Children.Add(_trick1); mainStack.Children.Add(_playerHandWPF); mainStack.Children.Add(firstInfo.GetContent); mainStack.Children.Add(_score); if (restoreP != null) { mainStack.Children.Add(restoreP); //default add to grid but does not have to. } Content = mainStack; }
public RageColorView(RageCardGameVMData model, RageCardGameGameContainer gameContainer) { StackPanel stack = new StackPanel(); BaseHandWPF <RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsWPF> hand = new BaseHandWPF <RageCardGameCardInformation, RageCardGameGraphicsCP, CardGraphicsWPF>(); ScoreBoardWPF score = new ScoreBoardWPF(); RageCardGameMainView.PopulateScores(score); SimpleLabelGrid details = new SimpleLabelGrid(); details.AddRow("Trump", nameof(RageColorViewModel.TrumpSuit)); details.AddRow("Lead", nameof(RageColorViewModel.Lead)); EnumPickerWPF <CheckerChoiceCP <EnumColor>, CheckerChooserWPF <EnumColor>, EnumColor> piece = new EnumPickerWPF <CheckerChoiceCP <EnumColor>, CheckerChooserWPF <EnumColor>, EnumColor>(); stack.Children.Add(piece); stack.Children.Add(hand); stack.Children.Add(details.GetContent); stack.Children.Add(score); Content = stack; score !.LoadLists(gameContainer.SaveRoot.PlayerList); hand !.LoadList(model.PlayerHand1 !, ""); piece.LoadLists(model.Color1); }
public BidProcesses(RageCardGameGameContainer gameContainer, RageCardGameVMData model, RageDelgates delgates) { _gameContainer = gameContainer; _model = model; _delgates = delgates; }