Skip to content

Commit 61f857c

Browse files
committed
[Hunter] Initial support for assisted combat
1 parent e97fc4c commit 61f857c

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

engine/class_modules/sc_hunter.cpp

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1070,6 +1070,9 @@ struct hunter_t final : public player_t
10701070
void init_scaling() override;
10711071
void init_assessors() override;
10721072
void init_action_list() override;
1073+
void init_blizzard_action_list() override;
1074+
std::string parse_assisted_combat_rule( const assisted_combat_rule_data_t& rule,
1075+
const assisted_combat_step_data_t& step ) const override;
10731076
void init_special_effects() override;
10741077
void init_finished() override;
10751078
void reset() override;
@@ -9052,6 +9055,48 @@ void hunter_t::init_action_list()
90529055
player_t::init_action_list();
90539056
}
90549057

9058+
void hunter_t::init_blizzard_action_list()
9059+
{
9060+
player_t::init_blizzard_action_list();
9061+
9062+
action_priority_list_t* precombat = get_action_priority_list( "precombat" );
9063+
switch ( specialization() )
9064+
{
9065+
case HUNTER_MARKSMANSHIP:
9066+
precombat->add_action( "summon_pet,if=talent.unbreakable_bond" );
9067+
break;
9068+
default:
9069+
precombat->add_action( "summon_pet" );
9070+
break;
9071+
}
9072+
9073+
9074+
action_priority_list_t* default_ = get_action_priority_list( "default" );
9075+
default_->add_action( specialization() == HUNTER_SURVIVAL ? "auto_attack" : "auto_shot" );
9076+
9077+
action_priority_list_t* cooldowns = get_action_priority_list( "cooldowns" );
9078+
switch ( specialization() )
9079+
{
9080+
case HUNTER_BEAST_MASTERY:
9081+
cooldowns->add_action( "call_of_the_wild" );
9082+
break;
9083+
case HUNTER_MARKSMANSHIP:
9084+
cooldowns->add_action( "trueshot" );
9085+
break;
9086+
case HUNTER_SURVIVAL:
9087+
cooldowns->add_action( "coordinated_assault" );
9088+
break;
9089+
default:
9090+
break;
9091+
}
9092+
}
9093+
9094+
std::string hunter_t::parse_assisted_combat_rule( const assisted_combat_rule_data_t& rule,
9095+
const assisted_combat_step_data_t& step ) const
9096+
{
9097+
return player_t::parse_assisted_combat_rule( rule, step );
9098+
}
9099+
90559100
void hunter_t::init_special_effects()
90569101
{
90579102
player_t::init_special_effects();

0 commit comments

Comments
 (0)