Added basic listener
+ Only support chat events now + Created a listener for host message snooping + Clippy + fmt
This commit is contained in:
+12
-12
@@ -167,7 +167,7 @@ async fn say(ctx: &Context, _msg: &Message, args: Args) -> CommandResult {
|
||||
let data = ctx.data.read().await;
|
||||
let global_data = data.get::<GlobalData>().unwrap();
|
||||
|
||||
let global_data = global_data.lock().await;
|
||||
let mut global_data = global_data.lock().await;
|
||||
|
||||
let msg = WoxlfMessage::default()
|
||||
.source(MessageSource::Host)
|
||||
@@ -176,7 +176,7 @@ async fn say(ctx: &Context, _msg: &Message, args: Args) -> CommandResult {
|
||||
.content(args.rest())
|
||||
.clone();
|
||||
|
||||
dispatch_message(ctx, &global_data, msg).await?;
|
||||
dispatch_message(ctx, &mut global_data, msg).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@@ -188,7 +188,7 @@ async fn broadcast(ctx: &Context, _msg: &Message, args: Args) -> CommandResult {
|
||||
let data = ctx.data.read().await;
|
||||
let global_data = data.get::<GlobalData>().unwrap();
|
||||
|
||||
let global_data = global_data.lock().await;
|
||||
let mut global_data = global_data.lock().await;
|
||||
|
||||
let broadcast = global_data
|
||||
.templates()?
|
||||
@@ -201,7 +201,7 @@ async fn broadcast(ctx: &Context, _msg: &Message, args: Args) -> CommandResult {
|
||||
.median(Median::Webhook)
|
||||
.clone();
|
||||
|
||||
dispatch_message(ctx, &global_data, woxlf_msg).await?;
|
||||
dispatch_message(ctx, &mut global_data, woxlf_msg).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@@ -210,8 +210,8 @@ async fn broadcast(ctx: &Context, _msg: &Message, args: Args) -> CommandResult {
|
||||
#[only_in(guilds)]
|
||||
#[allowed_roles("wolfx host")]
|
||||
async fn next_phase(ctx: &Context, msg: &Message, mut args: Args) -> CommandResult {
|
||||
let mut data = ctx.data.write().await;
|
||||
let global_data = data.get_mut::<GlobalData>().unwrap();
|
||||
let data = ctx.data.read().await;
|
||||
let global_data = data.get::<GlobalData>().unwrap();
|
||||
let guild = msg.guild(&ctx.cache).unwrap();
|
||||
|
||||
let mut global_data = global_data.lock().await;
|
||||
@@ -237,7 +237,7 @@ async fn next_phase(ctx: &Context, msg: &Message, mut args: Args) -> CommandResu
|
||||
.content(&broadcast)
|
||||
.clone();
|
||||
|
||||
dispatch_message(ctx, &global_data, woxlf_msg).await?;
|
||||
dispatch_message(ctx, &mut global_data, woxlf_msg).await?;
|
||||
|
||||
if global_data.game_state_mut()?.current_phase == Phase::Day {
|
||||
let vote_channel = guild
|
||||
@@ -303,8 +303,8 @@ async fn kill(ctx: &Context, msg: &Message, args: Args) -> CommandResult {
|
||||
#[only_in(guilds)]
|
||||
#[allowed_roles("wolfx host")]
|
||||
async fn add_time(ctx: &Context, msg: &Message, mut args: Args) -> CommandResult {
|
||||
let mut data = ctx.data.write().await;
|
||||
let global_data = data.get_mut::<GlobalData>().unwrap();
|
||||
let data = ctx.data.read().await;
|
||||
let global_data = data.get::<GlobalData>().unwrap();
|
||||
|
||||
let mut global_data = global_data.lock().await;
|
||||
|
||||
@@ -335,7 +335,7 @@ async fn add_time(ctx: &Context, msg: &Message, mut args: Args) -> CommandResult
|
||||
.content(&broadcast)
|
||||
.clone();
|
||||
|
||||
dispatch_message(ctx, &global_data, woxlf_msg).await?;
|
||||
dispatch_message(ctx, &mut global_data, woxlf_msg).await?;
|
||||
|
||||
msg.reply(&ctx.http, "Phase has been updated")
|
||||
.await
|
||||
@@ -644,7 +644,7 @@ async fn whisper(ctx: &Context, msg: &Message, mut args: Args) -> CommandResult
|
||||
} else {
|
||||
let data = ctx.data.read().await;
|
||||
let global_data = data.get::<GlobalData>().unwrap();
|
||||
let global_data = global_data.lock().await;
|
||||
let mut global_data = global_data.lock().await;
|
||||
|
||||
let target = args.single::<String>()?;
|
||||
let pm = args.rest();
|
||||
@@ -674,7 +674,7 @@ async fn whisper(ctx: &Context, msg: &Message, mut args: Args) -> CommandResult
|
||||
.content(pm)
|
||||
.clone();
|
||||
|
||||
dispatch_message(ctx, &global_data, woxlf_msg).await?;
|
||||
dispatch_message(ctx, &mut global_data, woxlf_msg).await?;
|
||||
} else {
|
||||
msg.reply(
|
||||
&ctx.http,
|
||||
|
||||
@@ -26,7 +26,7 @@ impl EventHandler for Handler {
|
||||
|
||||
let global_data = data.get::<GlobalData>().unwrap();
|
||||
|
||||
let global_data = global_data.lock().await;
|
||||
let mut global_data = global_data.lock().await;
|
||||
|
||||
if global_data.game_state.is_none() {
|
||||
// no game in progress
|
||||
@@ -75,7 +75,7 @@ impl EventHandler for Handler {
|
||||
.attachments(attachments)
|
||||
.clone();
|
||||
|
||||
dispatch_message(&ctx, &global_data, woxlf_msg)
|
||||
dispatch_message(&ctx, &mut global_data, woxlf_msg)
|
||||
.await
|
||||
.expect("Unable to send message to players");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user