use std::fmt;
pub static NATURES: [Nature; 25] = [
Nature::Hardy,
Nature::Lonely,
Nature::Brave,
Nature::Adamant,
Nature::Naughty,
Nature::Bold,
Nature::Docile,
Nature::Relaxed,
Nature::Impish,
Nature::Lax,
Nature::Timid,
Nature::Hasty,
Nature::Serious,
Nature::Jolly,
Nature::Naive,
Nature::Modest,
Nature::Mild,
Nature::Quiet,
Nature::Bashful,
Nature::Rash,
Nature::Calm,
Nature::Gentle,
Nature::Sassy,
Nature::Careful,
Nature::Quirky,
];
#[derive(Copy, Clone, Debug, Eq, Hash, PartialEq)]
pub enum Nature {
Hardy = 0,
Lonely = 1,
Brave = 2,
Adamant = 3,
Naughty = 4,
Bold = 5,
Docile = 6,
Relaxed = 7,
Impish = 8,
Lax = 9,
Timid = 10,
Hasty = 11,
Serious = 12,
Jolly = 13,
Naive = 14,
Modest = 15,
Mild = 16,
Quiet = 17,
Bashful = 18,
Rash = 19,
Calm = 20,
Gentle = 21,
Sassy = 22,
Careful = 23,
Quirky = 24,
}
impl fmt::Display for Nature {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
match self {
Nature::Hardy => write!(f, "Hardy"),
Nature::Lonely => write!(f, "Lonely"),
Nature::Brave => write!(f, "Brave"),
Nature::Adamant => write!(f, "Adamant"),
Nature::Naughty => write!(f, "Naughty"),
Nature::Bold => write!(f, "Bold"),
Nature::Docile => write!(f, "Docile"),
Nature::Relaxed => write!(f, "Relaxed"),
Nature::Impish => write!(f, "Impish"),
Nature::Lax => write!(f, "Lax"),
Nature::Timid => write!(f, "Timid"),
Nature::Hasty => write!(f, "Hasty"),
Nature::Serious => write!(f, "Serious"),
Nature::Jolly => write!(f, "Jolly"),
Nature::Naive => write!(f, "Naive"),
Nature::Modest => write!(f, "Modest"),
Nature::Mild => write!(f, "Mild"),
Nature::Quiet => write!(f, "Quiet"),
Nature::Bashful => write!(f, "Bashful"),
Nature::Rash => write!(f, "Rash"),
Nature::Calm => write!(f, "Calm"),
Nature::Gentle => write!(f, "Gentle"),
Nature::Sassy => write!(f, "Sassy"),
Nature::Careful => write!(f, "Careful"),
Nature::Quirky => write!(f, "Quirky"),
}
}
}