Add ship and ping command
This commit is contained in:
parent
dd057a99f0
commit
32c98bf691
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "rustcord"
|
name = "rustcord"
|
||||||
version = "0.5.3"
|
version = "0.7.0"
|
||||||
authors = [" <@protonmail.com>"]
|
authors = [" <@protonmail.com>"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
|
50
src/main.rs
50
src/main.rs
|
@ -45,12 +45,14 @@ fn main() {
|
||||||
.cmd("halt", halt)
|
.cmd("halt", halt)
|
||||||
.cmd("help", help)
|
.cmd("help", help)
|
||||||
.cmd("info", info)
|
.cmd("info", info)
|
||||||
|
.cmd("ping", ping)
|
||||||
.cmd("list_srv", list_srv)
|
.cmd("list_srv", list_srv)
|
||||||
.command("compare_bot", |c| {
|
.command("compare_bot", |c| {
|
||||||
c
|
c
|
||||||
.cmd(compare_bot)
|
.cmd(compare_bot)
|
||||||
.known_as("compare bot")
|
.known_as("compare bot")
|
||||||
})
|
})
|
||||||
|
.cmd("ship", ship)
|
||||||
);
|
);
|
||||||
|
|
||||||
// start listening for events by starting a single shard
|
// start listening for events by starting a single shard
|
||||||
|
@ -63,6 +65,10 @@ command!(init(_ctx, message) {
|
||||||
let _ = message.channel_id.say("The Discordinator9000 is ready to kick yer butts!");
|
let _ = message.channel_id.say("The Discordinator9000 is ready to kick yer butts!");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
command!(ping(_ctx, message) {
|
||||||
|
let _ = message.reply("Pong!");
|
||||||
|
});
|
||||||
|
|
||||||
command!(halt(ctx, message) {
|
command!(halt(ctx, message) {
|
||||||
if message.author.id == 254310746450690048 {
|
if message.author.id == 254310746450690048 {
|
||||||
use serenity::model::user::OnlineStatus;
|
use serenity::model::user::OnlineStatus;
|
||||||
|
@ -94,6 +100,41 @@ command!(list_srv(_ctx, message) {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
command!(ship(_ctx, message, args) {
|
||||||
|
use std::collections::hash_map::DefaultHasher;
|
||||||
|
use std::hash::{Hash, Hasher};
|
||||||
|
|
||||||
|
let first = calculate_hash(&args.single::<String>().unwrap());
|
||||||
|
let second = calculate_hash(&args.single::<String>().unwrap());
|
||||||
|
let mut slider = String::new();
|
||||||
|
let res = (first % second) / 100000000000000000;
|
||||||
|
|
||||||
|
//let _ = message.channel_id.say(format!(":heart: {}%", res));
|
||||||
|
let mut num = 0;
|
||||||
|
while num < res / 10 {
|
||||||
|
slider.push('▬');
|
||||||
|
num += 1;
|
||||||
|
}
|
||||||
|
slider.push_str(":heart:");
|
||||||
|
num = 0;
|
||||||
|
while num < (10 - res / 10) {
|
||||||
|
slider.push('▬');
|
||||||
|
num += 1;
|
||||||
|
}
|
||||||
|
let _ = message.channel_id.send_message(|m| m
|
||||||
|
.embed(|e| e
|
||||||
|
.title(format!("{}%", res))
|
||||||
|
.description(slider)
|
||||||
|
.color(0xff00ce)
|
||||||
|
));
|
||||||
|
|
||||||
|
fn calculate_hash<T: Hash>(t: &T) -> u64 {
|
||||||
|
let mut s = DefaultHasher::new();
|
||||||
|
t.hash(&mut s);
|
||||||
|
s.finish()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
command!(gayculator(_ctx, message, args) {
|
command!(gayculator(_ctx, message, args) {
|
||||||
if message.author.id != 191948420141809665 {
|
if message.author.id != 191948420141809665 {
|
||||||
let number_32: i32 = args.trim().parse()
|
let number_32: i32 = args.trim().parse()
|
||||||
|
@ -108,8 +149,8 @@ if message.author.id != 191948420141809665 {
|
||||||
.embed(|e| e
|
.embed(|e| e
|
||||||
.title("Gayness level:")
|
.title("Gayness level:")
|
||||||
.description(result)
|
.description(result)
|
||||||
.color(0xff00f9))
|
.color(0xff00f9)
|
||||||
);
|
));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -141,11 +182,14 @@ command!(help(_ctx, message) {
|
||||||
.title("Availble commands:")
|
.title("Availble commands:")
|
||||||
.description("All commands are case-insensitive")
|
.description("All commands are case-insensitive")
|
||||||
.fields(vec![
|
.fields(vec![
|
||||||
|
("OwO init", "Introduce me", false),
|
||||||
|
("OwO ping", "Pong", false),
|
||||||
("OwO waffle", "Join the **waffle dongle** cult!", false),
|
("OwO waffle", "Join the **waffle dongle** cult!", false),
|
||||||
("OwO sausage", "Join the **sausage dongle** cult!", false),
|
("OwO sausage", "Join the **sausage dongle** cult!", false),
|
||||||
("OwO help", "Help the fellow humanz!", false),
|
("OwO help", "Help the fellow humanz!", false),
|
||||||
("OwO info", "Show information about me!", false),
|
("OwO info", "Show information about me!", false),
|
||||||
("OwO compare_bot", "Compare me to other robots!", false),
|
("OwO compare_bot ``bot's name``", "Compare me to other robots!", false),
|
||||||
|
("OwO ship ``name 1`` ``name 2``", "*shipping intensifies*", false),
|
||||||
("Admin commands:", "\u{200B}", true),
|
("Admin commands:", "\u{200B}", true),
|
||||||
("OwO halt", "shut me down", false),
|
("OwO halt", "shut me down", false),
|
||||||
("OwO list_srv", "list my servers", false)
|
("OwO list_srv", "list my servers", false)
|
||||||
|
|
Binary file not shown.
Loading…
Reference in New Issue