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: { letters: {
length: 9, length: 9,
timeout: 60, 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: { numbers: {
length: 6, length: 6,

4
package-lock.json generated
View File

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

View File

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

View File

@ -11,36 +11,8 @@ const words = require('../../assets/mash-words.json');
// http://www.thecountdownpage.com/letters.htm // http://www.thecountdownpage.com/letters.htm
const availableLetters = { const availableLetters = {
vowel: [ vowel: Object.entries(config.letters.vowels).flatMap(([vowel, repeat]) => Array.from({ length: repeat }, () => vowel)),
...Array.from({ length: 15 }, () => 'a'), consonant: Object.entries(config.letters.consonants).flatMap(([consonant, repeat]) => Array.from({ length: repeat }, () => consonant)),
...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'),
],
}; };
const types = { v: 'vowel', c: 'consonant' }; const types = { v: 'vowel', c: 'consonant' };