51 lines
No EOL
1.6 KiB
JavaScript
51 lines
No EOL
1.6 KiB
JavaScript
import { ActivityType } from 'discord.js';
|
|
import game from '../../json/playing.json' with {type: 'json'};
|
|
import music from '../../json/listening.json' with {type: 'json'};
|
|
import watch from '../../json/watching.json' with {type: 'json'};
|
|
|
|
export default {
|
|
name: 'ready',
|
|
once: true,
|
|
async execute(client) {
|
|
// Bot status
|
|
await setStatus();
|
|
// Change status every 30 minutes
|
|
setInterval(async () => {
|
|
await setStatus();
|
|
}, 1800000);
|
|
|
|
async function setStatus() {
|
|
const random = Math.floor((Math.random() * 3));
|
|
let types, status;
|
|
// Random "Watching" status taken from json
|
|
if (random === 0) {
|
|
console.log('Status type: \x1b[32mWatching\x1b[0m');
|
|
|
|
status = watch[Math.floor((Math.random() * watch.length))];
|
|
status = status + ' | Now with slash commands!';
|
|
console.log(`Setting status to: ${status}`);
|
|
types = [ ActivityType.Watching ];
|
|
}
|
|
// Random "Playing" status taken from json
|
|
else if (random === 1) {
|
|
console.log('Status type: \x1b[32mPlaying\x1b[0m');
|
|
|
|
status = game[Math.floor((Math.random() * game.length))];
|
|
status = status + ' | Now with slash commands!';
|
|
|
|
console.log(`Setting status to: ${status}`);
|
|
types = [ ActivityType.Playing, ActivityType.Competing ];
|
|
}
|
|
else if (random === 2) {
|
|
console.log('Status type: \x1b[32mPlaying\x1b[0m');
|
|
|
|
status = music[Math.floor((Math.random() * music.length))];
|
|
status = status + ' | Now with slash commands!';
|
|
|
|
console.log(`Setting status to: ${status}`);
|
|
types = [ ActivityType.Listening ];
|
|
}
|
|
await client.user.setActivity(status, { type: types[Math.floor((Math.random() * types.length))] });
|
|
}
|
|
},
|
|
}; |