Skip to main content

ProcOps

Trait ProcOps 

Source
pub trait ProcOps {
Show 16 methods // Required methods fn roll_rppm(&mut self, idx: LocalRppmIdx) -> bool; fn roll_threshold( &mut self, idx: LocalThresholdIdx, increment_scale: f64, ) -> bool; fn roll_item_rppm(&mut self, item_id: u32) -> bool; fn roll_system_rppm(&mut self, driver_spell_id: u32) -> bool; fn proc_category_ready(&self, driver_spell_id: u32) -> bool; fn start_proc_category_cooldown(&mut self, driver_spell_id: u32); fn roll_enchant_rppm(&mut self, enchantment_id: u32) -> bool; fn roll_accumulating_proc( &mut self, driver_spell_id: u32, chance_per_attempt: f64, ) -> bool; fn roll_attempt_proc( &mut self, driver_spell_id: u32, chance_for_attempt: impl FnOnce(u32) -> f64, ) -> bool; fn add_proc_counter(&mut self, driver_spell_id: u32, amount: u32) -> u32; fn reset_proc_counter(&mut self, driver_spell_id: u32); fn proc_counter(&self, driver_spell_id: u32) -> u32; fn mark_proc_flags_once(&mut self, driver_spell_id: u32, flags: u32) -> bool; fn consume_proc_counter(&mut self, driver_spell_id: u32, amount: u32) -> u32; fn advance_proc_counter_by( &mut self, driver_spell_id: u32, amount: u32, threshold: u32, ) -> bool; fn advance_proc_counter( &mut self, driver_spell_id: u32, threshold: u32, ) -> bool;
}
Expand description

Deterministic proc rolls, attempt tracking, and driver counters.

Required Methods§

Source

fn roll_rppm(&mut self, idx: LocalRppmIdx) -> bool

Source

fn roll_threshold( &mut self, idx: LocalThresholdIdx, increment_scale: f64, ) -> bool

Source

fn roll_item_rppm(&mut self, item_id: u32) -> bool

Source

fn roll_system_rppm(&mut self, driver_spell_id: u32) -> bool

Source

fn proc_category_ready(&self, driver_spell_id: u32) -> bool

Source

fn start_proc_category_cooldown(&mut self, driver_spell_id: u32)

Source

fn roll_enchant_rppm(&mut self, enchantment_id: u32) -> bool

Source

fn roll_accumulating_proc( &mut self, driver_spell_id: u32, chance_per_attempt: f64, ) -> bool

Source

fn roll_attempt_proc( &mut self, driver_spell_id: u32, chance_for_attempt: impl FnOnce(u32) -> f64, ) -> bool

Source

fn add_proc_counter(&mut self, driver_spell_id: u32, amount: u32) -> u32

Source

fn reset_proc_counter(&mut self, driver_spell_id: u32)

Source

fn proc_counter(&self, driver_spell_id: u32) -> u32

Source

fn mark_proc_flags_once(&mut self, driver_spell_id: u32, flags: u32) -> bool

Source

fn consume_proc_counter(&mut self, driver_spell_id: u32, amount: u32) -> u32

Source

fn advance_proc_counter_by( &mut self, driver_spell_id: u32, amount: u32, threshold: u32, ) -> bool

Source

fn advance_proc_counter(&mut self, driver_spell_id: u32, threshold: u32) -> bool

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§