public override void OnThink() { base.OnThink(); DateTime now = DateTime.UtcNow; if (!this.InCombat()) { return; } if (now > _NextCast) { _NextCast = now + CastInterval; if (CurrentSpell == null) { CurrentSpell = new List <Timer>(); } if (now > _NextShadowStep) { _NextShadowStep = now + ShadowStepInterval; CurrentSpell.Clear(); HideEffect(); CantWalk = true; Hidden = true; Blessed = true; Combatant = null; CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(1), BackStab_Callback)); } } }
public override void OnThink() { base.OnThink(); DateTime now = DateTime.UtcNow; if (!this.InCombat()) { return; } if (now > _NextCast) { _NextCast = now + CastInterval; if (CurrentSpell == null) { CurrentSpell = new List <Timer>(); } if (now > _NextShadowStep) { _NextShadowStep = now + ShadowStepInterval; CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(1), Throw_Poop)); } } }
public override void OnThink() { base.OnThink(); DateTime now = DateTime.UtcNow; if (!this.InCombat()) { return; } if (now > _NextCast) { _NextCast = now + CastInterval; if (CurrentSpell == null) { CurrentSpell = new List <Timer>(); } if (now > _NextShadowStep && CurrentSpell.Count == 0) { _NextShadowStep = now + ShadowStepInterval; CurrentSpell.Clear(); HideEffect(); CantWalk = true; Hidden = true; Blessed = true; Combatant = null; CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(1), BackStab_Callback)); } else if (now > _NextUltima && CurrentSpell.Count == 0) { _NextUltima = now + UltimaInterval; CurrentSpell.Clear(); CantWalk = true; Combatant = null; Say("*Begins to cast Ultima*"); AnimateSpell(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(2), Ultima_Callback)); } else if (now > _NextMirrorImage && CurrentSpell.Count == 0) { _NextMirrorImage = now + MirrorImageInterval; CurrentSpell.Clear(); CantWalk = true; Combatant = null; Say("*Begins to cast Mirror Image*"); AnimateSpell(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(2), MirrorImage_Callback)); } } }
public override void OnThink() { base.OnThink(); DateTime now = DateTime.UtcNow; if (!this.InCombat()) { return; } if (now > _NextCast) { _NextCast = now + CastInterval; if (CurrentSpell == null) { CurrentSpell = new List <Timer>(); } if (Hits < HitsMax * .75) { ToggleSummon = true; } if (ToggleSummon && now > _NextSummon) { _NextSummon = now + SummonInterval; CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), Summon_Callback)); } else if (now > _NextFeast) { _NextFeast = now + FeastInterval; CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), Feast_Callback)); } else if (now > _NextMerciless) { _NextMerciless = now + MercilessInterval; CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.5), Merciless_Callback)); } } }
public override void OnThink() { base.OnThink(); DateTime now = DateTime.UtcNow; if (!this.InCombat()) { return; } if (now > _NextCast) { _NextCast = now + CastInterval; if (CurrentSpell == null) { CurrentSpell = new List <Timer>(); } if (now > _NextUltima && CurrentSpell.Count == 0) { _NextUltima = now + UltimaInterval; CurrentSpell.Clear(); CantWalk = true; Combatant = null; AnimateSpell(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(2.0), Ultima_Callback)); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), Ultima_Callback)); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(4.0), Ultima_Callback)); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(5.0), Ultima_Callback)); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(6.0), Ultima_Callback)); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(7.0), Ultima_Callback)); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(8.0), Ultima_Callback)); } } }
public override void OnThink() { base.OnThink(); DateTime now = DateTime.UtcNow; if (!this.InCombat()) { return; } if (now > _NextCast) { _NextCast = now + CastInterval; if (CurrentSpell == null) { CurrentSpell = new List <Timer>(); } if (Hits < HitsMax * .75) { ToggleSummon = true; } if (ToggleMeteor && now > _NextMeteor && Transformed) { _NextMeteor = now + MeteorInterval; Yell(Utility.RandomBool() ? "Corp Por Kal Des Ylem" : "The heavens betray you! METEOR!!!"); Animate(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), Meteor_Callback)); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(4.0), Meteor_Callback)); } else if (ToggleSummon && now > _NextSummon) { _NextSummon = now + SummonInterval; Yell(Utility.RandomBool() ? "Kal Xen Bal Beh" : "From the darkest abyss, I summon thee!"); Animate(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), Summon_Callback)); } else if (ToggleGreaterExplosion && now > _NextGreaterExplosion) { _NextGreaterExplosion = now + GreaterExplosionInterval; Yell(Utility.RandomBool() ? "Kal Vas Ort Flam" : "MAY YOU BE REDUCED TO ASHES"); Animate(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), GreaterExplosion_Callback)); } else if (TogglePoisonExplosion && now > _NextPoisonExplosion) { _NextPoisonExplosion = now + PoisonExplosionInterval; Yell(Utility.RandomBool() ? "In Vas Ort Nox" : "Breathe deep the underworld.."); Animate(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.5), PoisonExplosion_Callback)); } } }
public override void OnThink() { base.OnThink(); DateTime now = DateTime.UtcNow; if (!this.InCombat()) { return; } if (now > _NextCast) { _NextCast = now + CastInterval; if (CurrentSpell == null) { CurrentSpell = new List <Timer>(); } if (Hits < HitsMax * .75) { ToggleSummon = true; } if (ToggleMeteor && now > _NextMeteor && Transformed) { _NextMeteor = now + MeteorInterval; Yell("FEEL THE WRATH OF THE ONE TRUE EASTER BUNNY"); Animate(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), Meteor_Callback)); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(4.0), Meteor_Callback)); } else if (ToggleSummon && now > _NextSummon) { _NextSummon = now + SummonInterval; Yell(Utility.RandomBool() ? "Fluff Cand Choc Suga" : "Aid me my fluffy brethren!"); Animate(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), Summon_Callback)); } else if (ToggleGreaterExplosion && now > _NextGreaterExplosion) { _NextGreaterExplosion = now + GreaterExplosionInterval; Yell(Utility.RandomBool() ? "I FART IN YOUR GENERAL DIRECTION" : "ISN'T EASTER FUN?"); Animate(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.0), GreaterExplosion_Callback)); } else if (TogglePoisonExplosion && now > _NextPoisonExplosion) { _NextPoisonExplosion = now + PoisonExplosionInterval; Yell("DIABETES!"); Animate(); CurrentSpell.Clear(); CurrentSpell.Add(Timer.DelayCall(TimeSpan.FromSeconds(3.5), PoisonExplosion_Callback)); } } }