SimulationCraft
SimulationCraft is a tool to explore combat mechanics in the popular MMO RPG World of Warcraft (tm).
raid_event_t Struct Referenceabstract
Inheritance diagram for raid_event_t:
noncopyable

Public Member Functions

 raid_event_t (sim_t *, util::string_view type)
 
virtual bool filter_player (const player_t *)
 Filter players which shouldn't be added to the affected_players list.
 
void add_option (std::unique_ptr< option_t > new_option)
 
timespan_t cooldown_time ()
 
timespan_t duration_time ()
 
timespan_t next_time () const
 
timespan_t until_next () const
 
timespan_t remains () const
 Remaining duration of currently active raid event. More...
 
bool up () const
 Check if raid event is currently up.
 
double distance ()
 
double min_distance ()
 
double max_distance ()
 
void schedule ()
 
virtual void reset ()
 
void parse_options (util::string_view options_str)
 

Static Public Member Functions

static std::unique_ptr< raid_event_tcreate (sim_t *sim, util::string_view name, util::string_view options_str)
 
static void init (sim_t *)
 
static void reset (sim_t *)
 
static void combat_begin (sim_t *)
 
static void combat_end (sim_t *)
 
static double evaluate_raid_event_expression (sim_t *s, util::string_view type, util::string_view filter, bool test_filter, bool *is_constant)
 

Public Attributes

sim_tsim
 
std::string name
 
std::string type
 
int64_t num_starts
 
timespan_t first
 
timespan_t last
 
double first_pct
 
double last_pct
 
timespan_t cooldown
 
timespan_t cooldown_stddev
 
timespan_t cooldown_min
 
timespan_t cooldown_max
 
timespan_t duration
 
timespan_t duration_stddev
 
timespan_t duration_min
 
timespan_t duration_max
 
double distance_min
 
double distance_max
 
bool players_only
 
bool force_stop
 
double player_chance
 
std::string affected_role_str
 
role_e affected_role
 
std::string player_if_expr_str
 
timespan_t saved_duration
 
std::vector< player_t * > affected_players
 
std::unordered_map< size_t, std::unique_ptr< expr_t > > player_expressions
 
std::vector< std::unique_ptr< option_t > > options
 

Friends

void sc_format_to (const raid_event_t &, fmt::format_context::iterator)
 

Member Function Documentation

◆ remains()

timespan_t raid_event_t::remains ( ) const

Remaining duration of currently active raid event.

Returns timespan_t::max() if raid event is not active.