Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct ashamanes_frenzy_t : public cat_attack_t
- {
- struct ashamanes_frenzy_damage_t : public cat_attack_t
- {
- ashamanes_frenzy_damage_t( druid_t* p ) :
- cat_attack_t( "ashamanes_frenzy_dmg", p, p -> find_spell( 210723 ) )
- {
- background = dual = true;
- dot_max_stack = p -> artifact.ashamanes_frenzy.data().effectN( 2 ).base_value();
- }
- // Emulate old DoT refresh behavior.
- timespan_t calculate_dot_refresh_duration( const dot_t* d, timespan_t dur ) const override
- { return d -> time_to_next_tick() + dur; }
- };
- ashamanes_frenzy_t( druid_t* p, const std::string& options_str ) :
- cat_attack_t( "ashamanes_frenzy", p, &p -> artifact.ashamanes_frenzy.data(), options_str )
- {
- may_miss = may_parry = may_dodge = may_crit = false;
- /* Copy all the modifiers that would affect any state multipliers that
- will be inherited from this action. This is necessary because we need
- the state to be inherited for Bloodtalons. */
- ashamanes_frenzy_damage_t* damage = new ashamanes_frenzy_damage_t( p );
- snapshots_sr = damage -> snapshots_sr;
- snapshots_tf = damage -> snapshots_tf;
- razor_claws.direct = damage -> razor_claws.direct;
- razor_claws.tick = damage -> razor_claws.tick;
- tick_action = damage;
- }
- void init() override
- {
- cat_attack_t::init();
- tick_action -> direct_tick = false;
- }
- // Does not trigger primal fury.
- void trigger_primal_fury() override {}
- // Don't record data for this action.
- void record_data( action_state_t* s ) override
- { ( void ) s; assert( s -> result_amount == 0.0 ); }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement