Exemplo n.º 1
0
        public Roulette(IRandomize randomizer)
        {
            _randomize = randomizer;
            _fields    = new List <Field>
            {
                new Field(0, Field.Green),
                new Field(1, Field.Red),
                new Field(2, Field.Black),
                new Field(3, Field.Red),
                new Field(4, Field.Black),
                new Field(5, Field.Red),
                new Field(6, Field.Black),
                new Field(7, Field.Red),
                new Field(8, Field.Black),
                new Field(9, Field.Red),
                new Field(10, Field.Black),
                new Field(11, Field.Black),
                new Field(12, Field.Red),
                new Field(13, Field.Black),
                new Field(14, Field.Red),
                new Field(15, Field.Black),
                new Field(16, Field.Red),
                new Field(17, Field.Black),
                new Field(18, Field.Red),
                new Field(19, Field.Red),
                new Field(20, Field.Black),
                new Field(21, Field.Red),
                new Field(22, Field.Black),
                new Field(23, Field.Red),
                new Field(24, Field.Black),
                new Field(25, Field.Red),
                new Field(26, Field.Black),
                new Field(27, Field.Red),
                new Field(28, Field.Black),
                new Field(29, Field.Black),
                new Field(30, Field.Red),
                new Field(31, Field.Black),
                new Field(32, Field.Red),
                new Field(33, Field.Black),
                new Field(34, Field.Red),
                new Field(35, Field.Black),
                new Field(36, Field.Red)
            };

            _result = _fields[0];
        }
Exemplo n.º 2
0
        public Roulette(IRandomize randomizer)
        {
            _randomize = randomizer;
            _fields = new List<Field>
                          {
                              new Field(0, Field.Green),
                              new Field(1, Field.Red),
                              new Field(2, Field.Black),
                              new Field(3, Field.Red),
                              new Field(4, Field.Black),
                              new Field(5, Field.Red),
                              new Field(6, Field.Black),
                              new Field(7, Field.Red),
                              new Field(8, Field.Black),
                              new Field(9, Field.Red),
                              new Field(10, Field.Black),
                              new Field(11, Field.Black),
                              new Field(12, Field.Red),
                              new Field(13, Field.Black),
                              new Field(14, Field.Red),
                              new Field(15, Field.Black),
                              new Field(16, Field.Red),
                              new Field(17, Field.Black),
                              new Field(18, Field.Red),
                              new Field(19, Field.Red),
                              new Field(20, Field.Black),
                              new Field(21, Field.Red),
                              new Field(22, Field.Black),
                              new Field(23, Field.Red),
                              new Field(24, Field.Black),
                              new Field(25, Field.Red),
                              new Field(26, Field.Black),
                              new Field(27, Field.Red),
                              new Field(28, Field.Black),
                              new Field(29, Field.Black),
                              new Field(30, Field.Red),
                              new Field(31, Field.Black),
                              new Field(32, Field.Red),
                              new Field(33, Field.Black),
                              new Field(34, Field.Red),
                              new Field(35, Field.Black),
                              new Field(36, Field.Red)
                          };

            _result = _fields[0];
        }
Exemplo n.º 3
0
        public static T[] Shuffle <T>(T[] array, IRandomize randomizeHelper)
        {
            //take first and swap with random item from all array
            //take second and swap with random item from the rest of array (that is not swapped)
            //take third and swap with random item from the rest of array
            //we loop to n-1 because when it is n in the last loop we get to swapping array[n - 1] with array[n - 1]
            int n = array.Length;

            for (int i = 0; i < n - 1; i++)
            {
                int r = randomizeHelper.GetRandomIntForRange(i, n); // r is random between [i and n-1]
                //int r = i + _random.Next(n - i); // r is random between [i and n-1]
                //int r = i + (int)(_random.NextDouble() * (n - i));
                T t = array[r];
                array[r] = array[i];
                array[i] = t;
            }
            return(array);
        }
Exemplo n.º 4
0
 public DungeonGenerator(IRandomize rnd, Action <string> logger)
 {
     _rnd    = rnd;
     _logger = logger;
 }