SimulationCraft
SimulationCraft is a tool to explore combat mechanics in the popular MMO RPG World of Warcraft (tm).
 All Classes Namespaces Functions Variables Typedefs Enumerations Friends Groups Pages
anonymous_namespace{sc_mage.cpp}::buffs::arcane_missiles_t Struct Reference
Inheritance diagram for anonymous_namespace{sc_mage.cpp}::buffs::arcane_missiles_t:
buff_t noncopyable

Public Member Functions

 arcane_missiles_t (mage_t *p)
double proc_chance () const
bool trigger (int stacks, double value, double chance, timespan_t duration) override
- Public Member Functions inherited from buff_t
 buff_t (actor_pair_t q, const std::string &name, const spell_data_t *=spell_data_t::nil())
const spell_data_tdata () const
int check () const
int stack ()
bool up ()
virtual double value ()
double stack_value ()
double check_value ()
double check_stack_value ()
virtual bool freeze_stacks ()
timespan_t remains () const
timespan_t elapsed (const timespan_t &t) const
bool remains_gt (timespan_t time) const
bool remains_lt (timespan_t time) const
bool trigger (action_t *, int stacks=1, double value=DEFAULT_VALUE(), timespan_t duration=timespan_t::min())
virtual void execute (int stacks=1, double value=DEFAULT_VALUE(), timespan_t duration=timespan_t::min())
virtual void increment (int stacks=1, double value=DEFAULT_VALUE(), timespan_t duration=timespan_t::min())
virtual void decrement (int stacks=1, double value=DEFAULT_VALUE())
virtual void extend_duration (player_t *p, timespan_t seconds)
virtual void start (int stacks=1, double value=DEFAULT_VALUE(), timespan_t duration=timespan_t::min())
virtual void refresh (int stacks=0, double value=DEFAULT_VALUE(), timespan_t duration=timespan_t::min())
virtual void bump (int stacks=1, double value=DEFAULT_VALUE())
virtual void override_buff (int stacks=1, double value=DEFAULT_VALUE())
virtual bool may_react (int stacks=1)
virtual int stack_react ()
virtual void expire (timespan_t delay=timespan_t::zero())
virtual void expire_override (int, timespan_t)
virtual void predict ()
virtual void reset ()
virtual void aura_gain ()
virtual void aura_loss ()
virtual void merge (const buff_t &other_buff)
virtual void analyze ()
virtual void datacollection_begin ()
virtual void datacollection_end ()
virtual void init ()
virtual timespan_t refresh_duration (const timespan_t &new_duration) const
virtual timespan_t tick_time () const
virtual void invalidate_cache ()
virtual int total_stack ()
std::string to_str () const
const char * name () const
std::string source_name () const
int max_stack () const
rng::rng_trng ()
virtual buff_tset_duration (timespan_t duration)
virtual buff_tset_max_stack (int max_stack)
virtual buff_tset_cooldown (timespan_t duration)
virtual buff_tset_quiet (bool quiet)
virtual buff_tadd_invalidate (cache_e)

Additional Inherited Members

- Static Public Member Functions inherited from buff_t
static expr_tcreate_expression (std::string buff_name, action_t *action, const std::string &type, buff_t *static_buff=nullptr)
static double DEFAULT_VALUE ()
static buff_tfind (const std::vector< buff_t * > &, const std::string &name, player_t *source=nullptr)
static buff_tfind (sim_t *, const std::string &name)
static buff_tfind (player_t *, const std::string &name, player_t *source=nullptr)
static buff_tfind_expressable (const std::vector< buff_t * > &, const std::string &name, player_t *source=nullptr)
- Public Attributes inherited from buff_t
sim_t *const sim
player_t *const player
const item_t *const item
const std::string name_str
const spell_data_ts_data
player_t *const source
std::vector< event_t * > expiration
event_tdelay
event_texpiration_delay
cooldown_tcooldown
sc_timeline_t uptime_array
real_ppm_trppm
double default_value
bool activated
bool reactable
bool reverse
bool constant
bool quiet
bool overridden
bool can_cancel
bool requires_invalidation
double current_value
int current_stack
timespan_t buff_duration
double default_chance
std::vector< timespan_tstack_occurrence
std::vector< timespan_tstack_react_time
std::vector< event_t * > stack_react_ready_triggers
buff_refresh_behavior_e refresh_behavior
buff_refresh_duration_callback_t refresh_duration_callback
buff_stack_behavior_e stack_behavior
buff_stack_change_callback_t stack_change_callback
unsigned current_tick
timespan_t buff_period
buff_tick_time_e tick_time_behavior
buff_tick_behavior_e tick_behavior
event_ttick_event
buff_tick_callback_t tick_callback
buff_tick_time_callback_t tick_time_callback
bool tick_zero
simple_sample_data_t benefit_pct
simple_sample_data_t trigger_pct
simple_sample_data_t avg_start
simple_sample_data_t avg_refresh
simple_sample_data_t avg_expire
simple_sample_data_t avg_overflow_count
simple_sample_data_t avg_overflow_total
simple_sample_data_t uptime_pct
simple_sample_data_t start_intervals
simple_sample_data_t trigger_intervals
std::vector< buff_uptime_tstack_uptime
bool change_regen_rate
- Protected Member Functions inherited from buff_t
 buff_t (const buff_creator_basics_t &params)
- Protected Attributes inherited from buff_t
timespan_t last_start
timespan_t last_trigger
timespan_t iteration_uptime_sum
timespan_t last_benefite_update
unsigned int up_count
unsigned int down_count
unsigned int start_count
unsigned int refresh_count
unsigned int expire_count
unsigned int overflow_count
unsigned int overflow_total
int trigger_attempts
int trigger_successes
int simulation_max_stack
std::vector< cache_e > invalidate_list