@@ -2160,6 +2160,8 @@ long *numerator, *denominator;
2160
2160
} else if (Race_if (PM_CENTAUR )) {
2161
2161
* numerator = 3L ;
2162
2162
* denominator = 2L ;
2163
+ } else if (Race_if (PM_DRAUGR )) {
2164
+ * numerator = 20L ;
2163
2165
}
2164
2166
} else if (is_elf (shkdat )) {
2165
2167
if (Race_if (PM_ORC ) || Race_if (PM_ILLITHID )
@@ -2171,6 +2173,8 @@ long *numerator, *denominator;
2171
2173
} else if (Race_if (PM_ELF )) {
2172
2174
* numerator = 4L ;
2173
2175
* denominator = 5L ;
2176
+ } else if (Race_if (PM_DRAUGR )) {
2177
+ * numerator = 20L ;
2174
2178
}
2175
2179
} else if (is_drow (shkdat )) {
2176
2180
if (Race_if (PM_ORC ) || Race_if (PM_ILLITHID )
@@ -2182,6 +2186,8 @@ long *numerator, *denominator;
2182
2186
} else if (Race_if (PM_DROW )) {
2183
2187
* numerator = 4L ;
2184
2188
* denominator = 5L ;
2189
+ } else if (Race_if (PM_DRAUGR )) {
2190
+ * numerator = 20L ;
2185
2191
}
2186
2192
} else if (is_dwarf (shkdat )) {
2187
2193
if (Race_if (PM_ORC ) || Race_if (PM_ILLITHID )) {
@@ -2195,6 +2201,8 @@ long *numerator, *denominator;
2195
2201
} else if (Race_if (PM_DWARF )) {
2196
2202
* numerator = 3L ;
2197
2203
* denominator = 4L ;
2204
+ } else if (Race_if (PM_DRAUGR )) {
2205
+ * numerator = 20L ;
2198
2206
}
2199
2207
} else if (is_orc (shkdat )) {
2200
2208
if (Race_if (PM_ELF ) || Race_if (PM_GNOME )
@@ -2209,9 +2217,15 @@ long *numerator, *denominator;
2209
2217
} else if (Race_if (PM_ORC )) {
2210
2218
* numerator = 2L ;
2211
2219
* denominator = 3L ;
2220
+ } else if (Race_if (PM_DRAUGR )) {
2221
+ * numerator = 20L ;
2212
2222
}
2213
2223
} else if (is_gnome (shkdat )) {
2214
- if (ACURR (A_INT ) < 15 ) {
2224
+ if (ACURR (A_INT ) <= 6 ) {
2225
+ * numerator = 6L ;
2226
+ } else if (ACURR (A_INT ) < 12 ) {
2227
+ * numerator = 2L ;
2228
+ } else if (ACURR (A_INT ) < 15 ) {
2215
2229
* numerator = 3L ;
2216
2230
* denominator = 2L ;
2217
2231
} else if (ACURR (A_INT ) < 18 ) {
@@ -2224,7 +2238,8 @@ long *numerator, *denominator;
2224
2238
return ;
2225
2239
}
2226
2240
if (!Race_if (PM_ILLITHID ))
2227
- * numerator = ((mnum - PM_ILLITHID + 1 ) * 10 );
2241
+ * numerator =
2242
+ ((mnum - PM_ILLITHID + 1 ) * (Race_if (PM_DRAUGR ) ? 20 : 10 ));
2228
2243
} else if (is_centaur (shkdat )) {
2229
2244
if (Race_if (PM_HUMAN ) || Race_if (PM_GNOME )
2230
2245
|| Race_if (PM_DWARF ) || Race_if (PM_ORC )
@@ -2234,6 +2249,8 @@ long *numerator, *denominator;
2234
2249
} else if (Race_if (PM_CENTAUR )) {
2235
2250
* numerator = 3L ;
2236
2251
* denominator = 4L ;
2252
+ } else if (Race_if (PM_DRAUGR )) {
2253
+ * numerator = 20L ;
2237
2254
}
2238
2255
} else if (is_giant (shkdat )) {
2239
2256
if (Race_if (PM_HUMAN ) || Race_if (PM_GNOME )
@@ -2247,18 +2264,20 @@ long *numerator, *denominator;
2247
2264
} else if (Race_if (PM_GIANT )) {
2248
2265
* numerator = 3L ;
2249
2266
* denominator = 4L ;
2267
+ } else if (Race_if (PM_DRAUGR )) {
2268
+ * numerator = 20L ;
2250
2269
}
2251
2270
} else if (shkdat == & mons [PM_NYMPH ]) {
2252
- if (mnum < PM_NYMPH ) {
2253
- impossible ("mnum for nymph shopkeeper is too low!" );
2254
- return ;
2255
- }
2256
- if (ACURR (A_CHA ) > 14 ) {
2257
- * numerator = 4L ;
2258
- * denominator = 3L ;
2259
- } else {
2271
+ if (ACURR (A_CHA ) <= 6 ) {
2272
+ * numerator = 8L ;
2273
+ } else if (ACURR (A_CHA ) < 12 ) {
2274
+ * numerator = 3L ;
2275
+ } else if (ACURR (A_CHA ) < 15 ) {
2260
2276
* numerator = 5L ;
2261
2277
* denominator = 3L ;
2278
+ } else if (ACURR (A_CHA ) < 18 ) {
2279
+ * numerator = 4L ;
2280
+ * denominator = 3L ;
2262
2281
}
2263
2282
} else {
2264
2283
; /* other monsters are possible (e.g. polyed shopkeeper); don't do any
0 commit comments