Initialize client, not on ready
This commit is contained in:
@@ -18,9 +18,6 @@ impl EventHandler for Handler {
|
||||
// In this case, just print what the current user's username is.
|
||||
async fn ready(&self, ctx: Context, ready: Ready) {
|
||||
println!("{} is connected!", ready.user.name);
|
||||
println!("Initialize guild voice popin state");
|
||||
|
||||
guild_popin::init(ctx).await;
|
||||
}
|
||||
|
||||
async fn guild_create(&self, ctx: Context, guild: Guild, _new: bool) {
|
||||
|
||||
@@ -43,6 +43,10 @@ async fn main() {
|
||||
.await
|
||||
.expect("Err creating client");
|
||||
|
||||
// TODO: do checks when getting data in add guild etc.
|
||||
println!("Initialize guild voice popin state");
|
||||
utils::guild_popin::init(client);
|
||||
|
||||
if let Err(why) = client.start().await {
|
||||
println!("Client error: {:?}", why);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ use std::ops::Range;
|
||||
use std::sync::Arc;
|
||||
use std::time::{Duration, Instant};
|
||||
use rand::prelude::*;
|
||||
use serenity::Client;
|
||||
use songbird::id::ChannelId;
|
||||
use std::thread::sleep;
|
||||
use std::collections::HashMap;
|
||||
@@ -85,8 +86,8 @@ async fn popin_soon(ctx: Context, guild: Guild) {
|
||||
tokio::spawn(popin(ctx.clone(),guild));
|
||||
}
|
||||
|
||||
pub async fn init(ctx: Context) {
|
||||
let mut data = ctx.data.write().await;
|
||||
pub async fn init(client: Client) {
|
||||
let mut data = client.data.write().await;
|
||||
data.insert::<GuildPopIn>(Arc::new(RwLock::new(HashMap::default())))
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user