diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/event.rs | 4 | ||||
| -rw-r--r-- | src/lib.rs | 3 | ||||
| -rw-r--r-- | src/raw/mod.rs | 6 | ||||
| -rw-r--r-- | src/raw/types.rs | 3 | ||||
| -rw-r--r-- | src/statistics/boon.rs | 3 | ||||
| -rw-r--r-- | src/statistics/gamedata.rs | 3 | ||||
| -rw-r--r-- | src/statistics/trackers.rs | 13 | 
7 files changed, 20 insertions, 15 deletions
| diff --git a/src/event.rs b/src/event.rs index 0b28147..02f4686 100644 --- a/src/event.rs +++ b/src/event.rs @@ -264,7 +264,9 @@ fn check_damage(raw_event: &raw::CbtEvent) -> Option<EventKind> {              damage: raw_event.value,              result: raw_event.result,          }) -    } else if raw_event.buff == 1 && raw_event.buff_dmg != 0 && raw_event.dst_agent != 0 +    } else if raw_event.buff == 1 +        && raw_event.buff_dmg != 0 +        && raw_event.dst_agent != 0          && raw_event.value == 0      {          Some(EventKind::ConditionTick { @@ -275,7 +275,8 @@ fn set_agent_masters(data: &raw::Evtc, agents: &mut [Agent]) -> Result<(), EvtcE          if event.src_master_instid != 0 {              let mut master_addr = None;              for agent in &*agents { -                if agent.instance_id == event.src_master_instid && agent.first_aware < event.time +                if agent.instance_id == event.src_master_instid +                    && agent.first_aware < event.time                      && event.time < agent.last_aware                  {                      master_addr = Some(agent.addr); diff --git a/src/raw/mod.rs b/src/raw/mod.rs index 4b32955..7cbe483 100644 --- a/src/raw/mod.rs +++ b/src/raw/mod.rs @@ -6,8 +6,10 @@  //! functions whenever possible.  mod types; -pub use self::types::{Agent, CbtActivation, CbtBuffRemove, CbtCustomSkill, CbtEvent, CbtResult, -                      CbtStateChange, Language, Skill, IFF}; +pub use self::types::{ +    Agent, CbtActivation, CbtBuffRemove, CbtCustomSkill, CbtEvent, CbtResult, CbtStateChange, +    Language, Skill, IFF, +};  pub mod parser; diff --git a/src/raw/types.rs b/src/raw/types.rs index 9096a32..e3a80af 100644 --- a/src/raw/types.rs +++ b/src/raw/types.rs @@ -291,7 +291,8 @@ impl Skill {      ///      /// Returns `None` if the name is not valid UTF-8.      pub fn name_string(&self) -> Option<String> { -        let bytes = self.name +        let bytes = self +            .name              .iter()              .cloned()              .take_while(|b| *b != 0) diff --git a/src/statistics/boon.rs b/src/statistics/boon.rs index 6378d50..425f4a5 100644 --- a/src/statistics/boon.rs +++ b/src/statistics/boon.rs @@ -116,7 +116,8 @@ impl BoonQueue {              }              BoonType::Intensity => { -                self.queue = self.queue +                self.queue = self +                    .queue                      .iter()                      .cloned()                      .filter(|v| *v > duration) diff --git a/src/statistics/gamedata.rs b/src/statistics/gamedata.rs index a6dbf15..73f2780 100644 --- a/src/statistics/gamedata.rs +++ b/src/statistics/gamedata.rs @@ -37,11 +37,9 @@ pub static BOONS: &[Boon] = &[      Boon(719, "Swiftness", 9, BoonType::Duration),      Boon(1187, "Quickness", 5, BoonType::Duration),      Boon(726, "Vigor", 5, BoonType::Duration), -      // Intensity based      Boon(740, "Might", 25, BoonType::Intensity),      Boon(1122, "Stability", 25, BoonType::Intensity), -      // Standard conditions.      // Duration based      Boon(720, "Blinded", 5, BoonType::Duration), @@ -51,7 +49,6 @@ pub static BOONS: &[Boon] = &[      Boon(727, "Immobile", 3, BoonType::Duration),      Boon(26766, "Slow", 3, BoonType::Duration),      Boon(742, "Weakness", 3, BoonType::Duration), -      // Intensity based      Boon(736, "Bleeding", 1500, BoonType::Intensity),      Boon(737, "Burning", 1500, BoonType::Intensity), diff --git a/src/statistics/trackers.rs b/src/statistics/trackers.rs index b64e586..2783285 100644 --- a/src/statistics/trackers.rs +++ b/src/statistics/trackers.rs @@ -272,7 +272,8 @@ impl BoonTracker {          for (agent, queues) in &self.boon_queues {              for (buff_id, queue) in queues {                  let current_stacks = queue.current_stacks(); -                let area = self.boon_areas +                let area = self +                    .boon_areas                      .entry(*agent)                      .or_insert_with(Default::default)                      .entry(*buff_id) @@ -283,7 +284,8 @@ impl BoonTracker {      }      fn update_next_update(&mut self) { -        let next_update = self.boon_queues +        let next_update = self +            .boon_queues              .values()              .flat_map(HashMap::values)              .map(BoonQueue::next_update) @@ -301,7 +303,8 @@ impl BoonTracker {      /// * `buff_id` - The buff (or condition) id.      fn get_queue(&mut self, agent: u64, buff_id: u16) -> Option<&mut BoonQueue> {          use std::collections::hash_map::Entry; -        let mut entry = self.boon_queues +        let mut entry = self +            .boon_queues              .entry(agent)              .or_insert_with(Default::default)              .entry(buff_id); @@ -310,15 +313,13 @@ impl BoonTracker {              Entry::Occupied(e) => Some(e.into_mut()),              // Queue needs to be created, but only if we know about that boon.              Entry::Vacant(e) => { -                let boon_queue = gamedata::get_boon(buff_id) -                    .map(gamedata::Boon::create_queue); +                let boon_queue = gamedata::get_boon(buff_id).map(gamedata::Boon::create_queue);                  if let Some(queue) = boon_queue {                      Some(e.insert(queue))                  } else {                      None                  }              } -          }      }  } | 
