PierreDeRosette 13 Posted January 10, 2016 Share Posted January 10, 2016 Bonjour Petite curiosité : Je construit une liste incluant tout les hostiles, qu'ils soient Monstres, Player de faction adverse, player de la meme faction en duel ou arene, ainsi que les totems de soin et champignons magiques adverses hostiles. Pour la partie player de la meme faction, j'utilise ceci : public static List<WoWUnit> GetAdversaires() { List<WoWUnit> Adversaires = new List<WoWUnit>(); List<WoWUnit> AdvPve = ObjectManager.GetWoWUnitHostile(); foreach (var pve in AdvPve) { if (pve.IsValid && pve.IsAlive && pve.Reaction <= Reaction.Unfriendly) Adversaires.Add(pve); } List<WoWPlayer> allPlayers = ObjectManager.GetObjectWoWPlayer(); foreach (var player in allPlayers) { if (player.IsAlive && Lua.LuaDoString<bool>("return UnitCanAttack('player', 'target')")) Adversaires.Add(player); } return Adversaires; } Je n'ai pas fini, mais j'ai une question : pour la partie suivante : if (player.IsAlive && Lua.LuaDoString<bool>("return UnitCanAttack('player', 'target')")) on utilise du lua dans une partie de programme qui est très souvent rafraichie. Est-ce que ces nombreuses sollicitations en lua risquent d’être remarquées par Blizzard ? Merki ^^ Link to comment https://wrobot.eu/forums/topic/2591-question-sur-les-listes/ Share on other sites More sharing options...
Droidz 2738 Posted January 11, 2016 Share Posted January 11, 2016 Salut, Le problème est surtout que ton code LUA te dit si la "cible actuelle" est attaquable, mais tu ne sélectionnes pas de cible. Pour que ça fonctionne, il faudrait un code du style: List<WoWPlayer> allPlayers = ObjectManager.GetObjectWoWPlayer(); foreach (var player in allPlayers) { if (player.IsAlive) { wManager.Wow.Helpers.Interact.InteractGameObject(player.GetBaseAddress); if (Lua.LuaDoString<bool>("return UnitCanAttack('player', 'target')")) Adversaires.Add(player); } } Mais ce n’est pas pratique (ça va changer de cible souvent, et si c'est appelé fréquemment ce sera injouable). Utiliser beaucoup de code lua n'a pas d'importance (temps que ça ne ralentit pas le bot et le jeu, et que la fonction lua ne fait pas appel au serveur de wow (qu'elle reste en local)) Link to comment https://wrobot.eu/forums/topic/2591-question-sur-les-listes/#findComment-11801 Share on other sites More sharing options...
PierreDeRosette 13 Posted January 11, 2016 Author Share Posted January 11, 2016 Merci pour ta reponse :) Oui je ne fait pas de selection. C'est volontaire. C'est une liste pour savoir combien d'hostiles m'entourent, Y COMPRIS les hostiles de la meme faction que moi (Rencontres en duel ou arene). Ceux la echappent a toute les listes et je n'ai rien d'autre que ce petit code lua pour les reperer les adversaire de meme faction en duel. Et tu a raison, j'ai deja testé la selection, et c'est tres vite ingerable ^^ Cette liste me servira (apres l'avoir complete avec IsCast ou isTargetingMe) pour reagir en declenchant des sorts de protection au bon moment et sera utile aussi bien en Pve qu'en duel, arene, raid.... Ma seule inquietude etait que, avec un grand nombre de raffraichissement utilisant le code lua, une alerte soit declenchée coté serveur wow :) Merci de m avoir rassure Link to comment https://wrobot.eu/forums/topic/2591-question-sur-les-listes/#findComment-11808 Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now