aboutsummaryrefslogtreecommitdiff
path: root/src/analyzers/fractals.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/analyzers/fractals.rs')
-rw-r--r--src/analyzers/fractals.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/analyzers/fractals.rs b/src/analyzers/fractals.rs
index e3ebfc5..910b182 100644
--- a/src/analyzers/fractals.rs
+++ b/src/analyzers/fractals.rs
@@ -4,6 +4,7 @@ use crate::{
Log,
};
+/// Health threshold for Skorvald to be detected as Challenge Mote.
pub const SKORVALD_CM_HEALTH: u64 = 5_551_340;
/// Analyzer for the first boss of 100 CM, Skorvald.
@@ -15,6 +16,10 @@ pub struct Skorvald<'log> {
}
impl<'log> Skorvald<'log> {
+ /// Create a new [`Skorvald`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
Skorvald { log }
}
@@ -36,12 +41,19 @@ impl<'log> Analyzer for Skorvald<'log> {
}
}
+/// Analyzer for fractals that don't require special logic.
+///
+/// This is used for Artsariiv, Arkk, MAMA, Siax and Ensolyss.
#[derive(Debug, Clone, Copy)]
pub struct GenericFractal<'log> {
log: &'log Log,
}
impl<'log> GenericFractal<'log> {
+ /// Create a new [`GenericFractal`] analyzer for the given log.
+ ///
+ /// **Do not** use this method unless you know what you are doing. Instead, rely on
+ /// [`Log::analyzer`]!
pub fn new(log: &'log Log) -> Self {
GenericFractal { log }
}
@@ -53,6 +65,9 @@ impl<'log> Analyzer for GenericFractal<'log> {
}
fn is_cm(&self) -> bool {
+ // Besides Skorvald normal mode, we only get logs for the challenge mote encounters (at
+ // least, only for those we'll use this analyzer). So we can safely return true here in any
+ // case.
true
}