namespace Turbo.Plugins.LightningMod { public class BarbarianAncientSpearPlugin : AbstractSkillHandler, ISkillHandler { public BarbarianAncientSpearPlugin() : base(CastType.BuffSkill, CastPhase.AutoCast, CastPhase.UseTpStart, CastPhase.UseWpStart, CastPhase.Move, CastPhase.PreAttack) { Enabled = false; } public override void Load(IController hud) { base.Load(hud); AssignedSnoPower = Hud.Sno.SnoPowers.Barbarian_AncientSpear; Rune = 1; CreateCastRule() .IfInTown().ThenNoCastElseContinue() .IfCastingIdentify().ThenNoCastElseContinue() .IfCastingPortal().ThenNoCastElseContinue() .IfOnCooldown().ThenNoCastElseContinue() .IfCanCastBuff().ThenContinueElseNoCast() .IfCanCastSimple().ThenContinueElseNoCast() .IfPrimaryResourceAmountIsAbove(ctx => 25).ThenContinueElseNoCast() .IfTrue(ctx => { var set = Hud.Game.Me.GetSetItemCount(671068) == 6 && Hud.Game.Me.GetSetItemCount(749637) == 4;//满足6+4时 return (set); }).ThenContinueElseNoCast() .IfSpecificSkillOnCooldown(Hud.Sno.SnoPowers.Barbarian_WrathOfTheBerserker).ThenContinueElseNoCast()//狂暴之怒冷却时 .IfPrimaryResourcePercentageIsAbove(98).ThenCastElseContinue()//怒气高于98% ; CreateCastRule() .IfInTown().ThenNoCastElseContinue() .IfCastingIdentify().ThenNoCastElseContinue() .IfCastingPortal().ThenNoCastElseContinue() .IfOnCooldown().ThenNoCastElseContinue() .IfCanCastBuff().ThenContinueElseNoCast() .IfCanCastSimple().ThenContinueElseNoCast() .IfPrimaryResourceAmountIsAbove(ctx => 25).ThenContinueElseNoCast() .IfTrue(ctx => { var set = Hud.Game.Me.GetSetItemCount(671068) == 6 && Hud.Game.Me.GetSetItemCount(749637) == 4;//满足6+4时 return (set); }).ThenContinueElseNoCast() .IfTrue(ctx => ctx.Hud.Game.Me.Powers.BuffIsActive(hud.Sno.SnoPowers.Generic_ItemPassiveUniqueRing735x1.Sno, 0)).ThenContinueElseNoCast()//带对戒 .IfSpecificBuffIsAboutToExpire(hud.Sno.SnoPowers.Generic_ItemPassiveUniqueRing735x1 , 2, 100, 500).ThenCastElseContinue()//克己即将消失时施放 ; } } }