You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.7 KiB
Rust
60 lines
1.7 KiB
Rust
|
2 years ago
|
|
||
|
|
// use serenity::async_trait;
|
||
|
|
use serenity::model::channel::Message;
|
||
|
|
// use serenity::model::gateway::Ready;
|
||
|
|
use serenity::prelude::*;
|
||
|
|
use serenity::model::prelude::*;
|
||
|
|
|
||
|
|
use super::super::utils;
|
||
|
|
|
||
|
|
|
||
|
|
pub async fn parse_command(ctx: Context, msg: Message, server_id: GuildId)
|
||
|
|
{
|
||
|
|
|
||
|
|
if server_id == utils::ADMIN_SERVER_ID
|
||
|
|
{
|
||
|
|
if msg.content == ".log_test"
|
||
|
|
{
|
||
|
|
utils::Logger::log_message(ctx, "This is a test log message!").await;
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
if msg.content == ".role_test"
|
||
|
|
{
|
||
|
|
let test_role = RoleId(1129106677619228702 as u64);
|
||
|
|
if let Err(why) = server_id.edit_member(&ctx, msg.author, |m|
|
||
|
|
{
|
||
|
|
if let Some(mut member) = msg.member
|
||
|
|
{
|
||
|
|
member.roles.push(test_role);
|
||
|
|
return m.roles(member.roles);
|
||
|
|
}
|
||
|
|
|
||
|
|
m
|
||
|
|
}).await
|
||
|
|
{
|
||
|
|
utils::Logger::log_error(ctx, &format!("Error updating roles: {:?}", why)).await;
|
||
|
|
}
|
||
|
|
else
|
||
|
|
{
|
||
|
|
let role = &server_id.roles(&ctx).await.unwrap()[&test_role];
|
||
|
|
if let Err(why) = msg.channel_id.say(&ctx.http, format!("{} role added!", role)).await
|
||
|
|
{
|
||
|
|
utils::Logger::log_error(ctx, &format!("Error sending message: {:?}", why)).await;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
if msg.content == ".randomizer"
|
||
|
|
{
|
||
|
|
let item = utils::get_random_item();
|
||
|
|
if let Err(why) = msg.channel_id.say(&ctx.http, format!("You found {}!", item)).await
|
||
|
|
{
|
||
|
|
println!("Error sending message: {:?}", why);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|