Add timer core
This commit is contained in:
15
main.js
15
main.js
@@ -36,4 +36,19 @@ for (const file of eventFiles) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
client.on(Events.ClientReady, () => {
|
||||||
|
//setup timers
|
||||||
|
const timersPath = path.join(__dirname, 'timers');
|
||||||
|
const timerFiles = fs.readdirSync(timersPath).filter(file => file.endsWith('.js'));
|
||||||
|
for (const file of timerFiles) {
|
||||||
|
const filePath = path.join(timersPath, file);
|
||||||
|
const timer = require(filePath);
|
||||||
|
console.log(`Started Timer ${timer.name}`);
|
||||||
|
let timerInstance = setInterval(() => {
|
||||||
|
timer.tick(client, timer);
|
||||||
|
}, timer.timeout);
|
||||||
|
timer.instance = timerInstance;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
client.login(token);
|
client.login(token);
|
||||||
15
timers/testTimer.js
Normal file
15
timers/testTimer.js
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
module.exports = {
|
||||||
|
timeout: 1000,
|
||||||
|
global: true,
|
||||||
|
name: 'Test timer every 1 sec',
|
||||||
|
data: {
|
||||||
|
i: 0
|
||||||
|
},
|
||||||
|
async tick(client, timer) {
|
||||||
|
console.log(`Test timer ticked ${timer.data.i}`);
|
||||||
|
timer.data.i++;
|
||||||
|
if(timer.data.i >= 5) {
|
||||||
|
clearInterval(timer.instance);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user