using System.Linq; namespace Turbo.Plugins.LightningMod { public class CrusaderSteedChargePlugin : AbstractSkillHandler, ISkillHandler { public CrusaderSteedChargePlugin() : base(CastType.BuffSkill, CastPhase.AutoCast, CastPhase.Collect, CastPhase.Move, CastPhase.Attack) { Enabled = true; } public override void Load(IController hud) { base.Load(hud); AssignedSnoPower = Hud.Sno.SnoPowers.Crusader_SteedCharge; CreateCastRule() .IfInTown().ThenNoCastElseContinue() .IfCastingIdentify().ThenNoCastElseContinue() .IfCastingPortal().ThenNoCastElseContinue() .IfOnCooldown().ThenNoCastElseContinue() .IfCanCastSimple().ThenContinueElseNoCast() .IfSpecificBuffIsActive(Hud.Sno.SnoPowers.Crusader_SteedCharge).ThenNoCastElseContinue()//骑马时 .IfTrue(ctx => ctx.Skill.Player.Powers.BuffIsActive(447290)).ThenContinueElseNoCast()//战马套 .IfTrue(ctx => ctx.Hud.Game.AliveMonsters.Any(m =>(m.CurHealth / m.MaxHealth) < 0.99 && m.CentralXyDistanceToMe < 15)).ThenContinueElseNoCast()//周围15码内至少1个怪血量低于99% .IfFalse(ctx => ctx.Skill.Player.Powers.BuffIsActive(447291,1)).ThenCastElseContinue() ; } } }