summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--checkouts.c250
-rw-r--r--checkouts.h1
-rw-r--r--comp.c5
3 files changed, 227 insertions, 29 deletions
diff --git a/checkouts.c b/checkouts.c
index 230c264..5062ecf 100644
--- a/checkouts.c
+++ b/checkouts.c
@@ -197,29 +197,29 @@ char *CHECKOUTS[][170] = {
"D9", // 18
"3", // 19
"D10", // 20
- "17", // 21
+ "5", // 21
"D11", // 22
"7", // 23
"D12", // 24
- "17", // 25
+ "9", // 25
"D13", // 26
- "3", // 27
+ "11", // 27
"D14", // 28
- "17", // 29
+ "13", // 29
"D15", // 30
- "7", // 31
+ "15", // 31
"D16", // 32
- "17", // 33
+ "1", // 33
"D17", // 34
"3", // 35
"D18", // 36
- "17", // 37
+ "5", // 37
"D19", // 38
"7", // 39
"D20", // 40
- "17", // 41
+ "9", // 41
"10", // 42
- "3", // 43
+ "11", // 43
"12", // 44
"13", // 45
"14", // 46
@@ -247,10 +247,10 @@ char *CHECKOUTS[][170] = {
"T18", // 68
"T19", // 69
"T20", // 70
- "T19", // 71
+ "T13", // 71
"T16", // 72
"T19", // 73
- "T16", // 74
+ "T14", // 74
"T17", // 75
"T20", // 76
"T19", // 77
@@ -409,11 +409,11 @@ char *CHECKOUTS[][170] = {
"18", // 58
"19", // 59
"20", // 60
- "BULL", // 61
+ "25", // 61
"T10", // 62
"T13", // 63
"T16", // 64
- "BULL", // 65
+ "25", // 65
"T14", // 66
"T17", // 67
"T12", // 68
@@ -424,7 +424,7 @@ char *CHECKOUTS[][170] = {
"T19", // 73
"T14", // 74
"T17", // 75
- "T16", // 76
+ "T20", // 76
"T19", // 77
"T18", // 78
"T19", // 79
@@ -438,28 +438,28 @@ char *CHECKOUTS[][170] = {
"T17", // 87
"T20", // 88
"T19", // 89
- "T20", // 90
+ "BULL", // 90
"T17", // 91
"T20", // 92
"T19", // 93
"T18", // 94
- "T19", // 95
+ "BULL", // 95
"T20", // 96
"T19", // 97
"T20", // 98
- "T19", // 99
+ "T17", // 99
"T20", // 100
"T19", // 101
"T20", // 102
"T19", // 103
- "T19", // 104
+ "T20", // 104
"T20", // 105
"T20", // 106
"T19", // 107
- "T20", // 108
+ "T19", // 108
"T20", // 109
- "T19", // 110
- "T19", // 111
+ "T18", // 110
+ "T20", // 111
"T20", // 112
"T19", // 113
"T20", // 114
@@ -481,18 +481,18 @@ char *CHECKOUTS[][170] = {
"T20", // 130
"T19", // 131
"BULL", // 132
- "T14", // 133
- "T14", // 134
+ "T20", // 133
+ "T20", // 134
"BULL", // 135
"T20", // 136
- "T14", // 137
+ "T15", // 137
"T20", // 138
"T19", // 139
- "T15", // 140
+ "T20", // 140
"T19", // 141
"T20", // 142
- "T20", // 143
- "T20", // 144
+ "T18", // 143
+ "T19", // 144
"T20", // 145
"T19", // 146
"T19", // 147
@@ -515,11 +515,205 @@ char *CHECKOUTS[][170] = {
"T19", // 164
NULL, // 165
NULL, // 166
- "T19", // 167
+ "T20", // 167
NULL, // 168
NULL, // 169
"T20", // 170
}
};
+char *SETUP_SHOTS[191] = {
+ NULL, // 1
+ "D1", // 2
+ "1", // 3
+ "D2", // 4
+ "1", // 5
+ "D3", // 6
+ "3", // 7
+ "D4", // 8
+ "1", // 9
+ "D5", // 10
+ "3", // 11
+ "D6", // 12
+ "5", // 13
+ "D7", // 14
+ "7", // 15
+ "D8", // 16
+ "1", // 17
+ "D9", // 18
+ "3", // 19
+ "D10", // 20
+ "5", // 21
+ "D11", // 22
+ "7", // 23
+ "D12", // 24
+ "9", // 25
+ "D13", // 26
+ "11", // 27
+ "D14", // 28
+ "13", // 29
+ "D15", // 30
+ "15", // 31
+ "D16", // 32
+ "1", // 33
+ "D17", // 34
+ "3", // 35
+ "D18", // 36
+ "5", // 37
+ "D19", // 38
+ "7", // 39
+ "D20", // 40
+ "9", // 41
+ "10", // 42
+ "11", // 43
+ "12", // 44
+ "13", // 45
+ "14", // 46
+ "15", // 47
+ "16", // 48
+ "17", // 49
+ "18", // 50
+ "19", // 51
+ "20", // 52
+ "13", // 53
+ "14", // 54
+ "15", // 55
+ "16", // 56
+ "17", // 57
+ "18", // 58
+ "19", // 59
+ "20", // 60
+ "25", // 61
+ "T10", // 62
+ "T13", // 63
+ "T16", // 64
+ "25", // 65
+ "T14", // 66
+ "T17", // 67
+ "T12", // 68
+ "T15", // 69
+ "T18", // 70
+ "T13", // 71
+ "T16", // 72
+ "T19", // 73
+ "T14", // 74
+ "T17", // 75
+ "T20", // 76
+ "T19", // 77
+ "T18", // 78
+ "T19", // 79
+ "T20", // 80
+ "T19", // 81
+ "BULL", // 82
+ "T17", // 83
+ "T20", // 84
+ "T15", // 85
+ "T18", // 86
+ "T17", // 87
+ "T20", // 88
+ "T19", // 89
+ "BULL", // 90
+ "T17", // 91
+ "T20", // 92
+ "T19", // 93
+ "T18", // 94
+ "BULL", // 95
+ "T20", // 96
+ "T19", // 97
+ "T20", // 98
+ "T17", // 99
+ "T20", // 100
+ "T19", // 101
+ "T20", // 102
+ "T19", // 103
+ "T20", // 104
+ "T20", // 105
+ "T20", // 106
+ "T19", // 107
+ "T19", // 108
+ "T20", // 109
+ "T18", // 110
+ "T20", // 111
+ "T20", // 112
+ "T19", // 113
+ "T20", // 114
+ "T19", // 115
+ "T19", // 116
+ "T20", // 117
+ "T20", // 118
+ "T19", // 119
+ "T20", // 120
+ "T20", // 121
+ "T18", // 122
+ "T19", // 123
+ "T20", // 124
+ "BULL", // 125
+ "T19", // 126
+ "T20", // 127
+ "T20", // 128
+ "T19", // 129
+ "T20", // 130
+ "T19", // 131
+ "BULL", // 132
+ "T20", // 133
+ "T20", // 134
+ "BULL", // 135
+ "T20", // 136
+ "T15", // 137
+ "T20", // 138
+ "T19", // 139
+ "T20", // 140
+ "T19", // 141
+ "T20", // 142
+ "T18", // 143
+ "T19", // 144
+ "T20", // 145
+ "T19", // 146
+ "T19", // 147
+ "T20", // 148
+ "T20", // 149
+ "T20", // 150
+ "T20", // 151
+ "T20", // 152
+ "T20", // 153
+ "T19", // 154
+ "T20", // 155
+ "T20", // 156
+ "T20", // 157
+ "T20", // 158
+ "T19", // 159
+ "T20", // 160
+ "T20", // 161
+ "T20", // 162
+ "T20", // 163
+ "T19", // 164
+ "T20", // 165
+ "T20", // 166
+ "T20", // 167
+ "T20", // 168
+ "T20", // 169
+ "T20", // 170
+ "T20", // 171
+ "T20", // 172
+ "T20", // 173
+ "T19", // 174
+ "T20", // 175
+ "T20", // 176
+ "T20", // 177
+ "T20", // 178
+ "T19", // 179
+ "T20", // 180
+ "T20", // 181
+ "T20", // 182
+ "T19", // 183
+ "T20", // 184
+ "BULL", // 185
+ "T20", // 186
+ "T20", // 187
+ "T18", // 188
+ "T19", // 189
+ "T20", // 190
+ "T19", // 191
+};
+
#endif
diff --git a/checkouts.h b/checkouts.h
index 5d0874e..870f24f 100644
--- a/checkouts.h
+++ b/checkouts.h
@@ -4,5 +4,6 @@
#include <stddef.h>
extern char *CHECKOUTS[3][170];
+extern char *SETUP_SHOTS[191];
#endif
diff --git a/comp.c b/comp.c
index f1adb75..13b21a6 100644
--- a/comp.c
+++ b/comp.c
@@ -73,7 +73,10 @@ struct segment next_dart(int rem, int darts_in_hand)
char *c = NULL;
if (rem <= 170)
c = CHECKOUTS[darts_in_hand-1][rem-1];
- if (!c) c = "T20";
+ if (!c && rem <= 191)
+ c = SETUP_SHOTS[rem-1];
+ if (!c)
+ c = "T20";
return segment_from_name(c);
}