Changes to support HAL 9000

This commit is contained in:
Xyon 2025-05-04 16:48:11 +01:00
parent 8602c883d3
commit a9fb91c771
3 changed files with 6 additions and 6 deletions

View File

@ -1,6 +1,6 @@
[package] [package]
name = "manifold" name = "manifold"
version = "7.0.0" version = "8.0.0"
authors = ["Lucy Bladen <admin@lbladen.uk>"] authors = ["Lucy Bladen <admin@lbladen.uk>"]
edition = "2021" edition = "2021"

View File

@ -11,7 +11,7 @@ use crate::models::user::UserInfo;
#[async_trait] #[async_trait]
pub trait EventHandler { pub trait EventHandler {
async fn listen(ctx: &Context, framework_ctx: FrameworkContext<'_, ManifoldData, ManifoldError>, event: &Event<'_>) -> ManifoldResult<bool>; async fn listen(ctx: Context, framework_ctx: FrameworkContext<'_, ManifoldData, ManifoldError>, event: &Event<'_>) -> ManifoldResult<bool>;
} }
pub struct Handler { pub struct Handler {
@ -20,7 +20,7 @@ pub struct Handler {
#[async_trait] #[async_trait]
impl EventHandler for Handler { impl EventHandler for Handler {
async fn listen(ctx: &Context, framework_ctx: FrameworkContext<'_, ManifoldData, ManifoldError>, event: &Event<'_>) -> ManifoldResult<bool> { async fn listen(ctx: Context, framework_ctx: FrameworkContext<'_, ManifoldData, ManifoldError>, event: &Event<'_>) -> ManifoldResult<bool> {
match event { match event {
Event::Ready { data_about_bot } => Handler::standard_startup(&ctx, &framework_ctx, data_about_bot).await, Event::Ready { data_about_bot } => Handler::standard_startup(&ctx, &framework_ctx, data_about_bot).await,
Event::GuildBanAddition { guild_id, banned_user } => Handler::ban_add(&ctx, &framework_ctx, guild_id, banned_user).await, Event::GuildBanAddition { guild_id, banned_user } => Handler::ban_add(&ctx, &framework_ctx, guild_id, banned_user).await,

View File

@ -100,12 +100,12 @@ pub async fn prepare_client<T: EventHandler>(arguments: ArgMatches, intents: Gat
let framework = poise::Framework::builder() let framework = poise::Framework::builder()
.options(poise::FrameworkOptions { .options(poise::FrameworkOptions {
event_handler: |ctx, e, fctx, _| Box::pin(async move { event_handler: |ctx, e, fctx, _| Box::pin(async move {
match T::listen(ctx, fctx, e).await { match T::listen(ctx.clone(), fctx, e).await {
Ok(b) => if b { return Ok(()) }, Ok(b) => if b { return Ok(()) },
Err(e) => return Err(e), Err(e) => return Err(e),
}; };
_ = Handler::listen(ctx, fctx, e).await; _ = Handler::listen(ctx.clone(), fctx, e).await;
Ok(()) Ok(())
}), }),
pre_command: |ctx: ManifoldContext<'_>| Box::pin(async move { pre_command: |ctx: ManifoldContext<'_>| Box::pin(async move {