ottobotv2/src/main/kotlin/nl/voidcorp/discord/Loader.kt

24 lines
730 B
Kotlin
Raw Normal View History

2019-05-20 23:10:28 +02:00
package nl.voidcorp.discord
import net.dv8tion.jda.api.entities.Activity
import net.dv8tion.jda.api.hooks.ListenerAdapter
import net.dv8tion.jda.api.sharding.DefaultShardManagerBuilder
import nl.voidcorp.discord.storage.ConfigStore
import org.springframework.stereotype.Service
2019-05-20 23:10:28 +02:00
@Service
2019-08-29 22:11:26 +02:00
class Loader(listeners: List<ListenerAdapter>, store: ConfigStore) {
2019-05-20 23:10:28 +02:00
init {
val token = System.getenv("DISCORD_TOKEN") ?: throw RuntimeException("'DISCORD_TOKEN' not set!")
val builder = DefaultShardManagerBuilder.createDefault(token)
2019-05-20 23:10:28 +02:00
builder.addEventListeners(listeners)
2019-05-20 23:10:28 +02:00
jda = builder.build()
jda.setActivityProvider {
Activity.playing("v${store.version} ($it)")
}
2019-05-20 23:10:28 +02:00
}
}