<commit_before>import SPELLS from 'common/SPELLS';

import CoreCastEfficiency from 'Parser/Core/Modules/CastEfficiency';

class CastEfficiency extends CoreCastEfficiency {
  static CPM_ABILITIES = [
    ...CoreCastEfficiency.CPM_ABILITIES,
    {
      spell: SPELLS.STRIKE_OF_THE_WINDLORD,
      category: CastEfficiency.SPELL_CATEGORIES.ROTATIONAL,
      getCooldown: haste => 40,
    },
    {
      spell: SPELLS.FISTS_OF_FURY_CAST,
      category: CastEfficiency.SPELL_CATEGORIES.ROTATIONAL,
      getCooldown: haste => 24 /(1 + haste),
    },
    {
      spell: SPELLS.RISING_SUN_KICK,
      category: CastEfficiency.SPELL_CATEGORIES.ROTATIONAL,
      // Item - Windwalker T19 2PC Bonus: Reduces the cooldown of Rising Sun Kick by 3.0 seconds.
      // getCooldown: (combatant, haste) => (10 - (combatant.hasBuff(SPELLS.WW_TIER19_2PC.id) ? 3 : 0)) / (1 + haste),
      getCooldown: haste => 10 / (1 + haste),
    },
    {
      spell: SPELLS.WHIRLING_DRAGON_PUNCH_TALENT,
      category: CastEfficiency.SPELL_CATEGORIES.ROTATIONAL,
      getCooldown: haste => 24 / (1 + haste),
      isActive: combatant => combatant.hasTalent(SPELLS.WHIRLING_DRAGON_PUNCH_TALENT.id),
    },
    // cooldowns<commit_msg>[Windwalker] Updated Cast Efficiency<commit_after>import SPELLS from 'common/SPELLS';
import ITEMS_MONK from 'common/ITEMS_MONK';
import TALENTS_MONK from 'common/talents/TALENTS_MONK';

import CoreCastEfficiency from 'Parser/Core/Modules/CastEfficiency';

class CastEfficiency extends CoreCastEfficiency {
  static CPM_ABILITIES = [
    ...CoreCastEfficiency.CPM_ABILITIES,
    {
      spell: SPELLS.STRIKE_OF_THE_WINDLORD,
      category: CastEfficiency.SPELL_CATEGORIES.ROTATIONAL,
      // Item - The legendary head reduces SotW cooldown by 20%
      getCooldown: (haste, combatant) =>
      40 * (combatant.hasHead(ITEMS_MONK.THE_WIND_BLOWS.id) ? 0.8 : 1) * (combatant.hasBuff(TALENTS_MONK.SERENITY_TALENT.id) ? 0.5 : 1),
    },
    {
      spell: SPELLS.FISTS_OF_FURY_CAST,
      category: CastEfficiency.SPELL_CATEGORIES.ROTATIONAL,
      getCooldown: (haste, combatant) => 
      24 / (1 + haste) * (combatant.hasBuff(TALENTS_MONK.SERENITY_TALENT.id) ? 0.5 : 1),    
    },
    {
      spell: SPELLS.RISING_SUN_KICK,
      category: CastEfficiency.SPELL_CATEGORIES.ROTATIONAL,
      // Item - Windwalker T19 2PC Bonus: Reduces the cooldown of Rising Sun Kick by 3.0 seconds.
      getCooldown: (haste, combatant) =>
      (10 - (combatant.hasBuff(SPELLS.WW_TIER19_2PC.id) ? 3 : 0)) / (1 + haste) * (combatant.hasBuff(TALENTS_MONK.SERENITY_TALENT.id) ? 0.5 : 1),
    },
    {
      spell: SPELLS.WHIRLING_DRAGON_PUNCH_TALENT,
      category: CastEfficiency.SPELL_CATEGORIES.ROTATIONAL,
      getCooldown: haste => 24 / (1 + haste),
      isActive: combatant => combatant.hasTalent(SPELLS.WHIRLING_DRAGON_PUNCH_TALENT.id),
    },
    // cooldowns
{'fraction_non_alphanumeric': 0.11087792934592515, 'fraction_numerical': 0.020636586218957677, 'mean_word_length': 3.434108527131783, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 14, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2494727', 'n_tokens_mistral': 1206, 'n_tokens_neox': 1120, 'n_words': 182}