Beispiel #1
0
        /// <summary>
        /// /// Assigns spells and items from the Warrior's spell and item inventories.
        /// </summary>
        /// <param name="self">The game client data for the Warrior.</param>
        protected PeasantCommands(WarriorClient self)
        {
            Self          = self;
            _gatewaySpell = self.Spells.KeySpells.Gateway;

            Items    = new PeasantItemCommands(self);
            Movement = new PeasantMovementCommands(self);
        }
Beispiel #2
0
        /// <summary>
        /// Assigns spells from the Warrior's spell inventory.
        /// </summary>
        /// <param name="self">The game client data for the Warrior.</param>
        public WarriorCommands(WarriorClient self) : base(self)
        {
            _spotTrapsSpell  = self.Spells.KeySpells.SpotTraps;
            _spotTrapsStatus = self.Status.SpotTraps;

            Attacks = new WarriorAttackCommands(self);
            Buffs   = new WarriorBuffCommands(self);
            Heal    = new PeasantHealCommands(self);
        }
Beispiel #3
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;
        }
Beispiel #4
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;
            }
        }
        public WarriorTrainer(WarriorConfiguration config)
        {
            TkTrainerFactory.Initialize(TkClient.BasePath.Warrior.ToString());

            _clients = new ActiveClients(config.Process);

            _warrior = string.IsNullOrWhiteSpace(config.Name)
                ? _clients.GetWarrior()
                : _clients.GetWarrior(config.Name);

            _warrior.Activity.DefaultCommandCooldown = config.CommandDelay;

            Log.Debug($"Key item assignments:\n{_warrior.Inventory.KeyItems}\n");
            Log.Debug($"Key spell assignments:\n{_warrior.Spells.KeySpells}\n");

            _shouldUpdateNpcs         = new AutoHotkeyBool("shouldUpdateNpcs", false);
            _isRunning                = new AutoHotkeyToggle("^F4", "isRunning", true);
            _isPaused                 = new AutoHotkeySuspendToggle("F4", "isPaused", false);
            _shouldSpotTrapsOnAethers = new AutoHotkeyToggle("F6", "shouldSpotTrapsOnAethers", false);
            _shouldTaunt              = new AutoHotkeyToggleWithPrerequisite("F7", "shouldTaunt", false, _shouldUpdateNpcs);
            _shouldWhirlwindOnAethers = new AutoHotkeyToggle("F8", "shouldWhirlwindOnAethers", config.Whirlwind.Value);
            _shouldBerserkOnAethers   = new AutoHotkeyToggle("F9", "shouldBerserkOnAethers", config.Berserk.Value);
            _shouldAutoMelee          = new AutoHotkeyToggle("F10", "shouldAutoMelee", config.Attack.Value);

            var toggles = new[]
            {
                _isRunning,
                _isPaused,
                _shouldTaunt,
                _shouldWhirlwindOnAethers,
                _shouldBerserkOnAethers,
                _shouldAutoMelee,
                _shouldSpotTrapsOnAethers
            };

            _ahk = AutoHotkeyEngine.Instance;
            _ahk.LoadToggles(toggles);
        }
Beispiel #6
0
 /// <summary>
 /// Assigns attack spells from the Warrior's spell inventory.
 /// </summary>
 /// <param name="self">The game client data for the Warrior.</param>
 protected PeasantAttackCommands(WarriorClient self)
 {
     Self     = self;
     ZapSpell = self.Spells.KeySpells.Zap;
 }
 /// <summary>
 /// Assigns spells from the Warrior's spell inventory.
 /// </summary>
 /// <param name="self">The game client data for the Warrior.</param>
 public FighterCommands(WarriorClient self) : base(self)
 {
 }