From ae143ca19469bcfc62cd40bef396a1b4a3552565 Mon Sep 17 00:00:00 2001 From: Fen Dweller Date: Sat, 12 Jan 2019 10:11:28 -0500 Subject: [PATCH] Added classes to events --- game.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/game.js b/game.js index 1d61806..3be1ea3 100644 --- a/game.js +++ b/game.js @@ -56,12 +56,12 @@ function startTimer(config, state) { const result = config.func(state); state.timers = state.timers.filter(x => x.timeout != timeout); refresh(); - + if (result) startTimer(config, state); }, config.delay); - state.timers.push({id: config.id, timeout: timeout, room: config.room}); + state.timers.push({id: config.id, timeout: timeout, room: config.room, classes: config.classes || []}); return timeout; } @@ -82,6 +82,14 @@ function stopRoomTimers(room, state) { } +function stopClassTimers(timerClass, state) { + const matches = state.timers.filter(timer => timer.classes.includes(timerClass)); + matches.forEach(timer => clearTimeout(timer.timeout)); + + state.timers = state.timers.filter(timer => !timer.classes.includes(timerClass)); + +} + function stopAllTimers(state) { state.timers.forEach(x => clearTimeout(x.timeout)); state.timers = [];