Esempio n. 1
0
 /// <summary>
 /// Smashes a target for 150% weapon damage plus 132-133 and weakens their defenses,
 /// allowing your attacks to entirely bypass their armor for 6 sec.
 /// <para>DPSWarrChar.Talents: Sudden Death [MeleeHits reset cooldown, (3*Pts)% Chance]</para>
 /// <para>Glyphs: Colossus Smash [Refreshes Sunder Armor on target]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public ColossusSmash(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.ColossusSmash;
     ReqMeleeWeap = ReqMeleeRange = StanceOkArms = StanceOkFury = true;
     RageCost = 20f;
     CD = 20f;
     DamageBase = DamageBaseBonus + DPSWarrChar.CombatFactors.AvgMHWeaponDmgUnhasted * DamageMultiplier;
     UseReact = true;
     //
     Initialize();
 }
Esempio n. 2
0
 /// <summary>
 /// Grants a (16+2*Mastery)% chance for your melee attacks to instantly trigger
 /// an additional melee attack for 100% normal damage. Each point of Mastery
 /// increases this chance by 2%.
 /// <para>Talents: Passive Arms Benefit</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public StrikesOfOpportunity(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     ReqMeleeRange = ReqMeleeWeap = true;
     StanceOkArms  = true;
     DamageBase    = DPSWarrChar.CombatFactors.AvgMHWeaponDmgUnhasted * DamageModifier;
     RageCost      = -1f;
     GCDTime       = 0f;
     UsesGCD       = false;
     //
     Initialize();
 }
Esempio n. 3
0
 /// <summary>
 /// Attempt to finish off a wounded foe, causing (10+AP*0.437) physical damage and
 /// consumes up to 20 additional rage to deal up to (AP*0.874-1) additional damage.
 /// Only usable on enemies that have less than 20% health.
 /// <para>Talents: Executioner [Exec procs Haste], Sudden Death [Keep 5*Pts Rage After Use]</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Execute(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.ExecuteSpam;
     ReqMeleeWeap = ReqMeleeRange = true;
     RageCost     = 10f;
     DamageBonus  = 1f + DPSWarrChar.StatS.BonusExecuteDamageMultiplier;
     FreeRage     = 0f;
     StanceOkFury = StanceOkArms = true;
     //
     Initialize();
 }
Esempio n. 4
0
 /// <summary>
 /// Smashes a target for 150% weapon damage plus 132-133 and weakens their defenses,
 /// allowing your attacks to entirely bypass their armor for 6 sec.
 /// <para>DPSWarrChar.Talents: Sudden Death [MeleeHits reset cooldown, (3*Pts)% Chance]</para>
 /// <para>Glyphs: Colossus Smash [Refreshes Sunder Armor on target]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public ColossusSmash(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.ColossusSmash;
     ReqMeleeWeap = ReqMeleeRange = StanceOkArms = StanceOkFury = true;
     RageCost     = 20f;
     CD           = 20f;
     DamageBase   = DamageBaseBonus + DPSWarrChar.CombatFactors.AvgMHWeaponDmgUnhasted * DamageMultiplier;
     UseReact     = true;
     //
     Initialize();
 }
Esempio n. 5
0
 /// <summary>
 /// Instant, 1 min Cd, 30 yd, Melee Weapon (Any)
 /// <para>Throws your weapon at the enemy causing 12+(AP*0.5) damage (based on attack power). This ability causes high threat.</para>
 /// <para>DPSWarrChar.Talents: Gag Order [(50*Pts)% Chance to Silence Target for 3 sec, -(15*Pts) sec Cd]</para>
 /// <para>Glyphs: Heroic Throw [Applies a Stack of Sunder Armor]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public HeroicThrow(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     //AbilIterater = (int)CalculationOptionsDPSWarr.Maintenances.HeroicThrow_;
     ReqMeleeWeap = ReqMeleeRange = StanceOkFury = StanceOkArms = StanceOkDef = true;
     DamageBase   = 12f + DPSWarrChar.StatS.AttackPower * 0.50f;
     CD           = 60f - DPSWarrChar.Talents.GagOrder * 15f; // In Seconds
     RageCost     = -1f;                                      // Free
     IsMaint      = true;
     //
     Initialize();
 }
Esempio n. 6
0
 /// <summary>
 /// A vicious strike that deals 165% weapon damage plus 513 and wounds the
 /// target, reducing the effectiveness of any healing received by 10% for 10 sec.
 /// <para>DPSWarrChar.Talents: none</para>
 /// <para>Glyphs: Glyph of Mortal Strike [+10% Dmg]</para>
 /// <para>Sets: T8 4P [+Crit %]</para>
 /// </summary>
 public MortalStrike(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater    = (int)Maintenance.MortalStrike;
     ReqMeleeWeap    = ReqMeleeRange = StanceOkArms = true;
     DamageBase      = DPSWarrChar.CombatFactors.NormalizedMHWeaponDmg * DamageMultiplier + DamageBaseBonus;
     DamageBonus     = (1f + DPSWarrChar.StatS.BonusMortalStrikeDamageMultiplier);
     CD              = 4.5f; // In Seconds
     RageCost        = 20f;
     BonusCritChance = DPSWarrChar.Talents.Cruelty * 0.05f;
     //
     Initialize();
 }
Esempio n. 7
0
 // Constructors
 public WhiteAttacks(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //Char = character;
     //StatS = stats;
     //Talents = Char.WarriorTalents == null ? new WarriorTalents() : Char.WarriorTalents;
     //DPSWarrChar.CombatFactors = cf;
     //CalcOpts = calcOpts;
     //BossOpts = bossOpts;
     MHAtkTable = new AttackTable(DPSWarrChar.Char, DPSWarrChar.StatS, DPSWarrChar.CombatFactors, DPSWarrChar.BossOpts, true, false, false, false);
     OHAtkTable = new AttackTable(DPSWarrChar.Char, DPSWarrChar.StatS, DPSWarrChar.CombatFactors, DPSWarrChar.BossOpts, false, false, false, false);
     //
     SlamActsOverDurO20 = SlamActsOverDurU20 = 0f;
 }
Esempio n. 8
0
 /// <summary>
 /// A vicious strike that deals 165% weapon damage plus 513 and wounds the
 /// target, reducing the effectiveness of any healing received by 10% for 10 sec.
 /// <para>DPSWarrChar.Talents: none</para>
 /// <para>Glyphs: Glyph of Mortal Strike [+10% Dmg]</para>
 /// <para>Sets: T8 4P [+Crit %]</para>
 /// </summary>
 public MortalStrike(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.MortalStrike;
     ReqMeleeWeap = ReqMeleeRange = StanceOkArms = true;
     DamageBase = DPSWarrChar.CombatFactors.NormalizedMHWeaponDmg * DamageMultiplier + DamageBaseBonus;
     DamageBonus = (1f + DPSWarrChar.StatS.BonusMortalStrikeDamageMultiplier);
     CD = 4.5f; // In Seconds
     RageCost = 20f;
     BonusCritChance = DPSWarrChar.Talents.Cruelty * 0.05f;
     //
     Initialize();
 }
Esempio n. 9
0
 /// <summary>
 /// Instant, No Cd, No Rage, Melee Range, (Any)
 /// Instantly attack the target causing (AP*56/100) damage and healing you for 20% of your
 /// maximum health. Can only be used within 20 sec after you kill an enemy that yields
 /// experience or honor.
 /// <para>DPSWarrChar.Talents: </para>
 /// <para>Glyphs:
 /// Glyph of Victory Rush [Increases the total healing provided by your Victory Rush by 50%],
 /// Glyph of Enduring Victory [+5 sec to length before ability wears off]
 /// </para>
 /// <para>Sets: </para>
 /// </summary>
 public VictoryRush(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.VictoryRush;
     ReqMeleeWeap = ReqMeleeRange = true;
     StanceOkFury = StanceOkArms = StanceOkDef = true;
     RageCost     = -1f;
     //
     DamageBase  = DPSWarrChar.StatS.AttackPower * 56f / 100f;
     DamageBonus = 1f + DPSWarrChar.StatS.BonusVictoryRushDamageMultiplier;
     HealingBase = DPSWarrChar.StatS.Health * 0.20f * (1f + (DPSWarrChar.Talents.GlyphOfVictoryRush ? 0.50f : 0f)); // 20% of Max Health Restored
     //
     Initialize();
     MHAtkTable = DPSWarrChar.Whiteattacks.MHAtkTable;
 }
Esempio n. 10
0
 /// <summary>
 /// An attack that instantly deals (8+AP*0.60) physical damage. A good attack for moments of excess rage.
 /// <para>DPSWarrChar.Talents: Improved Heroic Strike [-(1*Pts) rage cost], Incite [+(5*Pts)% crit chance]</para>
 /// <para>Glyphs: Glyph of Heroic Strike [+10 rage on crits]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public HeroicStrike(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar; //Char = c; StatS = s; CombatFactors = cf; Whiteattacks = wa; CalcOpts = co; BossOpts = bo;
     //
     AbilIterater    = (int)Maintenance.HeroicStrike;
     ReqMeleeWeap    = ReqMeleeRange = true;
     StanceOkFury    = StanceOkArms = StanceOkDef = true;
     CD              = 3f * (1f - dpswarrchar.StatS.HeroicStrikeCleaveCooldownReduction); // In Seconds
     RageCost        = 30f;
     DamageBase      = 8f + DPSWarrChar.StatS.AttackPower * 0.60f;
     DamageBonus     = 1f + DPSWarrChar.StatS.BonusHeroicStrikeDamageMultiplier;
     BonusCritChance = DPSWarrChar.Talents.Incite * 0.05f;
     UsesGCD         = false;
     //
     Initialize();
 }
Esempio n. 11
0
 /// <summary>
 /// A sweeping attack that strikes the target and a nearby ally, dealing (6 + $ap * 0.45) physical damage.
 /// <para>DPSWarrChar.Talents: Improved Cleave [+(40*Pts)% Damage], Incite [+(5*Pts)% Crit Perc]</para>
 /// <para>Glyphs: Glyph of Cleaving [+1 targets hit]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Cleave(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar; //Char = c; StatS = s; CombatFactors = cf; Whiteattacks = wa; CalcOpts = co; BossOpts = bo;
     //
     AbilIterater = (int)Maintenance.Cleave;
     ReqMeleeWeap = ReqMeleeRange = ReqMultiTargs = true;
     StanceOkFury = StanceOkArms = StanceOkDef = true;
     CD           = 3f * (1f - dpswarrchar.StatS.HeroicStrikeCleaveCooldownReduction); // In Seconds
     RageCost     = 30f;
     Targets      = 2f + (DPSWarrChar.Talents.GlyphOfCleaving ? 1f : 0f);
     DamageBase   = 6f + DPSWarrChar.StatS.AttackPower * 0.45f;
     DamageBonus  = 1f + DPSWarrChar.StatS.BonusCleaveDamageMultiplier;
     UsesGCD      = false;
     //
     Initialize();
 }
Esempio n. 12
0
 /// <summary>
 /// In a whirlwind of steel you attack all enemies within 8 yards,
 /// causing 65% weapon damage from both melee weapons to each enemy.
 /// <para>DPSWarrChar.Talents: Improved Whirlwind [+(10*Pts)% Damage], Unending Fury [+(2*Pts)% Damage]</para>
 /// <para>Glyphs: Glyph of Whirlwind [-2 sec Cooldown]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Whirlwind(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar; //Char = c; StatS = s; CombatFactors = cf; Whiteattacks = wa; CalcOpts = co; BossOpts = bo;
     //
     AbilIterater = (int)Maintenance.Whirlwind;
     ReqMeleeWeap = ReqMeleeRange = true;
     StanceOkFury = true;
     SwingsOffHand = true;
     MaxRange = 8f; // In Yards
     Targets = 10f;
     CD = 10f; // In Seconds
     RageCost = 25f;
     DamageBase = (DPSWarrChar.CombatFactors.NormalizedMHWeaponDmg + DPSWarrChar.CombatFactors.NormalizedOHWeaponDmg) * DamageMultiplier;
     DamageBonus = 1f + DPSWarrChar.StatS.BonusWhirlwindDamageMultiplier;
     //
     Initialize();
 }
Esempio n. 13
0
 /// <summary>
 /// In a whirlwind of steel you attack all enemies within 8 yards,
 /// causing 65% weapon damage from both melee weapons to each enemy.
 /// <para>DPSWarrChar.Talents: Improved Whirlwind [+(10*Pts)% Damage], Unending Fury [+(2*Pts)% Damage]</para>
 /// <para>Glyphs: Glyph of Whirlwind [-2 sec Cooldown]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Whirlwind(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar; //Char = c; StatS = s; CombatFactors = cf; Whiteattacks = wa; CalcOpts = co; BossOpts = bo;
     //
     AbilIterater  = (int)Maintenance.Whirlwind;
     ReqMeleeWeap  = ReqMeleeRange = true;
     StanceOkFury  = true;
     SwingsOffHand = true;
     MaxRange      = 8f;  // In Yards
     Targets       = 10f;
     CD            = 10f; // In Seconds
     RageCost      = 25f;
     DamageBase    = (DPSWarrChar.CombatFactors.NormalizedMHWeaponDmg + DPSWarrChar.CombatFactors.NormalizedOHWeaponDmg) * DamageMultiplier;
     DamageBonus   = 1f + DPSWarrChar.StatS.BonusWhirlwindDamageMultiplier;
     //
     Initialize();
 }
Esempio n. 14
0
 /// <summary>
 /// Wounds the target causing them to bleed for 525 damage plus an additional (0.25*6*((MWB+mwb)/2+AP/14*MWS)) (based on weapon damage) over 15 sec.
 /// <para>DPSWarrChar.Talents: Improved Rend [+(10*Pts)% Bleed Damage], Trauma [+(15*Pts)% Bleed Damage]</para>
 /// <para>Glyphs: Glyph of Rending [+2 damage ticks]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Rend(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater  = (int)Maintenance.Rend;
     ReqMeleeWeap  = true;
     ReqMeleeRange = true;
     Duration      = 15f; // In Seconds
     RageCost      = 10f;
     Targets       = DPSWarrChar.Talents.BloodAndThunder > 0 ? DPSWarrChar.Talents.BloodAndThunder * 0.50f * 10f : 1f;
     CD            = Duration + 3f;
     TimeBtwnTicks = 3f; // In Seconds
     StanceOkArms  = StanceOkDef = true;
     DamageBase    = DamageBaseBonus;
     //
     Initialize();
 }
Esempio n. 15
0
 /// <summary>
 /// Instantly attack the target causing [AP*80/100] damage. In addition, the next 3 successful melee
 /// attacks will restore 0.5% health. This effect lasts 8 sec. Damage is based on your attack power.
 /// <para>DPSWarrChar.Talents: Bloodthirst (Requires talent), Unending Fury [+(2*Pts)% Damage]</para>
 /// <para>Glyphs: Glyph of Bloody Healing [+40% from healing effect]</para>
 /// <para>Glyphs: Glyph of Bloodthirst [+10% damage]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Bloodthirst(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar; //Char = c; StatS = s; CombatFactors = cf; Whiteattacks = wa; CalcOpts = co; BossOpts = bo;
     //
     AbilIterater = (int)Maintenance.Bloodthirst;
     ReqMeleeWeap = ReqMeleeRange = true;
     StanceOkFury = true;
     CD           = 3f; // In Seconds
     //Duration = 8f;
     RageCost        = 20f;
     BonusCritChance = DPSWarrChar.Talents.Cruelty * 0.05f;
     DamageBase      = DPSWarrChar.StatS.AttackPower * 0.8f;
     DamageBonus     = 1f + DPSWarrChar.StatS.BonusBloodthirstDamageMultiplier;
     HealingBase     = DPSWarrChar.StatS.Health * 0.005f * 3f;
     HealingBonus    = 1f + (DPSWarrChar.Talents.GlyphOfBloodyHealing ? 0.4f : 0f);
     //
     Initialize();
 }
Esempio n. 16
0
 /// <summary>
 /// Your critical strikes cause the opponent to bleed, dealing (16*Pts)% of your 
 /// melee weapon's average damage over 6 sec.
 /// <para>DPSWarrChar.Talents: Deep Wounds (Requires Talent) [(16*Pts)% damage dealt]</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public DeepWounds(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     ReqTalent = true;
     Talent2ChksValue = DPSWarrChar.Talents.DeepWounds;
     ReqMeleeWeap = true;
     ReqMeleeRange = true;
     CanCrit = false;
     Duration = 6f; // In Seconds
     TimeBtwnTicks = 1f; // In Seconds
     StanceOkFury = StanceOkArms = StanceOkDef = true;
     mhActivates = ohActivates = 0f;
     UseHitTable = false;
     UsesGCD = false;
     //
     Initialize();
 }
Esempio n. 17
0
 /// <summary>
 /// A mighty blow that deals 120% weapon damage from both melee weapons. Can only be used while Enraged.
 /// <para>DPSWarrChar.Talents: none</para>
 /// <para>Glyphs: RagingBlow [+5% Crit Chance]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public RagingBlow(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar; //Char = c; StatS = s; CombatFactors = cf; Whiteattacks = wa; CalcOpts = co; BossOpts = bo;
     //
     ReqTalent        = true;
     Talent2ChksValue = DPSWarrChar.Talents.RagingBlow;
     AbilIterater     = (int)Maintenance.RagingBlow;
     ReqMeleeWeap     = ReqMeleeRange = true;
     CD              = 6f; // In Seconds
     RageCost        = 20f;
     StanceOkFury    = true;
     SwingsOffHand   = true;
     BonusCritChance = DPSWarrChar.Talents.GlyphOfRagingBlow ? 0.05f : 0f;
     DamageBonus     = 1f + DPSWarrChar.StatS.BonusRagingBlowDamageMultiplier;
     DamageBonus    *= 1f + (2f * 0.056f + 0.0560f * StatConversion.GetMasteryFromRating(DPSWarrChar.StatS.MasteryRating, CharacterClass.Warrior));
     //
     Initialize();
 }
Esempio n. 18
0
 /// <summary>
 /// Your Bloodthirst hits have a 30% chance of making your next Slam instant and free for 10 sec.
 /// <para>DPSWarrChar.Talents: Bloodsurge (Requires Talent) [(10*Pts)% chance]</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public BloodSurge(DPSWarrCharacter dpswarrchar,
                   Ability slam, Ability bloodthirst)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater     = (int)Maintenance.Bloodsurge;
     ReqTalent        = true;
     Talent2ChksValue = DPSWarrChar.Talents.Bloodsurge;
     ReqMeleeWeap     = ReqMeleeRange = true;
     Duration         = 10f; // In Seconds
     RageCost         = -1f;
     StanceOkFury     = true;
     SwingsOffHand    = true;
     _slamInfo        = slam;
     _btInfo          = bloodthirst;
     UseReact         = true;
     Initialize();
 }
Esempio n. 19
0
 /// <summary>
 /// Instantly attack the target causing [AP*80/100] damage. In addition, the next 3 successful melee
 /// attacks will restore 0.5% health. This effect lasts 8 sec. Damage is based on your attack power.
 /// <para>DPSWarrChar.Talents: Bloodthirst (Requires talent), Unending Fury [+(2*Pts)% Damage]</para>
 /// <para>Glyphs: Glyph of Bloody Healing [+40% from healing effect]</para>
 /// <para>Glyphs: Glyph of Bloodthirst [+10% damage]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Bloodthirst(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar; //Char = c; StatS = s; CombatFactors = cf; Whiteattacks = wa; CalcOpts = co; BossOpts = bo;
     //
     AbilIterater = (int)Maintenance.Bloodthirst;
     ReqMeleeWeap = ReqMeleeRange = true;
     StanceOkFury = true;
     CD = 3f; // In Seconds
     //Duration = 8f;
     RageCost        = 20f;
     BonusCritChance = DPSWarrChar.Talents.Cruelty * 0.05f;
     DamageBase      = DPSWarrChar.StatS.AttackPower * 0.8f;
     DamageBonus     = 1f + DPSWarrChar.StatS.BonusBloodthirstDamageMultiplier;
     HealingBase     = DPSWarrChar.StatS.Health * 0.005f * 3f;
     HealingBonus    = 1f + (DPSWarrChar.Talents.GlyphOfBloodyHealing ? 0.4f : 0f);
     //
     Initialize();
 }
Esempio n. 20
0
 /// <summary>
 /// Instantly overpower the enemy, causing 125% weapon damage. Only useable after the target dodges.
 /// The Overpower cannot be blocked, dodged or parried.
 /// <para>DPSWarrChar.Talents: Improved Overpower [+(25*Pts)% Crit Chance]</para>
 /// <para>Glyphs: Glyph of Overpower [+10% DMG]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Overpower(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.Overpower;
     ReqMeleeWeap = ReqMeleeRange = true;
     CanBeDodged  = CanBeParried = CanBeBlocked = false;
     CD           = 1.5f;// In Seconds
     GCDTime      = CD;
     RageCost     = 5f;
     //Targets += DPSWarrChar.StatS.BonusTargets;
     StanceOkArms    = true;
     DamageBase      = DPSWarrChar.CombatFactors.NormalizedMHWeaponDmg * DamageMultiplier;
     DamageBonus     = (1f + DPSWarrChar.StatS.BonusOverpowerDamageMultiplier);
     BonusCritChance = 0.20f * DPSWarrChar.Talents.TasteForBlood;
     BonusCritDamage = 1f + DPSWarrChar.Talents.Impale * 0.1f;
     UseReact        = true; // can't plan for this
     //
     Initialize();
 }
Esempio n. 21
0
 /// <summary>
 /// You become a whirling storm of destructive force, instantly striking all nearby targets for
 /// 150% weapon damage and continuing to perform a whirlwind attack every 1 sec for 6 sec.
 /// While under the effects of Bladestorm, you do not feel pity or remorse or fear and you
 /// cannot be stopped unless killed or disarmed, but you cannot perform any other abilities.
 /// <para>DPSWarrChar.Talents: Bladestorm [Requires Talent]</para>
 /// <para>Glyphs: Glyph of Bladestorm [-15 sec Cd]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Bladestorm(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater     = (int)Maintenance.Bladestorm;
     ReqTalent        = true;
     Talent2ChksValue = DPSWarrChar.Talents.Bladestorm;
     ReqMeleeWeap     = true;
     ReqMeleeRange    = true;
     MaxRange         = 8;                                                         // In Yards
     Targets          = 10;                                                        // Handled in WW
     DamageBase       = DPSWarrChar.CombatFactors.NormalizedMHWeaponDmg * DamageMultiplier;
     CD                = 90f - (DPSWarrChar.Talents.GlyphOfBladestorm ? 15f : 0f); // In Seconds
     RageCost          = 25f;
     CastTime          = 6f;                                                       // In Seconds // Channeled
     GCDTime           = CastTime;
     StanceOkFury      = StanceOkArms = StanceOkDef = true;
     SwingsOffHand     = true;
     SwingsPerActivate = 7f;
     //
     Initialize();
 }
Esempio n. 22
0
        /// <summary>
        /// Slams the opponent, causing 174% weapon damage plus (430*1.74).
        /// <para>DPSWarrChar.Talents: Improved Slam [Reduces cast time of your Slam ability by (0.5/1) sec.]</para>
        /// <para>Glyphs: Slam [+5% Crit]</para>
        /// <para>Sets: T7 Deadnaught Battlegear 2 Pc [+10% Damage]</para>
        /// </summary>
        public Slam(DPSWarrCharacter dpswarrchar)
        {
            DPSWarrChar = dpswarrchar;
            //
            AbilIterater = (int)Maintenance.Slam;
            ReqMeleeWeap = ReqMeleeRange = StanceOkArms = StanceOkDef = true;
            CD           = 1.5f;
            RageCost     = 15f;
            DamageBase   = DPSWarrChar.CombatFactors.AvgMHWeaponDmgUnhasted * DamageMultiplier + DamageBaseBonus;

            if (DPSWarrChar.CombatFactors.FuryStance &&
                ((DPSWarrChar.Talents.TitansGrip == 0) && (DPSWarrChar.Talents.SingleMindedFury > 0)))
            {
                SwingsOffHand = true;
                DamageBase   += DPSWarrChar.CombatFactors.AvgOHWeaponDmgUnhasted * DamageMultiplier + DamageBaseBonus;
            }
            DamageBonus      = 1f + DPSWarrChar.StatS.BonusSlamDamageMultiplier;
            BonusCritDamage  = 1f + DPSWarrChar.Talents.Impale * 0.1f;
            BonusCritChance += DPSWarrChar.Talents.GlyphOfSlam ? 0.05f : 0f;
            CastTime         = (1.5f - (!DPSWarrChar.CombatFactors.FuryStance ? (DPSWarrChar.Talents.ImprovedSlam * 0.5f) : 0f)); // In Seconds
            //
            Initialize();
        }
Esempio n. 23
0
 /// <summary>
 /// Increases your Overpower critical strike chance by 60%. In addition, whenever your Rend ability causes
 /// damage, you have a 100% chance of allowing the use of Overpower for 9 sec.
 /// This effect will not occur more than once every 5 sec.
 /// <para>DPSWarrChar.Talents: Improved Overpower [+(25*Pts)% Crit Chance], Unrelenting Assault [-(2*Pts) sec cooldown, +(10*Pts)% Damage.]</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public TasteForBlood(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater     = (int)Maintenance.TasteForBlood;
     ReqTalent        = true;
     Talent2ChksValue = DPSWarrChar.Talents.TasteForBlood;
     ReqMeleeWeap     = ReqMeleeRange = true;
     CanBeDodged      = CanBeParried = CanBeBlocked = false;
     GCDTime          = 1f;
     // Technically it has a 5 sec cd, but Rend only ticks every 3 sec
     // and it has to tick on every other tick so 6 sec
     CD              = 6f;// 5f; // In Seconds
     RageCost        = 5f;
     StanceOkArms    = true;
     DamageBase      = DPSWarrChar.CombatFactors.NormalizedMHWeaponDmg * DamageMultiplier;
     DamageBonus     = (1f + DPSWarrChar.StatS.BonusOverpowerDamageMultiplier);
     BonusCritChance = 0.20f * DPSWarrChar.Talents.TasteForBlood;
     BonusCritDamage = 1f + DPSWarrChar.Talents.Impale * 0.1f;
     //UseReact = true; // you can plan for it ahead of time, unlike SD and normal OP
     //
     Initialize();
 }
Esempio n. 24
0
 /// <summary>
 /// Your melee attacks strike an additional nearby opponent. Lasts 10 sec.
 /// <para>DPSWarrChar.Talents: Sweeping Strikes [Requires Talent]</para>
 /// <para>Glyphs: Glyph of Sweeping Strikes [-100% RageCost]</para>
 /// <para>Sets: none</para>
 /// <remarks>
 /// Notes from wowhead site:
 /// * Sweeping Strikes hits cannot be dodged, missed or parried.
 /// * SS is off the GCD, so you can macro it into pretty much every skill to have 5 free hits every 30
 ///   seconds. Just make a macro, name it something, and dump /cast sweeping strikes into it somewhere,
 ///   along with whatever other ability you would normally use
 /// * Sweeping Strikes does not trigger the GCD.
 /// </remarks>
 /// </summary>
 public SweepingStrikes(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.SweepingStrikes;
     ReqTalent = true; Talent2ChksValue = DPSWarrChar.Talents.SweepingStrikes;
     ReqMeleeWeap = ReqMeleeRange = true;
     StanceOkArms = true;
     ReqMultiTargs = true;
     Targets = -1;
     CD = 60f;
     Duration = 10f;
     RageCost = (DPSWarrChar.Talents.GlyphOfSweepingStrikes ? -1f : 30f);
     UseHitTable = false;
     UsesGCD = false;
     //
     Initialize();
 }
Esempio n. 25
0
 /// <summary>
 /// Grants your special attacks an additional 50% chance to critically hit,
 /// but increases all damage taken by 20%. Lasts 12 sec.
 /// <para>DPSWarrChar.Talents: none</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Recklessness(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.Recklessness;
     CD = (5f * 60f) * (1f - 0.10f * DPSWarrChar.Talents.IntensifyRage); // In Seconds
     Duration = 12f; // In Seconds
     StanceOkFury = true;
     StanceOkArms = true;
     StanceOkDef = true;
     Targets = -1;
     //Effect = new SpecialEffect(Trigger.Use, new Stats { PhysicalCrit = 1f, DamageTakenMultiplier = 0.20f, }, Duration, Cd);
     UseHitTable = false;
     Initialize();
 }
Esempio n. 26
0
 /// <summary>
 /// When activated you become enraged, increasing your physical damage by 20% but increasing
 /// all damage taken by 5%. Lasts 30 sec.
 /// <para>DPSWarrChar.Talents: Death Wish [Requires Talent], Intensify Rage [-(10*Pts)% CD]</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public DeathWish(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.DeathWish;
     ReqTalent = true;
     Talent2ChksValue = DPSWarrChar.Talents.DeathWish;
     CD = 3f * 60f * (1f - 0.10f * DPSWarrChar.Talents.IntensifyRage); // In Seconds
     Duration = 30f;
     Targets = -1;
     RageCost = 10f;
     StanceOkFury = true;
     UseHitTable = false;
     //
     Initialize();
 }
Esempio n. 27
0
 /// <summary>
 /// Temporarily grants you and all party or raid members within 30 yards 20% of maximum health for
 /// 10 sec. After the effect expires, the health is lost.
 /// <para>Talents: none</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public RallyingCry(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.RallyingCry;
     MaxRange = 30f;// *(1f + (DPSWarrChar.Talents.GlyphOfCommand ? 0.50f : 0f)); // In Yards 
     Duration = 10f;// (2f + (DPSWarrChar.Talents.GlyphOfCommand ? 2f : 0f)) * 60f;
     //RageCost = -1f * (20f + DPSWarrChar.Talents.BoomingVoice * 5f);
     CD = 3f * 60f;// -DPSWarrChar.Talents.BoomingVoice * 15f;
     Targets = -1;
     StanceOkFury = StanceOkArms = StanceOkDef = true;
     UseHitTable = false;
     IsMaint = true;
     //
     Initialize();
 }
Esempio n. 28
0
 /// <summary>
 /// The warrior shouts, increasing attack power of all raid and party members within 20 yards by 549 and gaining 20 rage. Lasts 2 min.
 /// <para>DPSWarrChar.Talents: Booming Voice [-15*Pts Cd, +5*Pts Rage Gen]</para>
 /// <para>Glyphs: Glyph of Battle [+1*Pts min duration, +(25*Pts)% AoE]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public BattleShout(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.BattleShout;
     MaxRange = 30f; // In Yards 
     Duration = (2f + (DPSWarrChar.Talents.GlyphOfBattle ? 2f : 0f)) * 60f;
     RageCost = -1f * (20f + DPSWarrChar.Talents.BoomingVoice * 5f);
     CD = 60f - DPSWarrChar.Talents.BoomingVoice * 15f;
     Targets = -1;
     StanceOkFury = StanceOkArms = StanceOkDef = true;
     UseHitTable = false;
     //
     Initialize();
 }
Esempio n. 29
0
 /// <summary>
 /// Instant, 3 min Cd, 15 Rage, Self, Any Stance,
 /// You regenerate 30% of your total health over 10 sec. Can only be used while Enraged.
 /// <para>DPSWarrChar.Talents: Field Dressing [+(10*Pts)% Healed]</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public EnragedRegeneration(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.EnragedRegeneration;
     CD = 3f * 60f; // In Seconds
     RageCost = 15f;
     Targets = -1;
     StanceOkArms = StanceOkDef = StanceOkFury = true;
     HealingBase = DPSWarrChar.StatS.Health * 0.30f;
     HealingBonus = 1f + DPSWarrChar.Talents.FieldDressing * 0.10f;
     UseHitTable = false;
     UseReact = true;
     //
     Initialize();
 }
Esempio n. 30
0
 /// <summary>
 /// Reduces the physical damage caused by all enemies within 10 yards by 10% for 30 sec.
 /// <para>DPSWarrChar.Talents: Drums of War [-50% Rage Cost/Pt]</para>
 /// <para>Glyphs: Demo Shout [+15s Dur, +50% AoE]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public DemoralizingShout(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.DemoralizingShout;
     ReqMeleeWeap = ReqMeleeRange = false;
     MaxRange = 10f * (1f + (DPSWarrChar.Talents.GlyphOfDemoralizingShout ? 0.50f : 0f)); // In Yards 
     Duration = 30f + (DPSWarrChar.Talents.GlyphOfDemoralizingShout ? 15f : 0f); // Booming Voice doesn't boost this shout
     RageCost = TalentsAsSpecialEffects.DrumsOfWarRageCosts[DPSWarrChar.Talents.DrumsOfWar]; // Drums of War negates rage cost
     StanceOkArms = StanceOkFury = true;
     UseSpellHit = true;
     //
     Initialize();
 }
Esempio n. 31
0
 /// <summary>
 /// Sunders the target's armor, reducing it by 4% per Sunder Armor and causes a high amount of threat.
 /// Threat increased by attack power. Can be applied up to 5 times. Lasts 30 sec.
 /// <para>DPSWarrChar.Talents: Focused Rage [-(Pts) Rage Cost], Puncture [-(Pts) Rage Cost], </para>
 /// <para>Glyphs: Glyph of Sunder Armor [+1 Targets]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public SunderArmor(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.SunderArmor;
     ReqMeleeWeap = true;
     ReqMeleeRange = true;
     Duration = 30f; // In Seconds
     CD = 1.5f;
     CanCrit = false;
     RageCost = 15f * (1f - (DPSWarrChar.Talents.GlyphOfFuriousSundering ? 0.50f : 0f));
     Targets = 1f + (DPSWarrChar.Talents.GlyphOfSunderArmor ? 1f : 0f);
     StanceOkFury = StanceOkArms = StanceOkDef = true;
     //
     Initialize();
 }
Esempio n. 32
0
 /// <summary>
 /// Instant, 30 sec Cd
 /// Reduces the cooldown of Heroic Strike and Cleave by 50% for 15 sec.
 /// <para>DPSWarrChar.Talents: Deadly Calm</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public InnerRage(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     CD = 30f; // In Seconds
     Duration = 15f;
     RageCost = -1f;
     AbilIterater = (int)Maintenance.InnerRage;
     StanceOkArms = StanceOkDef = StanceOkFury = true;
     UseHitTable = false;
     Targets = -1;
     UseReact = false;
     IsMaint = true;
     UsesGCD = false;
     Effect = effect;
     //
     Initialize();
 }
Esempio n. 33
0
 /// <summary>
 /// Whenever you are struck by a Stun of Immoblize effect you will generate
 /// 10*Pts Rage and (5*Pts)% of your total health over 10 sec.
 /// <para>DPSWarrChar.Talents: Sweeping Strikes [Requires Talent]</para>
 /// <para>Glyphs: Glyph of Sweeping Strikes [-100% Rage cost]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public SecondWind(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     //AbilIterater = -1f;
     ReqTalent = true;
     Talent2ChksValue = DPSWarrChar.Talents.SecondWind;
     CD = -1f;
     Targets = -1;
     NumStunsOverDur = 0f;
     Duration = 10f; // Using 4 seconds to sim consume time
     RageCost = -10f * DPSWarrChar.Talents.SecondWind;
     StanceOkDef = StanceOkFury = StanceOkArms = true;
     HealingBase = DPSWarrChar.StatS.Health * 0.025f * DPSWarrChar.Talents.SecondWind;
     HealingBonus = 1f + DPSWarrChar.Talents.FieldDressing * 0.10f;
     UseHitTable = false;
     UsesGCD = false;
     //
     Initialize();
 }
Esempio n. 34
0
 /// <summary>
 /// Instant, 2 Min Cooldown, 0 Rage, Self (Any)
 /// Removes any Charm, Fear and Sleep effect. This effect shares a 30 sec cooldown with other similar effects.
 /// <para>DPSWarrChar.Talents: none</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public WillOfTheForsaken(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     CD = 2f * 60f;
     StanceOkArms = StanceOkFury = StanceOkDef = true;
     UseHitTable = false;
     UseReact = true;
     UsesGCD = false; // Comments say no, but I need to verify in game
     Targets = -1;
     //
     Initialize();
 }
Esempio n. 35
0
 /// <summary>
 /// Instant, 1.75 Min Cooldown, 0 Rage, Self (Any)
 /// Escape the effects of any immobilization or movement speed reduction effect.
 /// <para>DPSWarrChar.Talents: none</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public EscapeArtist(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     CD = 105f;
     StanceOkArms = StanceOkFury = StanceOkDef = true;
     UseHitTable = false;
     UseReact = true;
     UsesGCD = false; // Comments say no, but I need to verify in game
     Targets = -1;
     //
     Initialize();
 }
Esempio n. 36
0
 /// <summary>
 /// Instant, 2 min Cd, Self, Any Stance,
 /// For the next 10 sec, none of your abilities cost rage, but you
 /// continue to generate rage. Cannot be used during Inner Rage.
 /// <para>DPSWarrChar.Talents: Deadly Calm [Requires Talent]</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public DeadlyCalm(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     CD = 2 * 60f; // In Seconds
     Duration = 10f;
     RageCost = -1f;
     AbilIterater = (int)Maintenance.DeadlyCalm;
     ReqTalent = true; Talent2ChksValue = DPSWarrChar.Talents.DeadlyCalm;
     StanceOkArms = StanceOkDef = StanceOkFury = true;
     UseHitTable = false;
     Targets = -1;
     UseReact = true;
     IsMaint = false; // Intentional so we can handle it against Inner Rage
     UsesGCD = false; // Tested 11/27/2010 with 4.0.3a
     //
     Initialize();
 }
Esempio n. 37
0
 /// <summary>
 /// Instant, 30 sec Cd, 10 Rage, 0-25 yds, (Def)
 /// Run at high speed towards a party member, intercepting the next melee or ranged attack made against them as well as reducing their total threat by 10%.
 /// <para>DPSWarrChar.Talents: Warbringer [Usable in any stance], Safeguard [Target threat reduced by (15*Pts)% instead of 10%]</para>
 /// <para>Glyphs: Glyph of Intervene [Increases the number of attacks you intercept for your intervene target by 1.]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Intervene(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     MinRange = 0f;
     MaxRange = 25f; // In Yards 
     CD = 30f; // In Seconds
     Targets = -1;
     RageCost = 10f;
     StanceOkDef = true; StanceOkArms = StanceOkFury = (DPSWarrChar.Talents.Warbringer == 1);
     UseHitTable = false;
     //
     Initialize();
 }
Esempio n. 38
0
 /// <summary>
 /// Blasts enemies within 8 yards for 303 damage, and increases the time between
 /// their attacks by 20% for 30 sec. Damage increased by attack power.
 /// <para>TODO: BonusCritDamage to 2x instead of 1.5x as it's now considered a ranged attack (3.3.3 notes) other parts implemented already</para>
 /// <para>DPSWarrChar.Talents: none</para>
 /// <para>Glyphs: Glyph of Thunder Clap [+2 yds MaxRange], Glyph of Resonating Power [-5 RageCost]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public ThunderClap(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.ThunderClap;
     ReqMeleeRange = StanceOkArms = StanceOkDef = true;
     IsMaint = false;
     Targets = 10;
     MaxRange = 5f + (DPSWarrChar.Talents.GlyphOfThunderClap ? 2f : 0f); // In Yards 
     CD = 6f; // In Seconds
     Duration = 30f; // In Seconds
     RageCost = 20f - (DPSWarrChar.Talents.GlyphOfResonatingPower ? 5f : 0f);
     DamageBase = 303f + DPSWarrChar.StatS.AttackPower * 0.12f;
     UseRangedHit = true;
     CanBeDodged = CanBeParried = false;
     //
     Initialize();
 }
Esempio n. 39
0
 /// <summary>
 /// Instant, 60 sec Cd, 8-40 yds
 /// Leap through the air towards a targeted location, slamming down with destructive force to deal (1+AP*0.5) damage to all enemies within 8 yards.
 /// <para>DPSWarrChar.Talents: Skirmisher [-[10*Pts] sec CD, Max: 2]</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public HeroicLeap(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     MinRange = 8f;
     MaxRange = 40f;
     CD = 60f - (DPSWarrChar.CombatFactors.FuryStance ? (10f * DPSWarrChar.Talents.Skirmisher) : 0f);
     RageCost = -1f;
     StanceOkArms = StanceOkDef = StanceOkFury = true;
     DamageBase = 1f + (DPSWarrChar.StatS != null ? DPSWarrChar.StatS.AttackPower * 0.50f : 0f);
     Targets = 10;
     //
     Initialize();
 }
Esempio n. 40
0
 /// <summary>
 /// Throws your weapon at the enemy causing (12+AP*0.50) damage (based on attack power),
 /// reducing the armor on the target by 20% for 10 sec or removing any invulnerabilities.
 /// </summary>
 public ShatteringThrow(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.ShatteringThrow;
     ReqMeleeWeap = true;
     ReqMeleeRange = false;
     MaxRange = 30f; // In Yards
     //Targets += DPSWarrChar.StatS.BonusTargets;
     CD = 5f * 60f; // In Seconds
     Duration = 10f;
     CastTime = 1.5f; // In Seconds
     RageCost = 25f;
     StanceOkArms = true;
     DamageBase = 12f + DPSWarrChar.StatS.AttackPower * 0.50f;
     UseRangedHit = true;
     //
     Initialize();
 }
Esempio n. 41
0
 /// <summary>
 /// Instant, 10 sec Cd, 10 Rage, Melee Range, (Battle, Berserker)
 /// Pummel the target, interrupting spell-casting and preventing any spell in that school
 /// from being cast for 4 sec
 /// <para>Talents: none</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// <para>TODO: Damage Increase proc from Rude Interruption Talent</para>
 /// </summary>
 public Pummel(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     //AbilIterater = (int)CalculationOptionsDPSWarr.Maintenances.Pummel_;
     UseHitTable = false; // 4.1.0 makes it always hit
     ReqMeleeWeap = ReqMeleeRange = true;
     StanceOkArms = StanceOkFury = StanceOkDef = true;
     CD = 10f; // In Seconds
     Duration = 4f;
     RageCost = TalentsAsSpecialEffects.DrumsOfWarRageCosts[DPSWarrChar.Talents.DrumsOfWar];
     DamageBase = 0;
     //
     Initialize();
 }
Esempio n. 42
0
 /// <summary>
 /// Instant, No cd, 10 Rage, Melee Range, Melee Weapon, (Battle/Zerker)
 /// Maims the enemy, reducing movement speed by 50% for 15 sec.
 /// <para>DPSWarrChar.Talents: Improved Hamstring [Gives a [5*Pts]% chance to immobilize the target for 5 sec.]</para>
 /// <para>Glyphs: Glyph of Hamstring [Gives a 10% chance to immobilize the target for 5 sec.]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Hamstring(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     AbilIterater = (int)Maintenance.Hamstring;
     ReqMeleeWeap = true;
     ReqMeleeRange = true;
     Duration = 15f; // In Seconds
     CD = 1.5f - DPSWarrChar.Talents.ImprovedHamstring * 0.5f;
     GCDTime = 1.5f - DPSWarrChar.Talents.ImprovedHamstring * 0.5f;
     RageCost = 10f;// -(DPSWarrChar.Talents.FocusedRage * 1f);
     //Targets += DPSWarrChar.StatS.BonusTargets;
     StanceOkFury = StanceOkArms = true;
     //Effect = new SpecialEffect(Trigger.Use, new Stats() { AttackPower = 0f, /*TargetMoveSpeedReducPerc = 0.50f,*/ }, Duration, Duration);
     //float Chance = DPSWarrChar.Talents.ImprovedHamstring * 0.05f + (DPSWarrChar.Talents.GlyphOfHamstring ? 0.10f : 0.00f);
     //Effect2 = new SpecialEffect(Trigger.Use, new Stats() { AttackPower = 0f, /*TargetStunned = 0.50f,*/ }, 5f, Duration, Chance);
     //
     Initialize();
 }
Esempio n. 43
0
 /// <summary>
 /// Instant, 5 Min Cd, No Rage, Melee Range, Melee Weapon, (Battle)
 /// Instantly counterattack any enemy that strikes you in melee for 12 sec. Melee attacks
 /// made from behind cannot be counterattacked. A maximum of 20 attacks will cause retaliation.
 /// <para>DPSWarrChar.Talents: none</para>
 /// <para>Glyphs: none</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Retaliation(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     StanceOkArms = true;
     StanceOkFury = true;
     StanceOkDef = true;
     ReqMeleeRange = true;
     ReqMeleeWeap = true;
     CD = 5f * 60f;
     Duration = 12f;
     StackCap = 20f;
     UseHitTable = false;
     //
     Initialize();
 }
Esempio n. 44
0
 /// <summary>
 /// Instant, 30 sec Cd, Self, Any Stance,
 /// Enter a berserker rage, removing and granting immunity to Fear, Sap and Incapacitate effects
 /// and generating extra rage when taking damage. Lasts 10 sec.
 /// <para>DPSWarrChar.Talents: Intensify Rage [-(10*Pts)% Cd]</para>
 /// <para>Glyphs: Glyph of Berserker Rage [+5 Rage Gen]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public BerserkerRage(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     CD = 30f * (1f - 0.10f * DPSWarrChar.Talents.IntensifyRage); // In Seconds
     Duration = 10f;
     RageCost = (DPSWarrChar.Talents.GlyphOfBerserkerRage ? -5f : -1f); // This is reversed in the rotation
     AbilIterater = (int)Maintenance.BerserkerRage;
     StanceOkArms = StanceOkDef = StanceOkFury = true;
     UseHitTable = false;
     Targets = -1;
     UseReact = true;
     UsesGCD = false; // Tested 11/27/2010 with 4.0.3a
     //
     Initialize();
 }
Esempio n. 45
0
 /// <summary>
 /// Instant, 15 sec cd, 0 Rage, 8-25 yds, (Battle)
 /// Charge an enemy, generate 15 rage, and stun it for 1 sec. Cannot be used in combat.
 /// <para>DPSWarrChar.Talents: Blitz [+5 RageGen], Warbringer [Usable in combat and any stance], Juggernaut [Usable in combat]</para>
 /// <para>Glyphs: Glyph of Rapid Charge [-7% Cd], Glyph of Charge [+5 yds MaxRange]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Charge(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     MinRange = 8f;
     MaxRange = 25f + (DPSWarrChar.Talents.GlyphOfLongCharge ? 5f : 0f); // In Yards 
     RageCost = -(15f + (DPSWarrChar.Talents.Blitz * 5f));
     float cdi = 0f;
     CD = (15f + cdi); // In Seconds
     CD -= DPSWarrChar.Talents.Juggernaut * 1f;
     if (DPSWarrChar.Talents.GlyphOfRapidCharge) { CD -= 1f; }
     Duration = 1.5f;
     Targets = -1;
     if (DPSWarrChar.Talents.Warbringer == 1) {
         StanceOkArms = StanceOkFury = StanceOkDef = true;
     } else if (DPSWarrChar.Talents.Juggernaut == 1) {
         StanceOkArms = true;
     }
     //
     Initialize();
 }
Esempio n. 46
0
 /// <summary>
 /// Instant, 30 sec Cd, 0 Rage, Self (Any)
 /// Removes any Immobilization effects and refreshes the cooldown of your Intercept ability.
 /// </summary>
 /// <para>DPSWarrChar.Talents: </para>
 /// <para>Glyphs: </para>
 public HeroicFury(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     ReqTalent = true;
     Talent2ChksValue = DPSWarrChar.Talents.HeroicFury;
     CD = 30f;
     Targets = -1;
     StanceOkArms = StanceOkFury = StanceOkDef = true;
     UseHitTable = false;
     UseReact = true;
     UsesGCD = false;
     //
     Initialize();
 }
Esempio n. 47
0
 /// <summary>
 /// Instant, 30 sec Cd, 10 Rage, 8-25 yds, (Zerker)
 /// Charge an enemy, causing 380 damage (based on attack power) and stunning it for 3 sec.
 /// <para>DPSWarrChar.Talents: Warbringer [Usable in any stance], Improved Intercept [-[5*Pts] sec Cd]</para>
 /// <para>Glyphs: Intercept [+1s Stun Dur]</para>
 /// <para>Sets: none</para>
 /// </summary>
 public Intercept(DPSWarrCharacter dpswarrchar)
 {
     DPSWarrChar = dpswarrchar;
     //
     MinRange = 8f;
     MaxRange = 25f; // In Yards 
     CD = 30f - (DPSWarrChar.CombatFactors.FuryStance ? DPSWarrChar.Talents.Skirmisher * 5f : 0f) - (DPSWarrChar.StatS != null ? DPSWarrChar.StatS.BonusWarrior_PvP_4P_InterceptCDReduc : 0); // In Seconds
     RageCost = 10f;
     Targets = -1;
     Duration = 1.5f + (DPSWarrChar.Talents.GlyphOfIntercept ? 1f : 0f);
     StanceOkFury = true; StanceOkArms = StanceOkDef = (DPSWarrChar.Talents.Warbringer == 1);
     DamageBase = (DPSWarrChar.StatS != null ? DPSWarrChar.StatS.AttackPower * 0.12f : 0);
     //
     Initialize();
 }