/// <summary> /// Assigns buff spells from the Rogue's spell inventory. /// </summary> /// <param name="self">The game client data for the Rogue.</param> public RogueBuffCommands(RogueClient self) : base(self) { _invisibleSpell = self.Spells.KeySpells.Invisible; _invisibleStatus = self.Status.Invisible; _mightSpell = self.Spells.KeySpells.Might; _mightStatus = self.Status.Might; _shadowFigureSpell = self.Spells.KeySpells.ShadowFigure; _shadowFigureStatus = self.Status.ShadowFigure; }
/// <summary> /// Initializes a Rogue's status data. /// </summary> /// <param name="self">All game client data for the Rogue.</param> public RogueStatus(TkClient self) : base(self.Activity) { DesperateAttack = new BuffStatus(Activity, Rogue.DesperateAttack); Invisible = new InvisibleStatus(Activity, Rogue.Invisible); LethalStrike = new BuffStatus(Activity, Rogue.LethalStrike); Fury = new BuffStatus(Activity, Rogue.Fury); Rage = new RageStatus(self, Rogue.Cunning); ShadowFigure = new BuffStatus(Activity, Rogue.ShadowFigure); }
public static async Task <bool> CastInvisibleSpell( TkClient caster, KeySpell spell, InvisibleStatus status) { var didCastSpell = await CastSpell(caster, spell, true); if (didCastSpell) { status.ResetStatusCooldown(); } return(didCastSpell); }
/// <summary> /// Initializes a Rogue's status data. /// </summary> /// <param name="self">All game client data for the Rogue.</param> public RogueStatus(TkClient self) : base(self.Activity) { var mightBuffs = new List <BuffKeySpell>(); mightBuffs.AddRange(Caster.Valor); mightBuffs.AddRange(Rogue.Might); DesperateAttack = new BuffStatus(Activity, Rogue.DesperateAttack); Invisible = new InvisibleStatus(Activity, Rogue.Invisible); LethalStrike = new BuffStatus(Activity, Rogue.LethalStrike); Fury = new BuffStatus(Activity, Rogue.Fury); Might = new BuffStatus(Activity, mightBuffs); Rage = new RageStatus(self, Rogue.Cunning); ShadowFigure = new BuffStatus(Activity, Rogue.ShadowFigure); }
/// <summary> /// 创建状态 /// </summary> /// <param name="Core">雷达拥有者的核心信息</param> /// <param name="f">雷达拥有视野</param> public static StatusM Create(int SceneID, int ResalseSceneID, int SkillID, SkillStatusInfo Info) { if (Info == null) { return(null); } StatusType s = (StatusType)Info.m_type; StatusM status = null; switch (s) { case StatusType.AddAttr: status = new AddAttrStatus(); break; case StatusType.Vertigo: status = new VertigoStatus(); break; case StatusType.Silence: status = new SilenceStatus(); break; case StatusType.Vampire: status = new VampireStatus(); break; case StatusType.Rebound: status = new ReboundStatus(); break; case StatusType.Invisible: status = new InvisibleStatus(); break; case StatusType.Invincible: status = new InvincibleStatus(); break; case StatusType.Transfiguration: status = new TransfigurationStatus(); break; case StatusType.Summon: status = new SummonStatus(); break; case StatusType.ClickFly: status = new ClickFlyStatus(); break; case StatusType.AbsorbDamage: status = new AbsorbDamageStatus(); break; case StatusType.Virtual: status = new VirtualStatus(); break; case StatusType.Shield: status = new ShieldStatus(); break; case StatusType.Sputtering: status = new SputteringStatus(); break; case StatusType.Damnation: status = new DamnationStatus(); break; case StatusType.ImmunePhysical: status = new ImmunePhysicalStatus(); break; case StatusType.ImmunityMagic: status = new ImmunityMagicStatus(); break; case StatusType.IceBuild: status = new IceBuildStatus(); break; case StatusType.Ring: status = new RingStatus(); break; case StatusType.Taunt: status = new TauntStatus(); break; case StatusType.StaticElec: status = new StaticElecStatus(); break; case StatusType.Still: status = new StillStatus(); break; case StatusType.Squash: status = new SquashStatus(); break; case StatusType.Sauna: status = new SaunaStatus(); break; case StatusType.KTV: status = new KTVStatus(); break; case StatusType.ImmuneState: status = new ImmuneState(); break; case StatusType.NoSquash: status = new NoSquashStatus(); break; case StatusType.paralysis: status = new ParalysisStatus(); break; case StatusType.PhyAnitInterrupt: status = new PhyAnitInterruptStatus(); break; case StatusType.MagAnitInterrupt: status = new MagAnitInterruptStatus(); break; case StatusType.Cleanse: status = new CleanseStatus(); break; case StatusType.Charm: status = new CharmStatus(); break; case StatusType.BuildDestory: status = new BuildDestoryStatus(); break; case StatusType.Mark: status = new MarkStatus(); break; case StatusType.RunAway: status = new RunAwayStaus(); break; case StatusType.FakeTaunt: status = new FakeTauntStatus(); break; case StatusType.Die: status = new DieStatus(); break; case StatusType.Turn: status = new TurnStatus(); break; case StatusType.WetBody: status = new WetBodyStatus(); break; case StatusType.Berserker: status = new BerserkerStatus(); break; case StatusType.Paralyze: status = new ParalyzeStatus(); break; case StatusType.DieMark: status = new DieMarkStatus(); break; case StatusType.Sleep: status = new SleepStatus(); break; case StatusType.TearOfMermaid: status = new TearOfMermaidStatus(); break; case StatusType.Trapped: status = new TrapedStatus(); break; case StatusType.KickedBack: status = new KickedBackStatus(); break; case StatusType.WhipCorpse: status = new WhipCorpseStatus(); break; case StatusType.FireShield: status = new FireShieldStatus(); break; default: break; } return(status); }