@@ -264,7 +264,7 @@ void marksmanship( player_t* p )
264264 drst->add_action ( " volley" );
265265 drst->add_action ( " aimed_shot,if=buff.trueshot.up&buff.precise_shots.down&cooldown.black_arrow.ready|full_recharge_time<gcd+cast_time" );
266266 drst->add_action ( " trueshot,if=variable.trueshot_ready" );
267- drst->add_action ( " rapid_fire" );
267+ drst->add_action ( " rapid_fire,interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
268268 drst->add_action ( " wailing_arrow" );
269269 drst->add_action ( " multishot,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target,if=talent.aspect_of_the_hydra&!max_prio_damage&active_enemies>1&buff.precise_shots.up" );
270270 drst->add_action ( " arcane_shot,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target|max_prio_damage,if=buff.precise_shots.up" );
@@ -279,7 +279,7 @@ void marksmanship( player_t* p )
279279 draoe->add_action ( " black_arrow,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target|max_prio_damage,if=buff.precise_shots.up" );
280280 draoe->add_action ( " multishot,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target|max_prio_damage,if=buff.trick_shots.down" );
281281 draoe->add_action ( " trueshot,if=variable.trueshot_ready" );
282- draoe->add_action ( " rapid_fire,if=buff.trick_shots.remains>execute_time&(buff.bulletstorm.remains<action.aimed_shot.execute_time|talent.unload)" );
282+ draoe->add_action ( " rapid_fire,if=buff.trick_shots.remains>execute_time&(buff.bulletstorm.remains<action.aimed_shot.execute_time|talent.unload),interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
283283 draoe->add_action ( " wailing_arrow,if=!cooldown.black_arrow.ready" );
284284 draoe->add_action ( " multishot,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target|max_prio_damage,if=buff.precise_shots.up" );
285285 draoe->add_action ( " aimed_shot,target_if=max:debuff.spotters_mark.up|max_prio_damage,if=buff.trick_shots.remains>cast_time" );
@@ -292,8 +292,8 @@ void marksmanship( player_t* p )
292292 sentaoe->add_action ( " trueshot,if=variable.trueshot_ready" );
293293 sentaoe->add_action ( " moonlight_chakram,if=buff.moonlight_chakram.remains<gcd.max" );
294294 sentaoe->add_action ( " multishot,target_if=max:debuff.sentinels_mark.down,if=buff.precise_shots.up&!talent.aspect_of_the_hydra|buff.trick_shots.down" );
295- sentaoe->add_action ( " rapid_fire,target_if=max:debuff.sentinels_mark.down,if=talent.unload" );
296- sentaoe->add_action ( " rapid_fire" );
295+ sentaoe->add_action ( " rapid_fire,target_if=max:debuff.sentinels_mark.down,if=talent.unload,interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
296+ sentaoe->add_action ( " rapid_fire,interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
297297 sentaoe->add_action ( " aimed_shot,target_if=max:debuff.sentinels_mark.up|max_prio_damage,if=buff.trick_shots.remains>cast_time" );
298298 sentaoe->add_action ( " moonlight_chakram" );
299299 sentaoe->add_action ( " steady_shot" );
@@ -305,7 +305,7 @@ void marksmanship( player_t* p )
305305 sentst->add_action ( " kill_shot,target_if=max:debuff.sentinels_mark.down|max_prio_damage,if=buff.precise_shots.up" );
306306 sentst->add_action ( " multishot,target_if=max:debuff.sentinels_mark.down,if=talent.aspect_of_the_hydra&!max_prio_damage&active_enemies>1&buff.precise_shots.up" );
307307 sentst->add_action ( " arcane_shot,target_if=max:debuff.sentinels_mark.down|max_prio_damage,if=buff.precise_shots.up&(buff.trueshot.up&prev_gcd.1.aimed_shot|!buff.trueshot.up)" );
308- sentst->add_action ( " rapid_fire" );
308+ sentst->add_action ( " rapid_fire,interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
309309 sentst->add_action ( " aimed_shot,target_if=max:debuff.sentinels_mark.up|max_prio_damage" );
310310 sentst->add_action ( " moonlight_chakram" );
311311 sentst->add_action ( " steady_shot" );
@@ -358,7 +358,7 @@ void marksmanship_ptr( player_t* p )
358358 drst->add_action ( " volley" );
359359 drst->add_action ( " aimed_shot,if=buff.trueshot.up&buff.precise_shots.down&cooldown.black_arrow.ready|full_recharge_time<gcd+cast_time" );
360360 drst->add_action ( " trueshot,if=variable.trueshot_ready" );
361- drst->add_action ( " rapid_fire" );
361+ drst->add_action ( " rapid_fire,interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
362362 drst->add_action ( " wailing_arrow" );
363363 drst->add_action ( " multishot,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target,if=talent.aspect_of_the_hydra&!max_prio_damage&active_enemies>1&buff.precise_shots.up" );
364364 drst->add_action ( " arcane_shot,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target|max_prio_damage,if=buff.precise_shots.up" );
@@ -373,7 +373,7 @@ void marksmanship_ptr( player_t* p )
373373 draoe->add_action ( " black_arrow,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target|max_prio_damage,if=buff.precise_shots.up" );
374374 draoe->add_action ( " multishot,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target|max_prio_damage,if=buff.trick_shots.down" );
375375 draoe->add_action ( " trueshot,if=variable.trueshot_ready" );
376- draoe->add_action ( " rapid_fire,if=buff.trick_shots.remains>execute_time&(buff.bulletstorm.remains<action.aimed_shot.execute_time|talent.unload)" );
376+ draoe->add_action ( " rapid_fire,if=buff.trick_shots.remains>execute_time&(buff.bulletstorm.remains<action.aimed_shot.execute_time|talent.unload),interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
377377 draoe->add_action ( " wailing_arrow,if=!cooldown.black_arrow.ready" );
378378 draoe->add_action ( " multishot,target_if=max:debuff.spotters_mark.down|action.aimed_shot.in_flight_to_target|max_prio_damage,if=buff.precise_shots.up" );
379379 draoe->add_action ( " aimed_shot,target_if=max:debuff.spotters_mark.up|max_prio_damage,if=buff.trick_shots.remains>cast_time" );
@@ -386,8 +386,8 @@ void marksmanship_ptr( player_t* p )
386386 sentaoe->add_action ( " trueshot,if=variable.trueshot_ready" );
387387 sentaoe->add_action ( " moonlight_chakram,if=buff.moonlight_chakram.remains<gcd.max" );
388388 sentaoe->add_action ( " multishot,target_if=max:debuff.sentinels_mark.down,if=buff.precise_shots.up&!talent.aspect_of_the_hydra|buff.trick_shots.down" );
389- sentaoe->add_action ( " rapid_fire,target_if=max:debuff.sentinels_mark.down,if=talent.unload" );
390- sentaoe->add_action ( " rapid_fire" );
389+ sentaoe->add_action ( " rapid_fire,target_if=max:debuff.sentinels_mark.down,if=talent.unload,interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
390+ sentaoe->add_action ( " rapid_fire,interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
391391 sentaoe->add_action ( " aimed_shot,target_if=max:debuff.sentinels_mark.up|max_prio_damage,if=buff.trick_shots.remains>cast_time" );
392392 sentaoe->add_action ( " moonlight_chakram" );
393393 sentaoe->add_action ( " steady_shot" );
@@ -399,7 +399,7 @@ void marksmanship_ptr( player_t* p )
399399 sentst->add_action ( " kill_shot,target_if=max:debuff.sentinels_mark.down|max_prio_damage,if=buff.precise_shots.up" );
400400 sentst->add_action ( " multishot,target_if=max:debuff.sentinels_mark.down,if=talent.aspect_of_the_hydra&!max_prio_damage&active_enemies>1&buff.precise_shots.up" );
401401 sentst->add_action ( " arcane_shot,target_if=max:debuff.sentinels_mark.down|max_prio_damage,if=buff.precise_shots.up&(buff.trueshot.up&prev_gcd.1.aimed_shot|!buff.trueshot.up)" );
402- sentst->add_action ( " rapid_fire" );
402+ sentst->add_action ( " rapid_fire,interrupt_if=ticks_remain<2&buff.precise_shots.up&!gcd.remains,interrupt_immediate=1,interrupt_global=1 " );
403403 sentst->add_action ( " aimed_shot,target_if=max:debuff.sentinels_mark.up|max_prio_damage" );
404404 sentst->add_action ( " moonlight_chakram" );
405405 sentst->add_action ( " steady_shot" );
0 commit comments