Esempio n. 1
0
        public void IfFailureSwitchTurn()
        {
            if (DiceEngine.IsCurrentDiceFailure())
            {
                DiceEngine.CurrentPlayerTurnScore = 0;

                TurnFailure?.Invoke(
                    this,
                    new PlayerStateEventArgs(DiceEngine.CurrentPlayer)
                    );

                SwitchTurn();
            }
        }
Esempio n. 2
0
        public void StartFirstTurn(IPlayer first_player = null)
        {
            if (first_player == null)
            {
                first_player = Players.First();
            }
            DiceEngine.SwitchTurnTo(first_player);
            DiceEngine.CurrentPlayerTurnScore = 0;
            TurnSwitched?.Invoke(
                this,
                new TurnSwitchedEventArgs(null, first_player)
                );

            DiceEngine.Reroll(DiceEngine.AllDice);
            if (DiceEngine.IsCurrentDiceFailure())
            {
                TurnFailure?.Invoke(
                    this,
                    new PlayerStateEventArgs(first_player)
                    );
            }
            _timer.Enabled = true;
            _timer.Start();
        }