public static void Main(string[] args) { int numberOfDice = 2; int maxNumberOnDice = 4; int numberOfTurns = 200000; if (args.Length == 3) { int.TryParse(args[0], out numberOfDice); int.TryParse(args[1], out maxNumberOnDice); int.TryParse(args[2], out numberOfTurns); } Console.WriteLine(string.Format("Anzahl der Würfel: {0}, Augenzahl pro Würfel: {1}, Anzahl der Spielrunden: {2}", numberOfDice, maxNumberOnDice, numberOfTurns)); Random r = new Random(); DiceSet diceSet = InitializeDiceSet(numberOfDice, maxNumberOnDice, r); //Initialisieren der Würfel. Anzahl der Würfel, die Augenzahl pro Würfel und die (pseudo) Random Funktion. Diese wird nur einmal initialisiert, da ansonsten die Random Werte sich wiederholen können Player player = new Player(); //der Spieler. Board board = new Board(diceSet, player, InitializeEreignissKarten(r), InitializeZufallsKarten(r)); //Initialisierung des Spielfeldes board.Play(numberOfTurns); //Start des Spieles //Ausgabe der Statistiken Console.WriteLine(board.GetThreeMostVisitedFields()); Console.WriteLine(board.GetProbability()); Console.ReadLine(); }
public void AddDiceSetToResult(DiceSet diceSet) { _totalResult += diceSet.Result; if (diceSet.SameOfAKind) { _totalNumberXofAKind++; } LastDiceSet = diceSet; }
public Board( DiceSet diceSet, Player player, CardSet <EreignissKarte> ereignissKarten, CardSet <Zufallskarte> zufallsKarten) { recorder = new Dictionary <Fields, int>(); _diceSet = diceSet; _player = player; _zufallsKarten = zufallsKarten; _ereignissKarten = ereignissKarten; }
public DiceSetResult RollDice(DiceSet diceSet, DiceSetResult resultSet) { diceSet.RollDiceSet(); resultSet.AddDiceSetToResult(diceSet); return(resultSet); }