diff options
| author | Daniel Schadt <kingdread@gmx.de> | 2021-11-16 00:02:33 +0100 | 
|---|---|---|
| committer | Daniel Schadt <kingdread@gmx.de> | 2021-11-16 00:02:33 +0100 | 
| commit | 891dec1e144c74bb9747a92dca9e65eb15570ef7 (patch) | |
| tree | 531b682ffcf2a86fcb836f01e79eb879fcab27ab /src | |
| parent | 91902f7ddb1941a1bd078d786a52b91979fffc36 (diff) | |
| download | evtclib-891dec1e144c74bb9747a92dca9e65eb15570ef7.tar.gz evtclib-891dec1e144c74bb9747a92dca9e65eb15570ef7.tar.bz2 evtclib-891dec1e144c74bb9747a92dca9e65eb15570ef7.zip | |
Add Statues of Grenth
Diffstat (limited to 'src')
| -rw-r--r-- | src/analyzers/mod.rs | 3 | ||||
| -rw-r--r-- | src/gamedata.rs | 61 | 
2 files changed, 64 insertions, 0 deletions
| diff --git a/src/analyzers/mod.rs b/src/analyzers/mod.rs index a5f3cbf..fcec7cf 100644 --- a/src/analyzers/mod.rs +++ b/src/analyzers/mod.rs @@ -101,6 +101,9 @@ pub fn for_log<'l>(log: &'l Log) -> Option<Box<dyn Analyzer + 'l>> {          Encounter::SoullessHorror => Some(Box::new(raids::SoullessHorror::new(log))),          Encounter::RiverOfSouls => Some(Box::new(raids::RiverOfSouls::new(log))), +        Encounter::BrokenKing | Encounter::EaterOfSouls | Encounter::StatueOfDarkness => { +            Some(Box::new(raids::GenericRaid::new(log))) +        }          Encounter::VoiceInTheVoid => Some(Box::new(raids::Dhuum::new(log))),          Encounter::ConjuredAmalgamate => Some(Box::new(raids::ConjuredAmalgamate::new(log))), diff --git a/src/gamedata.rs b/src/gamedata.rs index 3c48b71..24ce288 100644 --- a/src/gamedata.rs +++ b/src/gamedata.rs @@ -53,6 +53,15 @@ pub enum Encounter {      ///      /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Traverse_the_River_of_Souls)      RiverOfSouls = 0x4D74, +    BrokenKing = Boss::BrokenKing as u16, +    EaterOfSouls = Boss::EaterOfSouls as u16, +    /// The Statue of Darkness consists of killing the Eye of Judgment and the Eye of Fate. +    /// +    /// Colloquially known as just "eyes". +    /// +    /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Statue_of_Darkness) +    StatueOfDarkness = Boss::EyeOfJudgment as u16, +      VoiceInTheVoid = Boss::Dhuum as u16,      // Wing 6 @@ -116,6 +125,9 @@ impl Encounter {              Encounter::Deimos => &[Boss::Deimos],              Encounter::SoullessHorror => &[Boss::SoullessHorror],              Encounter::RiverOfSouls => &[], +            Encounter::BrokenKing => &[Boss::BrokenKing], +            Encounter::EaterOfSouls => &[Boss::EaterOfSouls], +            Encounter::StatueOfDarkness => &[Boss::EyeOfJudgment, Boss::EyeOfFate],              Encounter::VoiceInTheVoid => &[Boss::Dhuum],              Encounter::ConjuredAmalgamate => &[Boss::ConjuredAmalgamate],              Encounter::TwinLargos => &[Boss::Nikare, Boss::Kenut], @@ -182,6 +194,7 @@ impl FromStr for Encounter {          match &lower as &str {              "trio" | "bandit trio" => Ok(Encounter::BanditTrio),              "river" | "river of souls" => Ok(Encounter::RiverOfSouls), +            "eyes" | "statue of darkness" => Ok(Encounter::StatueOfDarkness),              "largos" | "twins" | "largos twins" | "twin largos" => Ok(Encounter::TwinLargos),              "kodans" | "super kodan brothers" => Ok(Encounter::SuperKodanBrothers), @@ -207,6 +220,9 @@ impl Display for Encounter {              Encounter::Deimos => "Deimos",              Encounter::SoullessHorror => "Soulless Horror",              Encounter::RiverOfSouls => "River of Souls", +            Encounter::BrokenKing => "Broken King", +            Encounter::EaterOfSouls => "Eater of Souls", +            Encounter::StatueOfDarkness => "Statue of Darkness",              Encounter::VoiceInTheVoid => "Voice in the Void",              Encounter::ConjuredAmalgamate => "Conjured Amalgamate",              Encounter::TwinLargos => "Twin Largos", @@ -322,6 +338,22 @@ pub enum Boss {      ///      /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Soulless_Horror)      SoullessHorror = 0x4D37, +    /// Broken King, part of the Statues of Grenth event in the Hall of Chains. +    /// +    /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Broken_King) +    BrokenKing = 0x4CEB, +    /// Eater of Souls, part of the Statues of Grenth event in the Hall of Chains. +    /// +    /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Eater_of_Souls_(Hall_of_Chains)) +    EaterOfSouls = 0x4C50, +    /// The Eye of Judgment, part of the Statue of Darkness event in the Hall of Chains. +    /// +    /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Eye_of_Judgment) +    EyeOfJudgment = 0x4CC3, +    /// The Eye of Fate, part of the Statue of Darkness event in the Hall of Chains. +    /// +    /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Eye_of_Fate) +    EyeOfFate = 0x4D84,      /// Dhuum, second boss of the Hall of Chains.      ///      /// The encounter to this boss is called [Voice in the Void][Encounter::VoiceInTheVoid]. @@ -458,6 +490,10 @@ impl Boss {              Boss::Samarog => Encounter::Samarog,              Boss::Deimos => Encounter::Deimos,              Boss::SoullessHorror => Encounter::SoullessHorror, +            Boss::BrokenKing => Encounter::BrokenKing, +            Boss::EaterOfSouls => Encounter::EaterOfSouls, +            Boss::EyeOfJudgment => Encounter::StatueOfDarkness, +            Boss::EyeOfFate => Encounter::StatueOfDarkness,              Boss::Dhuum => Encounter::VoiceInTheVoid,              Boss::ConjuredAmalgamate => Encounter::ConjuredAmalgamate,              Boss::Nikare => Encounter::TwinLargos, @@ -516,6 +552,10 @@ impl FromStr for Boss {              "deimos" => Ok(Boss::Deimos),              "desmina" | "sh" | "soulless horror" => Ok(Boss::SoullessHorror), +            "broken king" => Ok(Boss::BrokenKing), +            "eater" | "eater of souls" => Ok(Boss::EaterOfSouls), +            "eye of judgment" => Ok(Boss::EyeOfJudgment), +            "eye of fate" => Ok(Boss::EyeOfFate),              "dhuum" | "voice in the void" => Ok(Boss::Dhuum),              "ca" | "conjured amalgamate" => Ok(Boss::ConjuredAmalgamate), @@ -572,6 +612,10 @@ impl Display for Boss {              Boss::Samarog => "Samarog",              Boss::Deimos => "Deimos",              Boss::SoullessHorror => "Soulless Horror", +            Boss::BrokenKing => "Broken King", +            Boss::EaterOfSouls => "Eater of Souls", +            Boss::EyeOfJudgment => "Eye of Judgment", +            Boss::EyeOfFate => "Eye of Fate",              Boss::Dhuum => "Dhuum",              Boss::ConjuredAmalgamate => "Conjured Amalgamate",              Boss::Nikare => "Nikare", @@ -826,6 +870,14 @@ mod tests {              ("river", RiverOfSouls),              ("River", RiverOfSouls),              ("river of souls", RiverOfSouls), +            ("broken king", BrokenKing), +            ("Broken King", BrokenKing), +            ("eater", EaterOfSouls), +            ("eater of souls", EaterOfSouls), +            ("Eater of Souls", EaterOfSouls), +            ("eyes", StatueOfDarkness), +            ("statue of darkness", StatueOfDarkness), +            ("Statue of Darkness", StatueOfDarkness),              ("dhuum", VoiceInTheVoid),              ("Dhuum", VoiceInTheVoid),              ("ca", ConjuredAmalgamate), @@ -945,6 +997,15 @@ mod tests {              ("soulless horror", SoullessHorror),              ("desmina", SoullessHorror),              ("Desmina", SoullessHorror), +            ("broken king", BrokenKing), +            ("Broken King", BrokenKing), +            ("eater", EaterOfSouls), +            ("eater of souls", EaterOfSouls), +            ("Eater of Souls", EaterOfSouls), +            ("eye of judgment", EyeOfJudgment), +            ("Eye of Judgment", EyeOfJudgment), +            ("eye of fate", EyeOfFate), +            ("Eye of Fate", EyeOfFate),              ("dhuum", Dhuum),              ("Dhuum", Dhuum),              ("ca", ConjuredAmalgamate), | 
