//RUFFIAN Scoundrel (LEATHALITY Operative mirror)
//For DEFAULT COMBAT engine
//save as ruffian.cs and place in \Routines\DefaultCombat\Routines\Advanced\Scoundrel\
//EDITED 3/18/15 by 056 based on [forgot dude's name..]'s rotation
//Ability translations http://dulfy.net/2012/02/10/empirerepublic-abilities-translation/
//New 3.0 abilities Sanguinary Shot(Toxic Blast)/Point Blank Shot(Lethal Strike)
using Buddy.BehaviorTree;
using DefaultCombat.Core;
using DefaultCombat.Helpers;
namespace DefaultCombat.Routines
{
public class Ruffian : RotationBase
{
public override string Name { get { return "Scoundrel Ruffian"; } }
public override Composite Buffs
{
get
{
return new PrioritySelector();
}
}
public override Composite Cooldowns
{
get
{
return new LockSelector(
Spell.Cast("Kolto Pack", ret => Me.HasBuff("Scurry") && Me.HealthPercent <= 30),
Spell.Buff("Cool Head", ret => Me.EnergyPercent <= 30),
Spell.Buff("Pugnacity", ret => !Me.HasBuff("Upper Hand") && Me.InCombat),
Spell.Buff("Defense Screen", ret => Me.HealthPercent <= 75),
Spell.Buff("Dodge", ret => Me.HealthPercent <= 50),
Spell.Cast("Slow-Release Medpac", ret => Me.BuffCount("Slow-Release Medpac") < 2 && Me.HealthPercent <= 35)
);
}
}
public override Composite SingleTarget
{
get
{
return new LockSelector(
Spell.Cast("Point Blank Shot", ret => Me.IsStealthed),
new Decorator(ret => !Me.IsStealthed,
new LockSelector(
Spell.Cast("Backblast", ret => Me.ResourcePercent() >= 70),
Spell.Cast("Vital Shot", ret => !Me.CurrentTarget.HasDebuff("Bleeding (Vital Shot)")),
// Spell.DoT("Shrap Bomb", "", 20000),
Spell.Cast("Shrap Bomb", ret => !Me.CurrentTarget.HasDebuff("Bleeding (Tech)")),
Spell.Cast("Sanguinary Shot", ret => Me.BuffCount("Tactical Advantage") < 2),
// Spell.Cast("Tactical Superiority", ret => Me.HasBuff("Tactical Advantage")),
Spell.Cast("Blaster Whip", ret => Me.Level < 57, ret => Me.BuffCount("Upper Hand") < 2),
Spell.Cast("Sanguinary Shot", ret => Me.Level >= 57, ret => (Me.BuffCount("Upper Hand") >= 1) || (Me.HasBuff("Upper Hand") && Me.ResourcePercent() <= 80)),
Spell.Cast("Brutal Shots", ret => (Me.BuffCount("Upper Hand") >= 1) || (Me.HasBuff("Upper Hand") && Me.ResourcePercent() <= 80)),
Spell.Cast("Quick Shot", ret => Me.ResourcePercent() >= 70 && Me.BuffCount("Upper Hand") < 1),
Spell.Cast("Flurry of Bolts")
))
);
}
}
public override Composite AreaOfEffect
{
get
{
return new Decorator(ret => Targeting.ShouldAOE && !Me.IsStealthed,
new LockSelector(
// Spell.DoT("Shrap Bomb", "", 20000),
Spell.Cast("Shrap Bomb", ret => !Me.CurrentTarget.HasDebuff("Bleeding (Tech)")),
Spell.Cast("Thermal Grenade"),
Spell.Cast("Blaster Volley", ret => Me.HasBuff("Upper Hand")))
);
}
}
}
}