Example #1
0
 public YahtzeeScoreProcesses(ScoreContainer scoreContainer,
                              YahtzeeVMData <SimpleDice> model
                              )
 {
     _scoreContainer = scoreContainer;
     _model          = model;
 }
Example #2
0
 public KismetScoreProcesses(YahtzeeGameContainer <KismetDice> gameContainer,
                             ScoreContainer scoreContainer,
                             YahtzeeVMData <KismetDice> model
                             )
 {
     _gameContainer  = gameContainer;
     _scoreContainer = scoreContainer;
     _model          = model;
 }
        //this is all this needs to do now.

        public YahtzeeMove(ScoreContainer scoreContainer,
                           IScoreLogic scoreLogic,
                           YahtzeeVMData <D> model,
                           IYahtzeeEndRoundLogic endRoundLogic,
                           YahtzeeGameContainer <D> gameContainer)
        {
            _scoreContainer = scoreContainer;
            _scoreLogic     = scoreLogic;
            _model          = model;
            _endRoundLogic  = endRoundLogic;
            _gameContainer  = gameContainer;
        }
Example #4
0
 public KismetMissTurn(
     YahtzeeVMData <KismetDice> model,
     TestOptions thisTest,
     IAsyncDelayer delay,
     IScoreLogic scoreLogic,
     ScoreContainer scoreContainer,
     YahtzeeGameContainer <KismetDice> gameContainer
     )
 {
     _model          = model;
     _thisTest       = thisTest;
     _delay          = delay;
     _scoreLogic     = scoreLogic;
     _scoreContainer = scoreContainer;
     _gameContainer  = gameContainer;
 }
Example #5
0
        private readonly DiceListControlWPF <D> _diceControl; //hopefully still okay (?)

        public YahtzeeMainView(IEventAggregator aggregator, YahtzeeVMData <D> model)
        {
            _aggregator = aggregator;
            _model      = model;
            _aggregator.Publish(this);
            _aggregator = aggregator;
            _model      = model;
            _aggregator.Subscribe(this);

            _diceControl = new DiceListControlWPF <D>();

            Grid eGrid = new Grid();

            GridHelper.AddAutoColumns(eGrid, 2);
            GridHelper.AddAutoRows(eGrid, 2);
            ParentSingleUIContainer sheetGrid = new ParentSingleUIContainer()
            {
                Name = nameof(YahtzeeMainViewModel <D> .CurrentScoresheet)
            };
            StackPanel stack = new StackPanel();

            GridHelper.AddControlToGrid(eGrid, sheetGrid, 0, 0);
            GridHelper.AddControlToGrid(eGrid, stack, 0, 1);
            SimpleLabelGrid firstInfo = new SimpleLabelGrid();

            firstInfo.AddRow("Turn", nameof(YahtzeeMainViewModel <D> .NormalTurn));
            firstInfo.AddRow("Roll", nameof(YahtzeeMainViewModel <D> .RollNumber)); // its bound now.
            firstInfo.AddRow("Status", nameof(YahtzeeMainViewModel <D> .Status));
            firstInfo.AddRow("Turn #", nameof(YahtzeeMainViewModel <D> .Round));    // i think
            stack.Children.Add(firstInfo.GetContent);
            _score = new ScoreBoardWPF();
            _score.AddColumn("Points", false, nameof(YahtzeePlayerItem <D> .Points));
            stack.Children.Add(_score);
            var        thisRoll   = GetGamingButton("Roll Dice", nameof(YahtzeeMainViewModel <D> .RollDiceAsync));
            StackPanel otherStack = new StackPanel();

            otherStack.Orientation = Orientation.Horizontal;
            _diceControl           = new DiceListControlWPF <D>();
            otherStack.Children.Add(_diceControl);
            otherStack.Children.Add(thisRoll);
            GridHelper.AddControlToGrid(eGrid, otherStack, 1, 0);
            Grid.SetColumnSpan(otherStack, 2);
            Content = eGrid;
        }
Example #6
0
        private readonly DiceListControlXF <D> _diceControl; //hopefully still okay (?)



        public YahtzeeMainView(IEventAggregator aggregator, YahtzeeVMData <D> model)
        {
            _aggregator = aggregator;
            _aggregator.Publish(this);
            _model = model;
            _aggregator.Subscribe(this);
            _diceControl = new DiceListControlXF <D>();

            Grid eGrid = new Grid();

            GridHelper.AddLeftOverColumn(eGrid, 50);
            GridHelper.AddLeftOverColumn(eGrid, 50);
            ParentSingleUIContainer sheetGrid = new ParentSingleUIContainer(nameof(YahtzeeMainViewModel <D> .CurrentScoresheet));
            StackLayout             stack     = new StackLayout();

            stack.Children.Add(sheetGrid);

            SimpleLabelGridXF firstInfo = new SimpleLabelGridXF();

            firstInfo.AddRow("Turn", nameof(YahtzeeMainViewModel <D> .NormalTurn));
            firstInfo.AddRow("Roll", nameof(YahtzeeMainViewModel <D> .RollNumber)); // its bound now.
            firstInfo.AddRow("Status", nameof(YahtzeeMainViewModel <D> .Status));
            firstInfo.AddRow("Turn #", nameof(YahtzeeMainViewModel <D> .Round));    // i think
            stack.Children.Add(firstInfo.GetContent);
            _score = new ScoreBoardXF();
            _score.AddColumn("Points", false, nameof(YahtzeePlayerItem <D> .Points));
            _score.HorizontalOptions = LayoutOptions.Start;
            _score.VerticalOptions   = LayoutOptions.Start;
            var thisRoll = GetGamingButton("Roll Dice", nameof(YahtzeeMainViewModel <D> .RollDiceAsync));

            stack.Children.Add(_diceControl);

            stack.Children.Add(eGrid);
            StackLayout finalStack = new StackLayout();

            GridHelper.AddControlToGrid(eGrid, finalStack, 0, 0); //try this too.
            finalStack.Children.Add(thisRoll);
            finalStack.Children.Add(_score);
            GridHelper.AddControlToGrid(eGrid, firstInfo.GetContent, 0, 1);

            Content = stack;
        }
 public BasicYahtzeeGame(IGamePackageResolver mainContainer,
                         IEventAggregator aggregator,
                         BasicData basicData,
                         TestOptions test,
                         YahtzeeVMData <D> currentMod,
                         IMultiplayerSaveState state,
                         IAsyncDelayer delay,
                         CommandContainer command,
                         YahtzeeGameContainer <D> gameContainer,
                         IScoreLogic scoreLogic,
                         ScoreContainer scoreContainer,
                         IYahtzeeEndRoundLogic endRoundLogic,
                         StandardRollProcesses <D, YahtzeePlayerItem <D> > roller) : base(mainContainer, aggregator, basicData, test, currentMod, state, delay, command, gameContainer, roller)
 {
     _gameContainer            = gameContainer;
     _scoreLogic               = scoreLogic;
     _scoreContainer           = scoreContainer;
     _endRoundLogic            = endRoundLogic;
     _model                    = currentMod;
     _scoreContainer.StartTurn = (() => SingleInfo !.MissNextTurn = false);
 }
 private YahtzeeVMData <D>?_model; //this is needed so it can hook up.
 internal void LoadMod(YahtzeeVMData <D> model)
 {
     _model       = model;
     _model.Round = Round;
 }