diff --git a/src/analysis/retail/evoker/devastation/modules/AplCheck/rules.tsx b/src/analysis/retail/evoker/devastation/modules/AplCheck/rules.tsx index 80a175a4278..1641c453bea 100644 --- a/src/analysis/retail/evoker/devastation/modules/AplCheck/rules.tsx +++ b/src/analysis/retail/evoker/devastation/modules/AplCheck/rules.tsx @@ -4,7 +4,7 @@ import TALENTS from 'common/TALENTS/evoker'; import RESOURCE_TYPES from 'game/RESOURCE_TYPES'; import { ResourceLink, SpellLink } from 'interface'; import { EventType } from 'parser/core/Events'; -import { Rule, tenseAlt } from 'parser/shared/metrics/apl'; +import { Rule, Tense, tenseAlt } from 'parser/shared/metrics/apl'; import * as cnd from 'parser/shared/metrics/apl/conditions'; import { avoidIfDragonRageSoon, @@ -16,6 +16,23 @@ export type Rules = { [K in keyof ReturnType]: Rule; }; +const noOvercapDescription = ( + tense: Tense | undefined, + includeEssence: boolean = true, +): JSX.Element => { + return ( + <> + you {tenseAlt(tense, <>won't, <>wouldn't)} overcap{' '} + {includeEssence && ( + <> + or + + )} + + + ); +}; + export const getRules = (info: TalentInfo) => { return { shatteringStar: shatteringStar(info), @@ -49,12 +66,7 @@ const shatteringStar = (info: TalentInfo): Rule => { ), cnd.not(cnd.hasTalent(TALENTS.ARCANE_VIGOR_TALENT)), ), - (tense) => ( - <> - you {tenseAlt(tense, <>won't, <>wouldn't)} overcap on{' '} - - - ), + (tense) => <>{noOvercapDescription(tense, false)}, ); const ssRule: Rule = { @@ -170,10 +182,8 @@ const aoeLivingFlame = (info: TalentInfo): Rule => { (tense) => ( <> you {tenseAlt(tense, <>have, <>had)}{' '} - and{' '} - {tenseAlt(tense, <>won't, <>wouldn't)} overcap{' '} - or{' '} - (AoE) + and {noOvercapDescription(tense)}{' '} + (AoE) ), ), @@ -202,9 +212,7 @@ const stBurnoutLivingFlame = (info: TalentInfo): Rule => { (tense) => ( <> you {tenseAlt(tense, <>have, <>had)} and{' '} - {tenseAlt(tense, <>won't, <>wouldn't)} overcap{' '} - or{' '} - + {noOvercapDescription(tense)} ), ),