SimulationCraft
SimulationCraft is a tool to explore combat mechanics in the popular MMO RPG World of Warcraft (tm).
effect_callbacks_t Struct Reference

Public Types

using proc_list_t = std::vector< action_callback_t * >
 
using proc_on_array_t = std::array< proc_list_t, PROC2_TYPE_MAX >
 
using proc_array_t = std::array< proc_on_array_t, PROC1_TYPE_MAX >
 

Public Member Functions

 effect_callbacks_t (sim_t *sim)
 
bool has_callback (const std::function< bool(const action_callback_t *)> cmp) const
 
void reset ()
 
void register_callback (unsigned proc_flags, unsigned proc_flags2, action_callback_t *cb)
 
void register_callback_trigger_function (unsigned driver_id, dbc_proc_callback_t::trigger_fn_type t, const dbc_proc_callback_t::trigger_fn_t &fn)
 Register a driver-specific custom trigger callback.
 
void register_callback_execute_function (unsigned driver_id, const dbc_proc_callback_t::execute_fn_t &fn)
 Register a driver-specific custom execute callback.
 
dbc_proc_callback_t::trigger_fn_t * callback_trigger_function (unsigned driver_id) const
 Get a custom driver-specific trigger callback (if it has been registered)
 
dbc_proc_callback_t::trigger_fn_type callback_trigger_function_type (unsigned driver_id) const
 Get the type of the custom driver-specific trigger callback.
 
dbc_proc_callback_t::execute_fn_t * callback_execute_function (unsigned driver_id) const
 
template<typename T >
T * get_first_of () const
 

Public Attributes

sim_tsim
 
std::vector< action_callback_t * > all_callbacks
 
proc_array_t procs