File tree Expand file tree Collapse file tree
engine/class_modules/warlock Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -310,8 +310,16 @@ using namespace helpers;
310310 {
311311 if ( p ()->jackpot_demonology_rng ->trigger () )
312312 {
313- p ()->warlock_pet_list .greater_dreadstalkers .spawn ( p ()->tier .greater_dreadstalker ->duration (), 1u );
313+ auto dogs = p ()->warlock_pet_list .greater_dreadstalkers .spawn ( p ()->tier .greater_dreadstalker ->duration (), 1u );
314+
315+ for ( auto d : dogs )
316+ {
317+ if ( d->is_active () && p ()->talents .dread_calling .ok () && !d->buffs .dread_calling ->check () )
318+ d->buffs .dread_calling ->trigger ( 1 , p ()->buffs .dread_calling ->check_stack_value () );
319+ }
320+
314321 p ()->procs .jackpot_demonology ->occur ();
322+ p ()->buffs .dread_calling ->expire ();
315323 }
316324 }
317325
@@ -3260,8 +3268,16 @@ using namespace helpers;
32603268
32613269 if ( active_2pc ( TWW2 ) )
32623270 {
3263- p ()->warlock_pet_list .greater_dreadstalkers .spawn ( p ()->tier .greater_dreadstalker ->duration (), 1u );
3271+ auto dogs = p ()->warlock_pet_list .greater_dreadstalkers .spawn ( p ()->tier .greater_dreadstalker ->duration (), 1u );
3272+
3273+ for ( auto d : dogs )
3274+ {
3275+ if ( d->is_active () && p ()->talents .dread_calling .ok () && !d->buffs .dread_calling ->check () )
3276+ d->buffs .dread_calling ->trigger ( 1 , p ()->buffs .dread_calling ->check_stack_value () );
3277+ }
3278+
32643279 p ()->procs .jackpot_demonology ->occur ();
3280+ p ()->buffs .dread_calling ->expire ();
32653281 }
32663282
32673283 // Last tested 2021-07-13
Original file line number Diff line number Diff line change @@ -163,7 +163,7 @@ double warlock_pet_t::composite_player_multiplier( school_e school ) const
163163
164164 m *= 1.0 + buffs.grimoire_of_service ->check_value ();
165165
166- if ( pet_type == PET_DREADSTALKER && o ()->talents .dread_calling .ok () )
166+ if ( ( pet_type == PET_DREADSTALKER || pet_type == PET_FELHUNTER ) && o ()->talents .dread_calling .ok () )
167167 m *= 1.0 + buffs.dread_calling ->check_value ();
168168
169169 if ( o ()->talents .the_expendables .ok () )
@@ -1795,19 +1795,13 @@ void greater_dreadstalker_t::demise()
17951795
17961796double greater_dreadstalker_t::composite_player_multiplier ( school_e school ) const
17971797{
1798- double m = warlock_pet_t ::composite_player_multiplier ( school );
1798+ double m = dreadstalker_t ::composite_player_multiplier ( school );
17991799
18001800 m *= buffs.demonic_hunger ->check_value ();
18011801
18021802 return m;
18031803}
18041804
1805- double greater_dreadstalker_t::composite_melee_crit_chance () const
1806- { return warlock_pet_t::composite_melee_crit_chance (); }
1807-
1808- double greater_dreadstalker_t::composite_spell_crit_chance () const
1809- { return warlock_pet_t::composite_spell_crit_chance (); }
1810-
18111805// / Greater Dreadstalker End
18121806
18131807} // namespace demonology
Original file line number Diff line number Diff line change @@ -461,8 +461,6 @@ struct greater_dreadstalker_t : public dreadstalker_t
461461 void arise () override ;
462462 void demise () override ;
463463 double composite_player_multiplier ( school_e ) const override ;
464- double composite_melee_crit_chance () const override ;
465- double composite_spell_crit_chance () const override ;
466464};
467465} // namespace demonology
468466
You can’t perform that action at this time.
0 commit comments