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

Targetdata initializer for items. More...

#include <item_targetdata_initializer.hpp>

Public Member Functions

 item_targetdata_initializer_t (unsigned iid, util::span< const slot_e > s)
 
virtual const special_effect_tfind_effect (player_t *player) const
 
virtual void operator() (actor_target_data_t *) const =0
 

Public Attributes

unsigned item_id
 
std::vector< slot_e > slots_
 

Detailed Description

Targetdata initializer for items.

When targetdata is constructed (due to a call to player_t::get_target_data failing to find an object for the given target), all targetdata initializers in the sim are invoked. Most class specific targetdata is handled by the derived class-specific targetdata, however there are a couple of trinkets that require "generic" targetdata support. Item targetdata initializers will create the relevant debuffs/buffs needed. Note that the buff/debuff needs to be created always, since expressions for buffs/debuffs presume the buff exists or the whole sim fails to init.

See unique_gear::register_target_data_initializers() for currently supported target-based debuffs in generic items.