feat: add Materia data centre

This commit is contained in:
Anna 2022-01-25 01:47:08 -05:00
parent 0e97b022a0
commit 576536af33
2 changed files with 33 additions and 2 deletions

View File

@ -16,11 +16,12 @@ pub enum DataCenter {
Light,
Mana,
Primal,
Materia,
}
impl DataCenter {
#[cfg(feature = "all_const")]
pub const ALL: [DataCenter; 8] = [
pub const ALL: [DataCenter; 9] = [
DataCenter::Aether,
DataCenter::Chaos,
DataCenter::Crystal,
@ -29,6 +30,7 @@ impl DataCenter {
DataCenter::Light,
DataCenter::Mana,
DataCenter::Primal,
DataCenter::Materia,
];
pub fn as_str(&self) -> &'static str {
@ -41,6 +43,7 @@ impl DataCenter {
DataCenter::Light => "Light",
DataCenter::Mana => "Mana",
DataCenter::Primal => "Primal",
DataCenter::Materia => "Materia",
}
}
@ -63,6 +66,7 @@ impl FromStr for DataCenter {
"light" => DataCenter::Light,
"mana" => DataCenter::Mana,
"primal" => DataCenter::Primal,
"materia" => DataCenter::Materia,
_ => return Err(UnknownVariant("DataCenter", s.into()))
};

View File

@ -96,11 +96,18 @@ pub enum World {
Lamia,
Leviathan,
Ultros,
// Materia
Bismarck,
Ravana,
Sephirot,
Sophia,
Zurvan,
}
impl World {
#[cfg(feature = "all_const")]
pub const ALL: [World; 68] = [
pub const ALL: [World; 73] = [
// Aether
World::Adamantoise,
World::Cactuar,
@ -184,6 +191,13 @@ impl World {
World::Lamia,
World::Leviathan,
World::Ultros,
// Materia
World::Bismarck,
World::Ravana,
World::Sephirot,
World::Sophia,
World::Zurvan,
];
/// Returns the string variant of this world.
@ -264,6 +278,12 @@ impl World {
World::Lamia => "Lamia",
World::Leviathan => "Leviathan",
World::Ultros => "Ultros",
World::Bismarck => "Bismarck",
World::Ravana => "Ravana",
World::Sephirot => "Sephirot",
World::Sophia => "Sophia",
World::Zurvan => "Zurvan",
}
}
@ -352,6 +372,13 @@ impl World {
World::Lamia |
World::Leviathan |
World::Ultros => DataCenter::Primal,
// Materia
World::Bismarck |
World::Ravana |
World::Sephirot |
World::Sophia |
World::Zurvan => DataCenter::Materia,
}
}
}