2019-09-13 20:02:41 +00:00
const client = require ( "../utils/client.js" ) ;
const database = require ( "../utils/database.js" ) ;
const logger = require ( "../utils/logger.js" ) ;
2019-11-13 00:09:06 +00:00
const messages = require ( "../messages.json" ) ;
2019-09-13 20:02:41 +00:00
const misc = require ( "../utils/misc.js" ) ;
2020-06-27 17:18:26 +00:00
const soundPlayer = require ( "../utils/soundplayer.js" ) ;
2020-04-10 02:40:52 +00:00
const helpGenerator =
process . env . OUTPUT !== "" ? require ( "../utils/help.js" ) : null ;
2020-07-22 01:29:32 +00:00
const first = process . env . PMTWO === "true" ? process . env . NODE _APP _INSTANCE === "0" : true ;
2019-09-13 20:02:41 +00:00
// run when ready
module . exports = async ( ) => {
2020-07-02 15:33:27 +00:00
// connect to lavalink
2020-07-16 14:28:09 +00:00
if ( ! soundPlayer . status && ! soundPlayer . connected ) await soundPlayer . connect ( ) ;
2020-07-02 15:33:27 +00:00
2020-12-19 00:50:25 +00:00
await database . setup ( ) ;
2020-04-26 21:55:33 +00:00
2019-12-05 17:40:09 +00:00
// generate docs
2020-07-22 01:29:32 +00:00
if ( helpGenerator && first ) await helpGenerator ( process . env . OUTPUT ) ;
2019-12-05 17:40:09 +00:00
2019-09-13 20:02:41 +00:00
// set activity (a.k.a. the gamer code)
( async function activityChanger ( ) {
2020-02-26 01:57:44 +00:00
client . editStatus ( "dnd" , {
2020-12-19 00:57:41 +00:00
name : ` ${ misc . random ( messages ) } | @ ${ client . user . username } help ` ,
2020-02-26 01:57:44 +00:00
} ) ;
2019-09-13 20:02:41 +00:00
setTimeout ( activityChanger , 900000 ) ;
} ) ( ) ;
2020-07-22 01:29:32 +00:00
if ( process . env . PMTWO === "true" ) process . send ( "ready" ) ;
2020-07-16 14:28:09 +00:00
logger . log ( ` Successfully started ${ client . user . username } # ${ client . user . discriminator } with ${ client . users . size } users in ${ client . guilds . size } servers. ` ) ;
2020-04-10 02:40:52 +00:00
} ;