Adds .randomizer command
parent
b976591e7a
commit
7936b24d28
@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
"rust-analyzer.linkedProjects": [
|
"rust-analyzer.linkedProjects": [
|
||||||
|
".\\Cargo.toml",
|
||||||
".\\Cargo.toml"
|
".\\Cargo.toml"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
use rand::prelude::*;
|
||||||
|
|
||||||
|
pub fn get_random_item() -> String
|
||||||
|
{
|
||||||
|
let major_items = vec!["Missiles", "Super Missiles", "E Tank", "Power Bombs" ];
|
||||||
|
let minor_items = vec!["Morphing Ball", "Bombs", "Reserve Tank", "Charge Beam", "Spazer", "Ice Beam", "Wave Beam", "Plasma Beam", "Hi-Jump Boots", "Speed Booster",
|
||||||
|
"Grappling Beam", "Stupi... I mean Spring Ball", "Space Jump", "Screw Attack",
|
||||||
|
"Varia Suit", "Gravity Suit", "X-Ray Scope"];
|
||||||
|
|
||||||
|
let major_item_threshold = 75;
|
||||||
|
let not_missile_threshold = 40;
|
||||||
|
let missile_idx = 0;
|
||||||
|
|
||||||
|
let mut rng = rand::thread_rng();
|
||||||
|
let item_category: i32 = rng.gen_range(0..100);
|
||||||
|
|
||||||
|
if item_category >= major_item_threshold
|
||||||
|
{
|
||||||
|
let item: usize = rng.gen_range(0..minor_items.len() - 1);
|
||||||
|
return minor_items[item].to_string();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
let missile = rng.gen_range(0..100);
|
||||||
|
if missile >= not_missile_threshold
|
||||||
|
{
|
||||||
|
let item: usize = rng.gen_range(0..major_items.len() - 1);
|
||||||
|
return major_items[item].to_string();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return major_items[missile_idx].to_string();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in New Issue