Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
Chaosium Floodeur prématuré
Inscrit le: 31 Aoû 2007 Messages: 606 Sujets: 12 Spécialité en worldedit: Enchanteur des enchantements.
|
Posté le: 06/03/11 03:12 Sujet du message: Déclencheur de DoT multi-instanciable |
|
|
Salut,
Ça fait un petit moment que je bloque sur un problème. J'utilise plusieurs sorts de dégâts périodiques augmentés par déclencheur, jusque là pas de problème. Par exemple, j'utilise un truc simple comment suivant :
Ça baigne, la cible prend 100 dégâts toutes les 2 secondes pendant 20 secondes au total. (100 étant un exemple, sinon je m'embêterai pas à le faire par déclencheur x) ). Seulement le problème, c'est que je peux l'appliquer qu'à une seule unité à la fois, or j'aimerai qu'on puisse lancer le sort sur plusieurs unités à la fois.
Bien sûr, j'imagine qu'il faut mettre des déploiements, mais je n'arrive pas à trouver un système qui puisse garder en mémoire chaque unité touchée. J'avais essayé de mettre un entier au début du déclo, et chaque fois de faire entier+1, mais ça revient au même, une seule unité est touchée à la fois.
Est-ce qu'il existe un moyen de réaliser ça en GUI?
Merci d'avances pour vos réponses. _________________
|
|
Revenir en haut |
|
|
Crowolf Animateur
Inscrit le: 21 Avr 2008 Messages: 1607 Sujets: 81 Spécialité en worldedit: Utiliser le travail des autres Médailles: 3 (En savoir plus...)
|
Posté le: 06/03/11 13:00 Sujet du message: |
|
|
Salut, pour ma map Confrontation que j'avais recommencée en vjass, j'avais trouvé un excellent tuto pour les dot
http://www.wc3c.net/showthread.php?t=100953
C'est applicable pour plein de truc utiles.
[edit] mais c'est pas en gui... En gui, ça complique énormément... _________________
|
|
Revenir en haut |
|
|
Tirlititi
Inscrit le: 21 Fév 2010 Messages: 1785 Sujets: 22 Spécialité en worldedit: La modestie Médailles: 1 (En savoir plus...)
|
Posté le: 06/03/11 13:26 Sujet du message: |
|
|
Tu peux le faire avec des timers et une hashtable. Je garantis pas que les actions aient exactement ces noms puisque je n'ai pas encore récupéré WE :
Gui: | Trigger: Actions |
Timer est un compte à rebours avec un déploiement de MAXINDEX.
Index est un entier qui commence à 0.
Hashtable est une table de hachage que tu auras initialisé.
Dans un autre déclencheur, tu mets comme évènements "tous tes timer de 0 à MAXINDEX expires" (tu peux le faire par déclencheur en initialisation avec une boucle et l'action "Trigger - Add event"), tu récupères les données avec "Set Lanceur = Load 0 of (handle Id of (Get expired timer)) in Hashtable", etc..., et tu réduis de 1 la donnée n°3 (et tu fais ce que tu veux sur la donnée n°2, les dégâts). Lorsqu'elle atteint 0, tu arrêtes le timer.
Il pourra donc y avoir MAXINDEX + 1 sorts en même temps.
Sinon, il faut utiliser l'évènement "Initie l'effet d'une compétence" dans l'énorme majorité des cas.
EDIT : Grillé par Crowolf que je plussoi : c'est vraiment plus facile en jass/vjass et c'est surtout plus logique (y'a pas à gérer les index des timers et t'as besoin que d'un seul déclo). _________________
|
|
Revenir en haut |
|
|
Chaosium Floodeur prématuré
Inscrit le: 31 Aoû 2007 Messages: 606 Sujets: 12 Spécialité en worldedit: Enchanteur des enchantements.
|
|
Revenir en haut |
|
|
profet Instanton Gravitationnel Singulier
Inscrit le: 21 Aoû 2007 Messages: 1633 Sujets: 53 Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...) Médailles: 2 (En savoir plus...)
|
Posté le: 08/03/11 02:21 Sujet du message: |
|
|
Si tu fais du jass/vjass, tu peux utiliser ma lib JBuff pour créer des buffs complexes très facilement _________________
Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70% |
|
Revenir en haut |
|
|
|