Jump to content

iMod

Elite user
  • Posts

    581
  • Joined

  • Last visited

Everything posted by iMod

  1. XML: no clue C#: // Get unit in range and lowest health float distance = 10; WoWUnit unit = ObjectManager.GetWoWUnitHostile().OrderBy(u => u.HealthPercent).FirstOrDefault(u => u.GetDistance <= distance); // Any unit? if (unit != null && unit.IsValid) { // Interact Interact.InteractGameObject(unit.GetBaseAddress); } This will target and interact with a target that is in range of 10 and has the lowest health. (untestet)
  2. Hi, ich wollte mal fragen ob es hier Leute gibt die sich mit C# und / oder WPF auskennen. Die meisten hier scheinen ja nur mit XML und dem WRobot Tool zu arbeiten =/
  3. i'm not sure if i understood the question right but if you want to use such items or spells here is an example in c# ClickOnTerrain.Spell(SpellID, this.Me.TargetObject.Position); ClickOnTerrain.Item(ItemID, this.Me.TargetObject.Position); I think it is not possible to auto detec if the item needs a cursor or not but i never took a look at such scenario.
  4. Yeah would be nice if we had a list with all changes and not just the "big" one. Like the change that there are now 10 objects in the quest profile and not 5 anymore. I'm working at some tools and it is like try and error if we have no full change list.
  5. // Get target you want to WoWUnit target = any target you want // Target the target Interact.InteractGameObject(target.GetBaseAddress, !ObjectManager.Me.GetMove); This would be one way how you target something.
  6. At the end take a look at the wowapi there is alot you can do.
  7. You tried it in a raid (not dungeon) group as leader?
  8. try it out and if yes it also should be possible to use lua(wowapi).
  9. Are addons working at that server?
  10. if i'm not wrong it is impossible if you are not able to use the wowapi. Are you playing at the offical or private server?
  11. If you want to swap, you can use the wow api http://wowwiki.wikia.com/wiki/API_SetRaidDifficulty
  12. Do you really need to swap or is it enough to reset the instance? You could use the chat plugin to reset it via lua " ResetInstances()"
  13. I see, i really have no clue about that xml stuff and its abilities. If you are able to use c# you can realize everything you want.
  14. You should maybe add some more validations like "is target in range" or "is target visible" this is kinda just the basic
  15. WoWPlayer resutarget = Party.GetParty().FirstOrDefault(p => !p.IsAlive && p.IsValid); if(resutarget != null) { // Target player Interact.InteractGameObject(resutarget.GetBaseAddress); // Use spell new Spell("SpellName").Launch(true); } This should work but not tested.
  16. Same problem here. Seems that it ignores "IsCasting".
  17. This will be my first try ;) if someone has another idea just let me know GetUnits(int range) is a method that returns a list of all mobs around you. The goal is to check those mobs if we own 100% threat and if not we will interact with them if we still don't have them in the target. /// <summary> /// Switch to the target with the lowest threat /// </summary> /// <param name="range">The range we want to search for</param> public static void SwitchTargetByThread(int range) { Dictionary<WoWUnit, int> targets = GetUnits(range).ToDictionary(t => t, t => GetThreat(t)); targets.OrderBy(t => t.Value); // Skip? if (targets.All(t => t.Value == 100)) { return; } // Get target with the lowest threat KeyValuePair<WoWUnit, int> target = targets.FirstOrDefault(); // Any target and is not our current target? if (target.Key != null && !target.Key.IsMyTarget) { Logging.WriteDebug($"Switching target: {target.Value}% threat."); // Target the mob Interact.InteractGameObject(target.Key.GetBaseAddress, !ObjectManager.Me.GetMove); } } /// <summary> /// Switch to the target with the lowest threat /// </summary> /// <param name="range">The range we want to search for</param> public static void SwitchTargetByThread(int range) { Dictionary<WoWUnit, int> targets = GetUnits(range).ToDictionary(t => t, t => GetThreat(t)); targets.OrderBy(t => t.Value); // Skip? if (targets.All(t => t.Value == 100)) { return; } // Get target with the lowest threat KeyValuePair<WoWUnit, int> target = targets.FirstOrDefault(); // Any target and is not our current target? if (target.Key != null && !target.Key.IsMyTarget) { Logging.WriteDebug($"Switching target: {target.Value}% threat."); // Validate target if (target.Key.IsValid && !target.Key.IsDead) { // Target the mob Interact.InteractGameObject(target.Key.GetBaseAddress, !ObjectManager.Me.GetMove); } } }
  18. I'm trying to get the UnitID from my UnitObject to get the threat public static int GetThreat(WoWUnit target) { return Lua.LuaDoString<int>($"local _, _, threatpct, _, _ = UnitDetailedThreatSituation(\"player\", \"{target.Guid}\"); return threatpct;"); } Hope someone can give me a clue what Guid means and BaseAddress.
  19. Well in the theory you could create a plugin that checks the durability of each equiped item in a specified interval Lua: current, maximum = GetContainerItemDurability(bag, slot); Pseudo: foreach item if the item is under durability % use hearthstone
  20. 1-is it work 64 bit -> No (Edit. Thought you mean the host system) 2-is the combat routines good -> If you have special needs you need to create your own one. 3-is it make fps down ? Sometimes but not verry often
  21. You could ask BetterSister to create you something for money or maybe someone else is able to work for you. Nothing is for free you know? ;)
  22. Just post it and let the community check it ;) i'm just interessted at 3.3.5a stuff.
×
×
  • Create New...