コード例 #1
0
 /// <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);
 }
コード例 #2
0
        /// <summary>
        /// Assigns buff spells from the Warrior's spell inventory.
        /// </summary>
        /// <param name="self">The game client data for the Warrior.</param>
        protected FighterBuffCommands(WarriorClient self)
        {
            Self        = self;
            _rageSpell  = self.Spells.KeySpells.Rage;
            _rageStatus = self.Status.Rage;

            _enchantSpell = self.Spells.KeySpells.Enchant;
            _furySpell    = self.Spells.KeySpells.Fury;
            _furyStatus   = self.Status.Fury;
        }
コード例 #3
0
ファイル: WarriorStatus.cs プロジェクト: unkmc/TkMemory
 /// <summary>
 /// Initializes a Warrior's status data.
 /// </summary>
 /// <param name="self">All game client data for the Warrior.</param>
 public WarriorStatus(TkClient self) : base(self.Activity)
 {
     Backstab  = new BuffStatus(Activity, Warrior.Backstab);
     Berserk   = new BuffStatus(Activity, Warrior.Berserk);
     Blessing  = new BuffStatus(Activity, Warrior.Blessing);
     Flank     = new BuffStatus(Activity, Warrior.Flank);
     Fury      = new BuffStatus(Activity, Warrior.Fury);
     Potence   = new BuffStatus(Activity, Warrior.Potence);
     Rage      = new RageStatus(self, Warrior.Rage);
     SpotTraps = new BuffStatus(Activity, Warrior.SpotTraps);
     Whirlwind = new BuffStatus(Activity, Warrior.Whirlwind);
 }
コード例 #4
0
ファイル: RogueStatus.cs プロジェクト: unkmc/TkMemory
        /// <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);
        }
コード例 #5
0
        public static async Task <bool> CastRage(
            TkClient caster,
            KeySpell spell,
            RageStatus status)
        {
            if (status.IsActive)
            {
                return(false);
            }

            var didCastSpell = await CastSpell(caster, spell);

            // ReSharper disable once InvertIf
            if (didCastSpell)
            {
                status.ResetStatusCooldown();
                status.CurrentRageLevel++;
            }

            return(didCastSpell);
        }
コード例 #6
0
        /// <summary>
        /// Initializes a Warrior's status data.
        /// </summary>
        /// <param name="self">All game client data for the Warrior.</param>
        public WarriorStatus(WarriorClient self) : base(self.Activity)
        {
            Backstab  = new BuffStatus(Activity, Warrior.Backstab);
            Berserk   = new BuffStatus(Activity, Warrior.Berserk);
            Blessing  = new BuffStatus(Activity, Warrior.Blessing);
            Flank     = new BuffStatus(Activity, Warrior.Flank);
            Fury      = new BuffStatus(Activity, Warrior.Fury);
            Potence   = new BuffStatus(Activity, Warrior.Potence);
            SpotTraps = new BuffStatus(Activity, Warrior.SpotTraps);
            Whirlwind = new BuffStatus(Activity, Warrior.Whirlwind);

            switch (self.Spells.KeySpells.Rage?.AlignedName)
            {
            case "Sonhi Rage":
                Rage = new RageStatus(self, Warrior.SonhiRage);
                break;

            default:
                Rage = new RageStatus(self, Warrior.Rage);
                break;
            }
        }