SimulationCraft
SimulationCraft is a tool to explore combat mechanics in the popular MMO RPG World of Warcraft (tm).
covenant::covenant_state_t Class Reference

Public Member Functions

 covenant_state_t (const player_t *player)
 
bool enabled () const
 Covenant-related functionality enabled.
 
covenant_e type () const
 Current covenant type.
 
void set_type (covenant_e covenant)
 
void add_conduit (unsigned conduit_id, unsigned rank)
 
void add_soulbind (unsigned spell_id)
 
void set_soulbind_id (const std::string &str)
 
unsigned id () const
 Current covenant id.
 
unsigned renown () const
 
bool parse_covenant (sim_t *sim, util::string_view name, util::string_view value)
 Parse player-scope "covenant" option.
 
bool parse_soulbind (sim_t *sim, util::string_view name, util::string_view value)
 Parse player-scope "soulbind" option.
 
bool parse_soulbind_clear (sim_t *sim, util::string_view name, util::string_view value)
 
bool parse_renown (sim_t *sim, util::string_view name, util::string_view value)
 Parse player-scope "renown" option.
 
bool is_conduit_socket_empowered (unsigned soulbind_id, unsigned tier, unsigned ui_order)
 
void set_renown_level (unsigned renown_level)
 Sets renown level and looks up renown abilities based on the level.
 
const spell_data_tget_covenant_ability (util::string_view name) const
 Retrieve covenant ability spell data. More...
 
const spell_data_tget_soulbind_ability (util::string_view name, bool tokenized=false) const
 Retrieve soulbind ability spell data. More...
 
conduit_data_t get_conduit_ability (util::string_view name, bool tokenized=false) const
 Retrieve conduit ability data. More...
 
std::unique_ptr< expr_tcreate_expression (util::span< const util::string_view > expr_str) const
 Create essence-related expressions.
 
report::sc_html_streamgenerate_report (report::sc_html_stream &root) const
 HTML report covenant-related information generator.
 
void check_conduits (util::string_view tier_name, unsigned max_conduit_rank) const
 Conduit checking helper function for default profile generation.
 
std::string soulbind_option_str () const
 Option string for the soulbinds on this actor.
 
std::string covenant_option_str () const
 Option string for covenant of this actor.
 
void copy_state (const std::unique_ptr< covenant_state_t > &other)
 Clone state from another actor.
 
void register_options (player_t *player)
 Register player-scope options.
 
unsigned get_covenant_ability_spell_id (bool generic=false) const
 Returns the spell_id of the covenant class ability or the generic ability as determined via the __covenant_ability_data dbc table. More...
 
const std::vector< unsigned > & soulbind_spells () const
 List of soulbind spells.
 
const std::vector< unsigned > & renown_spells () const
 List of renown spells.
 

Public Attributes

dbc_proc_callback_tcast_callback = nullptr
 Callback for handling soulbinds that proc when covenant class ability is used.
 

Member Function Documentation

◆ get_conduit_ability()

conduit_data_t covenant::covenant_state_t::get_conduit_ability ( util::string_view  name,
bool  tokenized = false 
) const

Retrieve conduit ability data.

Returns an empty conduit object (with "not found" spell data), if the conduit is not found on the actor.

◆ get_covenant_ability()

const spell_data_t * covenant::covenant_state_t::get_covenant_ability ( util::string_view  name) const

Retrieve covenant ability spell data.

Returns spell_data_t::not_found if covenant ability is not enabled on the actor. Returns spell_data_t::nil if covenant ability cannot be found from client data.

◆ get_covenant_ability_spell_id()

unsigned covenant::covenant_state_t::get_covenant_ability_spell_id ( bool  generic = false) const

Returns the spell_id of the covenant class ability or the generic ability as determined via the __covenant_ability_data dbc table.

Will need to be converted into a vector if multiple class abilities are added in later.

◆ get_soulbind_ability()

const spell_data_t * covenant::covenant_state_t::get_soulbind_ability ( util::string_view  name,
bool  tokenized = false 
) const

Retrieve soulbind ability spell data.

Returns spell_data_t::not_found if soulbind ability is not enabled on the actor. Returns spell_data_t::nil if soulbind ability cannot be found from client data.