diff --git a/src/commands/about.rs b/src/commands/about.rs index e64c7e3..0339778 100644 --- a/src/commands/about.rs +++ b/src/commands/about.rs @@ -4,7 +4,6 @@ use serenity::model::application::ResolvedOption; pub async fn run(options: &[ResolvedOption<'_>]) -> String { r#" A Discord bot that rolls limitless dice, randomly! - Designed, developed, and maintained by Arnkell Warner of Maduin Copyright 2025, all rights reserved "# .to_string() diff --git a/src/commands/random.rs b/src/commands/random.rs index a1a8419..07685f6 100644 --- a/src/commands/random.rs +++ b/src/commands/random.rs @@ -1,6 +1,5 @@ use crate::util::{junk, random::RandomGen, validate}; -use rand::Rng; use serenity::builder::{CreateCommand, CreateCommandOption}; use serenity::model::application::{CommandOptionType, ResolvedOption, ResolvedValue}; @@ -8,7 +7,7 @@ pub async fn run(options: &[ResolvedOption<'_>]) -> String { // check if options array is empty first if options.is_empty() { let mut rng = RandomGen::new(); - return rng.rng.gen_range(1..999).to_string(); + return rng.range_random_from_one(999).to_string(); } // options exist, process first option @@ -17,10 +16,9 @@ pub async fn run(options: &[ResolvedOption<'_>]) -> String { .. }) = options.first() { - println!("input: {}", input); let mut rng = RandomGen::new(); return match validate::parse_str_into_num::(input.trim()) { - Some(n) => rng.rng.gen_range(1..n).to_string(), + Some(n) => rng.range_random_from_one(n).to_string(), None => return junk::get_random_insult(), }; } else { diff --git a/src/commands/roll.rs b/src/commands/roll.rs index 6c3b945..be0ec56 100644 --- a/src/commands/roll.rs +++ b/src/commands/roll.rs @@ -3,7 +3,6 @@ use crate::{ util::{junk, random, validate}, }; -use rand::Rng; use serenity::builder::{CreateCommand, CreateCommandOption}; use serenity::model::application::{CommandOptionType, ResolvedOption, ResolvedValue}; @@ -13,7 +12,6 @@ pub async fn run(options: &[ResolvedOption<'_>]) -> String { .. }) = options.first() { - println!("got to the roll command! input: {}", input); let split = input.split("d").nth(1).unwrap(); let die_num = match validate::parse_str_into_num::(split.trim()) { Some(d) => d, @@ -25,7 +23,7 @@ pub async fn run(options: &[ResolvedOption<'_>]) -> String { None => return junk::get_random_insult(), }; let mut rng = random::RandomGen::new(); - let result = rng.rng.gen_range(1..die_num).to_string(); + let result = rng.range_random_from_one(die_num).to_string(); return format!("{result}"); } else { junk::get_random_insult() diff --git a/src/util/random.rs b/src/util/random.rs index a1c2dd5..3700dcb 100644 --- a/src/util/random.rs +++ b/src/util/random.rs @@ -1,4 +1,5 @@ use rand::rngs::ThreadRng; +use rand::Rng; pub struct RandomGen { pub rng: ThreadRng, @@ -10,4 +11,8 @@ impl RandomGen { rng: rand::thread_rng(), } } + + pub fn range_random_from_one(&mut self, limit: i32) -> i32 { + self.rng.gen_range(1..limit) + } }