-
Posts
332 -
Joined
Content Type
Forums
Articles
Bug Tracker
Downloads
Store
Everything posted by Apexx
-
Correct, it's using the Radar3D. If it's drawing to multiple things without you coding it in, check the settings Other, there's an arrow to pull up another menu with many other items to draw. Maybe see if they are on?
-
I don't unfortunately, and it's getting late here.
-
Inside WRobot, in the list on the left, click Map -> is Radar3D On?
-
You will want to test if the object or unit you are drawing to is valid, alive, within a specific range, etc. It will draw it on on screen as long your requirements are met. Sorry - I should say, that is the object, or player, NPC is alive, valid, exists - and IF your conditionals are met (ie: within close distance, is an herb, or mineral vein) it will continuously draw as long as it is within the game's max view distance.
-
If you are wanting to use Radar3D for a plugin, you will need to include the Plugin interface... using robotManager.Helpful; using System; using wManager.Plugin; using wManager.Wow.Helpers; public class Radar3DExample : IPlugin { private bool _isLaunched; public void Initialize() { _isLaunched = true; Radar3D.Pulse(); Radar3D.OnDrawEvent += Radar3DOnDrawEvent; Logging.Write("Started"); } public void Dispose() { try { Radar3D.OnDrawEvent -= Radar3DOnDrawEvent; } catch { } _isLaunched = false; Logging.Write("Stopped"); } public void Settings() { throw new NotImplementedException(); } private void Radar3DOnDrawEvent() { // Will make sure player is in game and connected, alive and the product is not paused if (_isLaunched && Conditions.InGameAndConnectedAndAliveAndProductStartedNotInPause) { try { /* DrawCircle center => Center of the object radius => the size of the circle color => color of the circle (Using struct System.Drawing.Color ARGB - Alpha, Red, Green, Blue) alpha => 0 = transparent | 255 100% opaque Radar3D.DrawCircle(Vector3 center, float radius, Color color, bool filled = false, alpha = 255) DrawLine from => where to start the line from to => where to draw the line to color => color of the circle (Using struct System.Drawing.Color ARGB - Alpha, Red, Green, Blue) alpha => 0 = transparent | 255 100% opaque Radar3D.DrawLine(Vector3 from, Vector3 to, Color color, alpha = 255) */ } catch (Exception e) { Logging.WriteError("Radar3DOnDrawEvent() Error: " + Environment.NewLine + e); return; } } } }
-
Hello Icesythe7, I believe you can just leave the fight class combo box empty if you do not wish to use any fight class. If you want to draw circles, lines, and or text, you want to use wManager.Wow.Helpers.Radar3D. Have a look at my plugin, WRadar.
-
private static List<string> MagicEffects = new List<string>(); MagicEffects.Add("Amplify Magic"); MagicEffects.Add("Avenging Wrath"); MagicEffects.Add("Barkskin"); MagicEffects.Add("Bloodlust"); MagicEffects.Add("Dampen Magic"); MagicEffects.Add("Divine Favor"); MagicEffects.Add("Earth Shield"); MagicEffects.Add("Fade"); MagicEffects.Add("Fel Domination"); MagicEffects.Add("Hand of Protection"); MagicEffects.Add("Heroism"); MagicEffects.Add("Ice Barrier"); MagicEffects.Add("Innervate"); MagicEffects.Add("Lightning Shield"); MagicEffects.Add("Mana Shield"); MagicEffects.Add("Nether Protection"); MagicEffects.Add("Pain Suppression"); MagicEffects.Add("Power Infusion"); MagicEffects.Add("Power Word: Shield"); MagicEffects.Add("Prayer of Mending"); MagicEffects.Add("Presence of Mind"); MagicEffects.Add("Regrowth"); MagicEffects.Add("Rejuvenation"); MagicEffects.Add("Renew"); MagicEffects.Add("Sacrifice"); MagicEffects.Add("Thorns"); MagicEffects.Add("Water Shield"); foreach(string effect in MagicEffects) { if (ObjectManager.Target.HaveBuff(new Spell(effect).Ids)) { _spellName.Launch(); Logging.WriteDebug("*** Dispelled " + effect + " from " + ObjectManager.Target.Name + " ***"); Thread.Sleep(SpellManager.GlobalCooldownTimeLeft() + Usefuls.Latency); return true; } } Could try that..
-
No problem!
-
I do believe Seminko did not define unitToAttack. Simply replace if (lowestHP != null && unitToAttack.IsValid && unitToAttack.IsAlive && !lowestHP.IsMyTarget) // if the lowest hp mob is valid, alive and NOT your current target with: if (lowestHP != null && lowestHP.IsValid && lowestHP.IsAlive && !lowestHP.IsMyTarget) // if the lowest hp mob is valid, alive and NOT your current target
-
Herb nodes are getting ignored after unsuccessful attempt
Apexx replied to falder's topic in Developers assistance
Hmm, I have not tested this, and it's probably more or-less pseudo code: Will use a list of objects from WRobot Settings - List Harvest objects and while the player is more than 1 yard (Distance may need tweaking) from the nearest object, will disable all combat until the player distance is within the 1 yard. It will allow for combat if necessary, and while the object is not null and is valid, will interact with it. In combat, you may move a lot or a little depending on your fight class, and other plugins, so the distance will most certainly need to played with. There may be errors here, but it's just a thought. var objectsHarvestIds = new List<WoWGameObject>(); objectsHarvestIds.AddRange(ObjectManager.GetWoWGameObjectById(wManager.wManagerSetting.CurrentSetting.ListHarvest).OrderByDescending(o => o.GetDistance)); if (objectsHarvestIds.Count <= 0) return; try { if (objectsHarvestIds != null) { var objectToHarvest = objectsHarvestIds.Where(o => o != null && o.IsValid).OrderBy(o => ObjectManager.Me.Position.DistanceTo(o.Position)).FirstOrDefault(); if (objectToHarvest != null && objectToHarvest.IsValid) { while (Vector3.Distance(ObjectManager.Me.Position, objectToHarvest.Position) > 1.0f) { Conditions.ForceIgnoreIsAttacked = true; } while (Vector3.Distance(ObjectManager.Me.Position, objectToHarvest.Position) <= 1.0f) { Conditions.ForceIgnoreIsAttacked = false; while (objectToHarvest != null && objectToHarvest.IsValid) { Interact.InteractGameObject(objectToHarvest.GetBaseAddress); } } } } Conditions.ForceIgnoreIsAttacked = false; } catch (Exception e) { Logging.WriteError("HarvestGameObject Error!" + Environment.NewLine + e); } -
If you are using WRotaion, I don't believe it should follow anyone, unless it is predefined in the fight class you may be using to follow tank or healer.
-
Sorry I don't play Vanilla. All Path Finding settings are default. I don't have a ranged class to try it with, and I am not sure how Vanilla might defer using built in WRobot functions.. // Debuff 20549 = War Stomp | 19975 = Entangling Roots while (ObjectManager.Target.IsValid && (ObjectManager.Target.HaveBuff(20549) || ObjectManager.Target.HaveBuff(19975)) && Vector3.Distance(ObjectManager.Me.Position, ObjectManager.Target.Position) < 6) { // Start Movement Move.StrafeLeft(Move.MoveAction.PressKey, 2250); while (ObjectManager.Me.GetMove) Thread.Sleep(10); // Stop Movement and Face Target MovementManager.StopMove(); MovementManager.Face(ObjectManager.Target); MovementManager.StopMove(); // Launch spell(s) here... } With WRotation it works fine (Manage Character Movement disabled), Automaton, Grinder, Quester etc should work, but with melee feral druid, it kept trying to run to the target for my range. The automated bot actions are a bit different as the bot continues the character movement on its own. public float Range { get { return 4.95f; } } Maybe someone else can chime in on this. I am at a loss @Seminko. Sorry.
-
Short Video Demonstration // Debuff 20549 = War Stomp | 19975 = Entangling Roots while (ObjectManager.Target.IsValid && (ObjectManager.Target.HaveBuff(20549) || ObjectManager.Target.HaveBuff(19975)) && Vector3.Distance(ObjectManager.Me.Position, ObjectManager.Target.Position) < 6) { Move.StrafeLeft(Move.MoveAction.PressKey, 1500); MovementManager.Face(ObjectManager.Target); }
-
It simply checks the distance between the player and player target. If the distance between is < 8 yards, it will back pedal. ManageMovement is a boolean option in my fight class settings. I have not tried strafing, it would just seem pointless to strafe when I can achieve greater distance just back pedaling and not have to worry about character rotation.
-
I don't understand the problem really. I use the following for my hunter fight class without any OnEvent methods: if (!MyTarget.IsTargetingMe && Vector3.Distance(Me.Position, MyTarget.Position) < 8 && HunterSettings.CurrentSetting.ManageMovement) Move.Backward(Move.MoveAction.PressKey, 800); And it works flawlessly.
-
Lua.RunMacroText("/stopcasting"); Maybe something like this: private readonly Spell DivineShield = new Spell("Divine Shield"); // Divine Shield if (ObjectManager.Me.HealthPercent < 30 && ObjectManager.Me.IsCast && DivineShield.KnownSpell && DivineShield.IsSpellUsable) { Lua.RunMacroText("/stopcasting"); DivineShield.Launch(); }
-
Just recently, I cannot seem to figure out what the bot continues to enable Click to move in my game settings! It's so aggravating! I mainly use WRotation and have enabled, Disable game option 'Click to move' with WRotation. and no matter what, it ALWAYS becomes enabled again. The only two plugins I am using currently are, Settings Backup and my WRadar. Am I missing another setting somewhere?
-
Yeah I don't know. I somewhat give up on it for now. People will just have to pause/stop the bot and go to Plugin Settings to add/remove items from the collections list for now. Thanks though, @iMod