Compare commits

...

2 Commits

Author SHA1 Message Date
Niels Simenon 77b6ebfb5c 1.25.3 2023-04-10 16:25:10 +02:00
Niels Simenon 6817f51b83 Moved available letters to config. 2023-04-10 16:25:08 +02:00
4 changed files with 36 additions and 33 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,

4
package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "schat2-clive",
"version": "1.25.2",
"version": "1.25.3",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "schat2-clive",
"version": "1.25.2",
"version": "1.25.3",
"license": "ISC",
"dependencies": {
"better-sqlite3": "^8.3.0",

View File

@ -1,6 +1,6 @@
{
"name": "schat2-clive",
"version": "1.25.2",
"version": "1.25.3",
"description": "Game host for SChat 2-powered chat sites",
"main": "src/app.js",
"scripts": {

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' };