Compare commits
2 commits
master
...
haru-teste
Author | SHA1 | Date | |
---|---|---|---|
e3bef5af6d | |||
c5ff366631 |
2 changed files with 83 additions and 0 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -3,3 +3,6 @@
|
||||||
|
|
||||||
# env
|
# env
|
||||||
.env
|
.env
|
||||||
|
|
||||||
|
#lazygit
|
||||||
|
lazygit.exe
|
||||||
|
|
80
src/bin/magic.rs
Normal file
80
src/bin/magic.rs
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
use forcebot_rs_v2::Bot;
|
||||||
|
|
||||||
|
#[tokio::main]
|
||||||
|
pub async fn main() {
|
||||||
|
|
||||||
|
/* 1. Create the bot using env */
|
||||||
|
let mut bot = Bot::new();
|
||||||
|
|
||||||
|
bot.load_module(magic::new());
|
||||||
|
|
||||||
|
/* 2. Run the bot */
|
||||||
|
bot.run().await;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
pub mod magic{
|
||||||
|
use std::sync::Arc;
|
||||||
|
|
||||||
|
use forcebot_rs_v2::{asyncfn_box, Badge, Bot, Command, Module};
|
||||||
|
use twitch_irc::message::ServerMessage;
|
||||||
|
|
||||||
|
|
||||||
|
/// Module with a loaded command
|
||||||
|
pub fn new() -> Module {
|
||||||
|
/* 1. Create a new module */
|
||||||
|
let mut _magic = Module::new("curse".to_string(),"".to_string());
|
||||||
|
let mut magic = Module::new("clean".to_string(),"".to_string());
|
||||||
|
|
||||||
|
/* 2. Load the cmd into a new module */
|
||||||
|
magic.load_command(curse_fn());
|
||||||
|
magic.load_command(clean_fn());
|
||||||
|
|
||||||
|
magic
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn curse_fn() -> Command {
|
||||||
|
/* 1. Create a new cmd */
|
||||||
|
let mut cmd = Command::new("curse".to_string(),"".to_string());
|
||||||
|
|
||||||
|
/* 2. Define exec callback */
|
||||||
|
async fn execbody(bot:Arc<Bot>,message:ServerMessage) -> Result<String,String> {
|
||||||
|
if let ServerMessage::Privmsg(msg) = message {
|
||||||
|
let _= bot.client.say_in_reply_to(
|
||||||
|
&msg, " ⁽⁽(੭ꐦ •̀Д•́ )੭*⁾⁾ ☥C☥U☥R☥S☥E ☥O☥F☥ ☥R☥A☥!!".to_string()).await;
|
||||||
|
}
|
||||||
|
Result::Err("Not Valid message type".to_string())
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 3. Set Command flags */
|
||||||
|
cmd.set_exec_fn(asyncfn_box(execbody));
|
||||||
|
cmd.set_admin_only(false);
|
||||||
|
cmd.set_min_badge(Badge::Moderator);
|
||||||
|
|
||||||
|
cmd
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
pub fn clean_fn() -> Command {
|
||||||
|
/* 1. Create a new cmd */
|
||||||
|
let mut cmd = Command::new("clean".to_string(),"".to_string());
|
||||||
|
|
||||||
|
/* 2. Define exec callback */
|
||||||
|
async fn execbody(bot:Arc<Bot>,message:ServerMessage) -> Result<String,String> {
|
||||||
|
if let ServerMessage::Privmsg(msg) = message {
|
||||||
|
let _= bot.client.say_in_reply_to(
|
||||||
|
&msg, "(๑'ᵕ'๑)⸝*。⋆°You are clean now!".to_string()).await;
|
||||||
|
}
|
||||||
|
Result::Err("Not Valid message type".to_string())
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 3. Set Command flags */
|
||||||
|
cmd.set_exec_fn(asyncfn_box(execbody));
|
||||||
|
cmd.set_admin_only(false);
|
||||||
|
cmd.set_min_badge(Badge::Moderator);
|
||||||
|
|
||||||
|
cmd
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue