Moved available letters to config.

This commit is contained in:
Niels Simenon 2023-04-10 16:25:08 +02:00
parent 42c850ac90
commit 6817f51b83
2 changed files with 33 additions and 30 deletions

View File

@ -100,6 +100,37 @@ module.exports = {
letters: {
length: 9,
timeout: 60,
// http://www.thecountdownpage.com/letters.htm
vowels: {
a: 15,
e: 21,
i: 13,
o: 13,
u: 5,
},
consonants: {
b: 2,
c: 3,
d: 6,
f: 2,
g: 3,
h: 2,
j: 1,
k: 1,
l: 5,
m: 4,
n: 8,
p: 4,
q: 1,
r: 9,
s: 9,
t: 9,
v: 1,
w: 1,
x: 1,
y: 1,
z: 1,
},
},
numbers: {
length: 6,

View File

@ -11,36 +11,8 @@ const words = require('../../assets/mash-words.json');
// http://www.thecountdownpage.com/letters.htm
const availableLetters = {
vowel: [
...Array.from({ length: 15 }, () => 'a'),
...Array.from({ length: 21 }, () => 'e'),
...Array.from({ length: 13 }, () => 'i'),
...Array.from({ length: 13 }, () => 'o'),
...Array.from({ length: 5 }, () => 'u'),
],
consonant: [
...Array.from({ length: 2 }, () => 'b'),
...Array.from({ length: 3 }, () => 'c'),
...Array.from({ length: 6 }, () => 'd'),
...Array.from({ length: 2 }, () => 'f'),
...Array.from({ length: 3 }, () => 'g'),
...Array.from({ length: 2 }, () => 'h'),
...Array.from({ length: 1 }, () => 'j'),
...Array.from({ length: 1 }, () => 'k'),
...Array.from({ length: 5 }, () => 'l'),
...Array.from({ length: 4 }, () => 'm'),
...Array.from({ length: 8 }, () => 'n'),
...Array.from({ length: 4 }, () => 'p'),
...Array.from({ length: 1 }, () => 'q'),
...Array.from({ length: 9 }, () => 'r'),
...Array.from({ length: 9 }, () => 's'),
...Array.from({ length: 9 }, () => 't'),
...Array.from({ length: 1 }, () => 'v'),
...Array.from({ length: 1 }, () => 'w'),
...Array.from({ length: 1 }, () => 'x'),
...Array.from({ length: 1 }, () => 'y'), // Countdown regards Y as a consonant
...Array.from({ length: 1 }, () => 'z'),
],
vowel: Object.entries(config.letters.vowels).flatMap(([vowel, repeat]) => Array.from({ length: repeat }, () => vowel)),
consonant: Object.entries(config.letters.consonants).flatMap(([consonant, repeat]) => Array.from({ length: repeat }, () => consonant)),
};
const types = { v: 'vowel', c: 'consonant' };