diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/analyzers/mod.rs | 4 | ||||
| -rw-r--r-- | src/gamedata.rs | 24 | 
2 files changed, 27 insertions, 1 deletions
| diff --git a/src/analyzers/mod.rs b/src/analyzers/mod.rs index 9b482de..6234a9a 100644 --- a/src/analyzers/mod.rs +++ b/src/analyzers/mod.rs @@ -87,7 +87,9 @@ pub fn for_log<'l>(log: &'l Log) -> Option<Box<dyn Analyzer + 'l>> {              Some(Box::new(raids::GenericRaid::new(log)))          } -        Encounter::Slothasor | Encounter::Matthias => Some(Box::new(raids::GenericRaid::new(log))), +        Encounter::Slothasor | Encounter::BanditTrio | Encounter::Matthias => { +            Some(Box::new(raids::GenericRaid::new(log))) +        }          Encounter::KeepConstruct => Some(Box::new(raids::GenericRaid::new(log))),          Encounter::Xera => Some(Box::new(raids::Xera::new(log))), diff --git a/src/gamedata.rs b/src/gamedata.rs index ca5a3ad..dc035b2 100644 --- a/src/gamedata.rs +++ b/src/gamedata.rs @@ -28,6 +28,8 @@ pub enum Encounter {      // Wing 2      Slothasor = Boss::Slothasor as u16, +    // Berg is the first encounter, which is why the logs are saved as "Berg". +    BanditTrio = Boss::Berg as u16,      Matthias = Boss::Matthias as u16,      // Wing 3 @@ -95,6 +97,7 @@ impl Encounter {              Encounter::Gorseval => &[Boss::Gorseval],              Encounter::Sabetha => &[Boss::Sabetha],              Encounter::Slothasor => &[Boss::Slothasor], +            Encounter::BanditTrio => &[Boss::Berg, Boss::Zane, Boss::Narella],              Encounter::Matthias => &[Boss::Matthias],              Encounter::KeepConstruct => &[Boss::KeepConstruct],              Encounter::Xera => &[Boss::Xera, Boss::Xera2], @@ -163,6 +166,7 @@ impl FromStr for Encounter {          }          let lower = s.to_lowercase();          match &lower as &str { +            "trio" | "bandit trio" => Ok(Encounter::BanditTrio),              "largos" | "twins" | "largos twins" | "twin largos" => Ok(Encounter::TwinLargos),              "kodans" | "super kodan brothers" => Ok(Encounter::SuperKodanBrothers), @@ -178,6 +182,7 @@ impl Display for Encounter {              Encounter::Gorseval => "Gorseval",              Encounter::Sabetha => "Sabetha",              Encounter::Slothasor => "Slothasor", +            Encounter::BanditTrio => "Bandit Trio",              Encounter::Matthias => "Matthias Gabrel",              Encounter::KeepConstruct => "Keep Construct",              Encounter::Xera => "Xera", @@ -245,6 +250,18 @@ pub enum Boss {      ///      /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Slothasor)      Slothasor = 0x3EFB, +    /// Berg, part of the "Bandit Trio" encounter. +    /// +    /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Berg) +    Berg = 0x3ED8, +    /// Zane, part of the "Bandit Trio" encounter. +    /// +    /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Zane) +    Zane = 0x3F09, +    /// Narella, part of the "Bandit Trio" encounter. +    /// +    /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Narella) +    Narella = 0x3EFD,      /// Matthias, third boss of Salvation Pass.      ///      /// [Guild Wars 2 Wiki](https://wiki.guildwars2.com/wiki/Matthias_Gabrel) @@ -415,6 +432,7 @@ impl Boss {              Boss::Gorseval => Encounter::Gorseval,              Boss::Sabetha => Encounter::Sabetha,              Boss::Slothasor => Encounter::Slothasor, +            Boss::Berg | Boss::Zane | Boss::Narella => Encounter::BanditTrio,              Boss::Matthias => Encounter::Matthias,              Boss::KeepConstruct => Encounter::KeepConstruct,              Boss::Xera => Encounter::Xera, @@ -468,6 +486,9 @@ impl FromStr for Boss {              "sab" | "sabetha" => Ok(Boss::Sabetha),              "sloth" | "slothasor" => Ok(Boss::Slothasor), +            "berg" => Ok(Boss::Berg), +            "zane" => Ok(Boss::Zane), +            "narella" => Ok(Boss::Narella),              "matthias" => Ok(Boss::Matthias),              "kc" | "keep construct" => Ok(Boss::KeepConstruct), @@ -523,6 +544,9 @@ impl Display for Boss {              Boss::Gorseval => "Gorseval",              Boss::Sabetha => "Sabetha",              Boss::Slothasor => "Slothasor", +            Boss::Berg => "Berg", +            Boss::Zane => "Zane", +            Boss::Narella => "Narella",              Boss::Matthias => "Matthias Gabrel",              Boss::KeepConstruct => "Keep Construct",              Boss::Xera => "Xera", | 
