예제 #1
0
        public void ExecuteTurn(DiceSetResult resultSet)
        {
            resultSet = _player.RollDice(_diceSet, resultSet);

            if (resultSet.GetTotalNumberXOfAKind() == 3) //3 x Pasch -> ab ins Gefängniss
            {
                _player.SetPosition(Fields.JAIL);
                RecordPosition(); //Erfasse Endposition
                return;
            }

            if (!resultSet.LastDiceSet.SameOfAKind)
            {
                MovePlayer(resultSet.GetTotal()); //Bewegen
                CheckForSpecialEvents();          //Ereignisfeld / Zufallskarten Feld?

                RecordPosition();                 //Erfasse Endposition
            }
            else
            {
                ExecuteTurn(resultSet);
            }
        }
예제 #2
0
 public DiceSetResult RollDice(DiceSet diceSet, DiceSetResult resultSet)
 {
     diceSet.RollDiceSet();
     resultSet.AddDiceSetToResult(diceSet);
     return(resultSet);
 }