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

View File

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