Compare commits

...

2 Commits

Author SHA1 Message Date
ThePendulum 8ac844ecde 1.4.3 2021-11-08 02:48:28 +01:00
ThePendulum 2a9311f021 Check room exists before removing user. 2021-11-08 02:48:26 +01:00
4 changed files with 10 additions and 9 deletions

4
package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "schat2-clive",
"version": "1.4.2",
"version": "1.4.3",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "schat2-clive",
"version": "1.4.2",
"version": "1.4.3",
"license": "ISC",
"dependencies": {
"bhttp": "^1.2.8",

View File

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

View File

@ -123,7 +123,9 @@ function onJoin(data, bot) {
}
function onLeave(data, bot) {
bot.rooms[data.roomId].users = bot.rooms[data.roomId].users.filter((userId) => userId !== data.userId);
if (bot.rooms[data.roomId]) {
bot.rooms[data.roomId].users = bot.rooms[data.roomId].users.filter((userId) => userId !== data.userId);
}
}
function onMessage(message, bot, games) {

View File

@ -5,11 +5,7 @@ const timers = require('timers/promises');
const questions = require('../../assets/jeopardy.json');
const settings = {
rounds: config.trivia.rounds,
timeout: config.trivia.timeout,
mode: config.trivia.mode,
};
const settings = { ...config.trivia };
let game = null;
@ -100,6 +96,8 @@ async function playRound(context, round = 0) {
return;
}
await timers.setTimeout(2000);
const leaders = Object.entries(game.points).sort(([, scoreA], [, scoreB]) => scoreB - scoreA).map(([username, score], index) => {
if (index === 0) {
return `**@${username}** with **${score}** points`;
@ -107,6 +105,7 @@ async function playRound(context, round = 0) {
return `**@${username}** with **${score}** points`;
}).join(', ');
context.sendMessage(`That's the end of the game! Best players: ${leaders}`, context.room.id);
game = null;