some timer logic

This commit is contained in:
Alec
2021-11-19 01:11:00 -05:00
parent eb4193fb1b
commit 0560dcffa9
24 changed files with 298 additions and 102 deletions

View File

@@ -0,0 +1,26 @@
const globals = require('../config/globals.js');
const ServerTimer = require('./ServerTimer.js');
process.on('message', (msg) => {
const logger = require('./Logger')(msg.logLevel);
switch (msg.command) {
case globals.GAME_PROCESS_COMMANDS.START_TIMER:
logger.debug('CHILD PROCESS ' + msg.accessCode + ': START TIMER');
runGameTimer(msg.hours, msg.minutes, logger).then(() => {
logger.debug('Timer finished for ' + msg.accessCode);
process.send({ command: globals.GAME_PROCESS_COMMANDS.END_GAME });
process.exit(0);
});
break;
}
});
function runGameTimer (hours, minutes, logger) {
const cycleTimer = new ServerTimer(
hours,
minutes,
globals.CLOCK_TICK_INTERVAL_MILLIS,
logger
);
return cycleTimer.runTimer();
}