public override void FindTarget() { WaypointFollower.FollowWaypoints(true); // Look for target Input.KeyPress(VirtualKeyCode.TAB); Helper.WaitSeconds(0.1); // Found a target if (Api.PlayerData.PlayerHasTarget) { bool validEnemy = Api.PlayerData.TargetHealthPercentage > 99.9 && !Api.PlayerData.TargetInCombat && !Api.PlayerData.IsTargetPlayer && Api.PlayerData.IsInFarRange && !Api.PlayerData.IsInCloseRange; if (validEnemy && Api.PlayerData.PlayerMana >= 20) { WaypointFollower.StopFollowingWaypoints(); // PewPew Wrath Helper.WaitSeconds(1); Input.KeyPress(VirtualKeyCode.VK_2); Helper.WaitSeconds(1.75); Input.KeyPress(VirtualKeyCode.VK_2); Helper.WaitSeconds(1.75); } } }
private static void RegenerateVitals() { if (CheckCombat()) { return; } if (CheckDead()) { return; } if (m_InitializeAction) { WaypointFollower.StopFollowingWaypoints(); Helper.WaitSeconds(1); Input.KeyPress(VirtualKeyCode.VK_8); Helper.WaitSeconds(RegisterDelay); Input.KeyPress(VirtualKeyCode.VK_9); Helper.WaitSeconds(RegisterDelay); m_WowClassAutomater.RegenerateVitals(); m_InitializeAction = false; } else if (Api.PlayerData.PlayerHealth == Api.PlayerData.MaxPlayerHealth) { TransitionState(ActionMode.FindTarget); } }
private static void CheckIdle() { if (m_RelayFlag) { WaypointFollower.StopFollowingWaypoints(); Relay(); m_RelayFlag = false; } else if (m_RemoteStopFlag) { if (!m_Idle) { WaypointFollower.StopFollowingWaypoints(); m_PreviousActionMode = m_CurrentActionMode; } m_CurrentActionMode = ActionMode.RemoteStop; m_Idle = true; } else if (!Api.PlayerData.IsWowForeground) { if (!m_Idle) { WaypointFollower.StopFollowingWaypoints(); m_PreviousActionMode = m_CurrentActionMode; } m_CurrentActionMode = ActionMode.WaitingForWow; m_Idle = true; } else if (!Api.PlayerData.Found) { if (!m_Idle) { WaypointFollower.StopFollowingWaypoints(); m_PreviousActionMode = m_CurrentActionMode; } m_CurrentActionMode = ActionMode.WaitingForAddon; m_Idle = true; } else if (!Api.PlayerData.Start) { if (!m_Idle) { WaypointFollower.StopFollowingWaypoints(); m_PreviousActionMode = m_CurrentActionMode; } m_CurrentActionMode = ActionMode.ReadyToStart; m_Idle = true; } else if (m_Idle) { m_CurrentActionMode = m_PreviousActionMode; m_Idle = false; } }
private static void Revive() { if (m_NoDead) { return; } if (m_InitializeAction) { List <Waypoint> reviveWaypoints = new List <Waypoint>(); reviveWaypoints.AddRange(m_ReviveWaypoints); reviveWaypoints.AddRange(m_PathWaypoints); WaypointFollower.SetWaypoints(reviveWaypoints); Helper.WaitSeconds(3.5); Input.MoveMouseTo(XReviveButtonLocation, YReviveButtonLocation); Helper.WaitSeconds(RegisterDelay); Input.LeftClick(); Helper.WaitSeconds(1.0); m_ReviveSw.Start(); m_InitializeAction = false; } WaypointFollower.FollowWaypoints(true); if (m_ReviveSw.ElapsedMilliseconds > 1000) { Input.LeftClick(); m_ReviveSw.Restart(); } if (Api.PlayerData.PlayerHealth > 1) { WaypointFollower.StopFollowingWaypoints(); TransitionState(ActionMode.RegenerateVitals); m_ReviveSw.Stop(); m_Resetwaypoints = true; Helper.WaitSeconds(1); } }
private static void KillTarget() { if (CheckDead()) { return; } if (m_InitializeAction) { WaypointFollower.StopFollowingWaypoints(); Helper.WaitSeconds(0.5); m_InitializeAction = false; } else if (!Api.PlayerData.PlayerInCombat) { Helper.WaitSeconds(RegisterDelay); m_Potion = false; TransitionState(ActionMode.LootTarget); } else if (!Api.PlayerData.PlayerHasTarget) { // Wait } else if (!Api.PlayerData.TargetInCombat) { Input.KeyPress(VirtualKeyCode.VK_F); Helper.WaitSeconds(RegisterDelay); } else if (Api.PlayerData.TargetFaction > 0 || !Api.PlayerData.TargetTargetingPlayer) { // Wait } else if (Api.PlayerData.PlayerActionError > ActionErrorType.None && Api.PlayerData.PlayerActionError < ActionErrorType.OutOfRange) { Waddle(); Helper.WaitSeconds(0.35); } else if (!Api.PlayerData.IsInCloseRange && m_WowClassAutomater.IsMelee) { PlayerJitterizer.Jitter(); Helper.WaitSeconds(0.5); } else if (!Api.PlayerData.PlayerIsAttacking) { Input.KeyPress(VirtualKeyCode.VK_1); Helper.WaitSeconds(RegisterDelay); } else if (Api.PlayerData.PlayerHealthPercentage < 10 && !m_Potion) { Input.KeyPress(VirtualKeyCode.VK_0); m_Potion = true; } else { m_WowClassAutomater.KillTarget(); if (m_WowClassAutomater.IsMelee) { PlayerJitterizer.RandomJitter(); } } }
public override void FindTarget() { WaypointFollower.FollowWaypoints(true); if (PoisonMain.CanCastSpell && ApplyPoison) { WaypointFollower.StopFollowingWaypoints(); Helper.WaitSeconds(1.0); PoisonMain.CastSpell(); Helper.WaitSeconds(4.5); PoisonOff.CastSpell(); Helper.WaitSeconds(4.5); Input.RightClick(); return; } if (!FriendlyFlag && DontThrow) { Input.KeyPress(VirtualKeyCode.VK_P); Helper.WaitSeconds(Automater.RegisterDelay); } if (Api.PlayerData.IsTargetPlayer && !FriendlyFlag && DontThrow) { FriendlyTimer.Start(); FriendlyFlag = true; } CheckFindMode(); bool validTarget; if (FindTargetMode == RogueFindTargetMode.StealthAndThrow) { if (Stealth.CanCastSpell) { Stealth.CastSpell(); if (!AlwaysStealth) { StaleStealthTimer.Start(); } } validTarget = Api.PlayerData.PlayerHasTarget && Api.PlayerData.TargetHealthPercentage > 99.9 && !Api.PlayerData.TargetInCombat && Api.PlayerData.TargetFaction == 0 && Api.PlayerData.IsInFarRange && !Api.PlayerData.IsInCloseRange && Throw.CanCastSpell; if (validTarget) { WaypointFollower.StopFollowingWaypoints(); Helper.WaitSeconds(1); Throw.CastSpell(); Helper.WaitSeconds(2.5); } } else if (FindTargetMode == RogueFindTargetMode.Throw) { validTarget = Api.PlayerData.PlayerHasTarget && Api.PlayerData.TargetHealthPercentage > 99.9 && !Api.PlayerData.TargetInCombat && Api.PlayerData.TargetFaction == 0 && Api.PlayerData.IsInFarRange && !Api.PlayerData.IsInCloseRange && Throw.CanCastSpell; if (validTarget) { WaypointFollower.StopFollowingWaypoints(); Helper.WaitSeconds(1); Throw.CastSpell(); Helper.WaitSeconds(2.5); } } else if (FindTargetMode == RogueFindTargetMode.Stealth) { if (Stealth.CanCastSpell) { Stealth.CastSpell(); if (!AlwaysStealth) { StaleStealthTimer.Start(); } } validTarget = Api.PlayerData.PlayerHasTarget && Api.PlayerData.TargetHealthPercentage > 99.9 && !Api.PlayerData.TargetInCombat && Api.PlayerData.TargetFaction == 0 && Api.PlayerData.IsInCloseRange; if (validTarget) { if (Api.PlayerData.IsInCloseRange) { Input.KeyPress(VirtualKeyCode.VK_2); Helper.WaitSeconds(0.1); } } } else { validTarget = Api.PlayerData.PlayerHasTarget && Api.PlayerData.TargetHealthPercentage > 99.9 && !Api.PlayerData.TargetInCombat && Api.PlayerData.TargetFaction == 0 && Api.PlayerData.IsInCloseRange; if (validTarget) { Input.KeyPress(VirtualKeyCode.VK_2); Helper.WaitSeconds(0.1); } } if (!validTarget) { Target.Act(); } }