diff --git a/ui/core/components/individual_sim_ui/apl_values.ts b/ui/core/components/individual_sim_ui/apl_values.ts index 4772cae508..205d0ca6ce 100644 --- a/ui/core/components/individual_sim_ui/apl_values.ts +++ b/ui/core/components/individual_sim_ui/apl_values.ts @@ -598,6 +598,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfig, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [], }), @@ -607,6 +608,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfig, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeTypeFieldConfig('runeType', true), ], @@ -616,6 +618,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfig, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeTypeFieldConfig('runeType', false), ], @@ -625,6 +628,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfig, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeSlotFieldConfig('runeSlot'), ], @@ -634,6 +638,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfig, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeSlotFieldConfig('runeSlot'), ], @@ -643,6 +648,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfigNOTE: Returns 0 if there is a rune available', newValue: APLValueRuneCooldown.create, + includeIf: (player: Player, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeTypeFieldConfig('runeType', false), ], @@ -652,6 +658,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfigNOTE: Returns 0 if there are 2 runes available', newValue: APLValueNextRuneCooldown.create, + includeIf: (player: Player, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeTypeFieldConfig('runeType', false), ], @@ -661,6 +668,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfigNOTE: Returns 0 if rune is ready', newValue: APLValueRuneSlotCooldown.create, + includeIf: (player: Player, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeSlotFieldConfig('runeSlot'), ], @@ -670,6 +678,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfig, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeTypeFieldConfig('runeType', false), ], @@ -679,6 +688,7 @@ const valueKindFactories: {[f in NonNullable]: ValueKindConfig, isPrepull: boolean) => player.getClass() == Class.ClassDeathknight, fields: [ AplHelpers.runeSlotFieldConfig('runeSlot'), ], diff --git a/ui/deathknight/sim.ts b/ui/deathknight/sim.ts index 2a77a567c0..81f034c535 100644 --- a/ui/deathknight/sim.ts +++ b/ui/deathknight/sim.ts @@ -3,11 +3,7 @@ import { HandType, RaidBuffs } from '../core/proto/common.js'; import { PartyBuffs } from '../core/proto/common.js'; import { IndividualBuffs } from '../core/proto/common.js'; import { Debuffs } from '../core/proto/common.js'; -import { Class } from '../core/proto/common.js'; -import { Consumes } from '../core/proto/common.js'; -import { Encounter } from '../core/proto/common.js'; import { ItemSlot } from '../core/proto/common.js'; -import { MobType } from '../core/proto/common.js'; import { Spec } from '../core/proto/common.js'; import { Stat, PseudoStat } from '../core/proto/common.js'; import { TristateEffect } from '../core/proto/common.js' @@ -23,7 +19,6 @@ import * as Tooltips from '../core/constants/tooltips.js'; import * as DeathKnightInputs from './inputs.js'; import * as Presets from './presets.js'; -import { numberFieldConfig } from 'ui/core/components/individual_sim_ui/apl_helpers.js'; export class DeathknightSimUI extends IndividualSimUI { constructor(parentElem: HTMLElement, player: Player) { @@ -134,7 +129,7 @@ export class DeathknightSimUI extends IndividualSimUI { autoRotation: (player: Player): APLRotation => { const talentTree = player.getTalentTree(); - const numTargets = player.getRaid()!.sim.encounter.targets.length; + const numTargets = player.sim.encounter.targets.length; switch (talentTree) { case 0: if (player.getSpecOptions().drwPestiApply || numTargets > 1) { diff --git a/ui/hunter/sim.ts b/ui/hunter/sim.ts index 365a7b2866..93ee209712 100644 --- a/ui/hunter/sim.ts +++ b/ui/hunter/sim.ts @@ -276,7 +276,10 @@ export class HunterSimUI extends IndividualSimUI { autoRotation: (player: Player): APLRotation => { const talentTree = player.getTalentTree(); - if (talentTree == 0) { + const numTargets = player.sim.encounter.targets.length; + if (numTargets >= 4) { + return Presets.ROTATION_PRESET_AOE.rotation.rotation!; + } else if (talentTree == 0) { return Presets.ROTATION_PRESET_BM.rotation.rotation!; } else if (talentTree == 1) { return Presets.ROTATION_PRESET_MM.rotation.rotation!;