/// <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); }
/// <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); }
/// <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; }
/// <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); }
/// <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) { }