Compare commits

...

2 Commits

Author SHA1 Message Date
ThePendulum a807cbc2aa 1.29.1 2024-06-03 22:46:19 +02:00
ThePendulum f85cac7f2f Improved wordle readability for IRC. 2024-06-03 22:46:17 +02:00
3 changed files with 28 additions and 14 deletions

4
package-lock.json generated
View File

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

View File

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

View File

@ -13,40 +13,54 @@ const alphabet = Array.from({ length: 26 }, (value, index) => String.fromCharCod
function getBoard(letters, showLetters, context) {
const wordle = wordles.get(context.room.id);
const prefix = style.grey(style.code('['));
const prefix = config.platform === 'irc' ? '' : style.grey(style.code('['));
const middle = letters.map((letter) => {
if (letter === null) {
return style.code(''); // em space, U+2003, charcode 8195
return config.platform === 'irc'
? style.bgsilver('?')
: style.code(''); // em space, U+2003, charcode 8195
}
if (letter[1] === true) {
return style.green(style.bold(style.code(letter[0].toUpperCase())));
return config.platform === 'irc'
? style.bggreen(` ${letter[0].toUpperCase()}${style.green('*')}`)
: style.green(style.bold(style.code(letter[0].toUpperCase())));
}
if (letter[1] === false) {
return style.orange(style.bold(style.code(letter[0].toUpperCase())));
return config.platform === 'irc'
? style.bgyellow(` ${letter[0].toUpperCase()}${style.yellow('?')}`)
: style.orange(style.bold(style.code(letter[0].toUpperCase())));
}
return style.grey(style.bold(style.code(letter[0].toUpperCase())));
}).join(style.grey(style.code('|')));
return config.platform === 'irc'
? style.bgsilver(` ${letter[0].toUpperCase()} `)
: style.grey(style.bold(style.code(letter[0].toUpperCase())));
}).join(config.platform === 'irc' ? '' : style.grey(style.code('|')));
const suffix = `${style.grey(style.code(']'))}`;
const suffix = config.platform === 'irc' ? '' : `${style.grey(style.code(']'))}`;
if (showLetters) {
const letterBoard = Array.from(wordle.letters).map(([letter, state]) => {
if (state === true) {
return style.green(style.bold(letter));
return config.platform === 'irc'
? style.bggreen(`${letter}${style.green('*')}`)
: style.green(style.bold(letter));
}
if (state === false) {
return style.orange(style.bold(letter));
return config.platform === 'irc'
? style.bgyellow(`${letter}${style.yellow('?')}`)
: style.orange(style.bold(letter));
}
return style.grey(letter);
return config.platform === 'irc'
? letter
: style.grey(letter);
}).join('');
return `${prefix}${middle}${suffix}${letterBoard}`; // eslint-disable-line no-irregular-whitespace
return `${prefix}${middle}${suffix}Letters: ${letterBoard}`; // eslint-disable-line no-irregular-whitespace
}
return `${prefix}${middle}${suffix}`;