View difference between Paste ID: PAuz94gr and UQ8w8KLQ
SHOW: | | - or go back to the newest paste.
1
    //drawPayouts is where the results are stored.  drawArray is where all condenced hands, plus their weight are stored.
2
    void LoopCondencedHands() {
3
        for (int i = 0; i < drawPayouts.Length; i++)
4
        {
5
            //Five cards
6
            drawPayouts[i][array0[HandIndex5(drawArray[i])]]++;
7
8
            //Four Cards
9
            //Use array1[0] because all lengths are the same.
10
            for (int j = 0; j < array1[0].Length; j++)
11
            {
12
                //Check all five ways of playing four cards.
13
                //Use "* drawArray[i][5]" to count the weight.
14-
                drawPayouts[i][j] += (array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5]);
14+
                drawPayouts[i][j] += array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
15
                drawPayouts[i][j] += array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][4])] * drawArray[i][5];
16
                drawPayouts[i][j] += array1[j][HandIndex4(drawArray[i][4], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
17
                drawPayouts[i][j] += array1[j][HandIndex4(drawArray[i][0], drawArray[i][4], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
18
                drawPayouts[i][j] += array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][4], drawArray[i][3])] * drawArray[i][5];
19
                //If this is the value of holding all five cards, subtract one.
20
                if (array0[HandIndex5(drawArray[i])] == j)
21
                    { drawPayouts[i][j]--; }
22
            }
23
24
            for (int j = 0; j < array2[0].Length; j++)
25
            {
26
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][0], drawArray[i][1], drawArray[i][2])] * drawArray[i][5];
27
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
28
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][4])] * drawArray[i][5];
29
30
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][0], drawArray[i][1], drawArray[i][3])] * drawArray[i][5];
31
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
32
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][4], drawArray[i][3])] * drawArray[i][5];
33
34
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][0], drawArray[i][1], drawArray[i][4])] * drawArray[i][5];
35
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][4])] * drawArray[i][5];
36
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][4], drawArray[i][3])] * drawArray[i][5];
37
38
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][3], drawArray[i][1], drawArray[i][2])] * drawArray[i][5];
39
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
40
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][4], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
41
                
42
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][4], drawArray[i][1], drawArray[i][2])] * drawArray[i][5];
43
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][4])] * drawArray[i][5];
44
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][4], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
45
                
46
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][0], drawArray[i][3], drawArray[i][2])] * drawArray[i][5];
47
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
48
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][4], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
49
                
50
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][0], drawArray[i][4], drawArray[i][2])] * drawArray[i][5];
51
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][2], drawArray[i][4])] * drawArray[i][5];
52
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][4], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
53
                
54
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][0], drawArray[i][3], drawArray[i][4])] * drawArray[i][5];
55
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][4], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
56
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][4], drawArray[i][3])] * drawArray[i][5];
57
               
58
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][3], drawArray[i][1], drawArray[i][4])] * drawArray[i][5];
59
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][4], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
60
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][1], drawArray[i][4], drawArray[i][3])] * drawArray[i][5];
61
                
62
                drawPayouts[i][j] += array2[j][HandIndex3(drawArray[i][2], drawArray[i][3], drawArray[i][4])] * drawArray[i][5];
63
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][4], drawArray[i][1], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
64
                drawPayouts[i][j] -= array1[j][HandIndex4(drawArray[i][0], drawArray[i][4], drawArray[i][2], drawArray[i][3])] * drawArray[i][5];
65
                
66
                if (array0[HandIndex5(drawArray[i])] == j)
67
                    { drawPayouts[i][j]++; }
68
            }
69
        }
70
    }