Inscrit le: 08 Sep 2013 Messages: 532 Sujets: 70 Spécialité en worldedit: GameDesign et optimisation JASS
Posté le: 06/11/14 14:26 Sujet du message: Petit Bug Surchauffe
Bonjour à tous (et aussi au passage à gisga)
Quand il à fallut adapter le sort de gisga de surchauffe, je me suis retrouvé avec un bug : la surchauffe ne se cumule pas et ne se retire pas. Voilà le trigger "adapté" :
Secret:
Gui:
Trigger:
Baisse
Evénements
Temps - Every 1.00 seconds of game time
Conditions
Actions
Groupe unité - Pick every unit in Overload_RefreshGroup and do (Actions)
Boucle - Actions
Set Overload_APosition = (Position of (Picked unit)) Set Overload_SpellLevel = ((Load 0 of (Key (Picked unit)) from Overload_Hashtable) - 1) Table de hachage - Save Overload_SpellLevel as 0 of (Key (Picked unit)) in Overload_Hashtable Unité - Create 1 Dummy for (Owner of (Picked unit)) at Overload_APosition facing Orientation bâtiment par défaut degrees Unité - Add a 0.10 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Dryade Elfe de la nuit - Abolir magie (Picked unit) Unité - Create 1 Dummy for (Owner of (Picked unit)) at Overload_APosition facing Orientation bâtiment par défaut degrees Unité - Add a 0.10 second Générique expiration timer to (Last created unit) Unité - Set level of Baisse attaque for (Last created unit) to Overload_SpellLevel Unité - Order (Last created unit) to Nécromancien mort-vivant - Faiblesse (Picked unit)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
Overload_SpellLevel Egal à 0
Alors - Actions
Groupe unité - Remove (Picked unit) from Overload_RefreshGroup Table de hachage - Clear all child hashtables of child (Key (Picked unit)) in Overload_Hashtable Unité - Create 1 Dummy for (Owner of (Picked unit)) at Overload_APosition facing Orientation bâtiment par défaut degrees Unité - Add a 0.10 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Dryade Elfe de la nuit - Abolir magie (Picked unit)
Groupe unité - Pick every unit in Overload_AttackingGroup and do (Actions)
Boucle - Actions
Set Overload_Bolean = (Load 2 of (Key (Picked unit)) from Overload_Hashtable)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
Overload_Bolean Egal à TRUE
Alors - Actions
Set Overload_ReloadTime = ((Load 1 of (Key (Picked unit)) from Overload_Hashtable) - 1) Table de hachage - Save Overload_ReloadTime as 1 of (Key (Picked unit)) in Overload_Hashtable
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
Overload_ReloadTime Egal à 0
Alors - Actions
Groupe unité - Add (Picked unit) to Overload_RefreshGroup Groupe unité - Remove (Picked unit) from Overload_AttackingGroup
Sinon - Actions
Sinon - Actions
Set Overload_ReloadTime = 2 Set Overload_Bolean = TRUE Table de hachage - Save Overload_Bolean as 2 of (Key (Picked unit)) in Overload_Hashtable Table de hachage - Save Overload_ReloadTime as 1 of (Key (Picked unit)) in Overload_Hashtable
Attaque
Evénements
Unité - A unit Est attaqué
Conditions
(Unit-type of (Attacking unit)) Egal à Destructeur
Actions
Set Overload_SpellLevel = (Load 0 of (Key (Attacking unit)) from Overload_Hashtable) Set Overload_APosition = (Position of (Attacking unit)) Set Overload_SpellLevel = (Overload_SpellLevel + 1) Table de hachage - Save Overload_SpellLevel as 0 of (Key (Attacking unit)) in Overload_Hashtable Set Overload_ReloadTime = 2 Set Overload_Bolean = FALSE Table de hachage - Save Overload_Bolean as 2 of (Key (Attacking unit)) in Overload_Hashtable Table de hachage - Save Overload_SpellLevel as 1 of (Key (Attacking unit)) in Overload_Hashtable
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
((Attacking unit) is in Overload_AttackingGroup) Egal à TRUE
Alors - Actions
Do nothing
Sinon - Actions
Groupe unité - Add (Attacking unit) to Overload_AttackingGroup
Groupe unité - Remove (Attacking unit) from Overload_RefreshGroup Unité - Create 1 Dummy for (Owner of (Attacking unit)) at Overload_APosition facing Orientation bâtiment par défaut degrees Unité - Add a 0.10 second Générique expiration timer to (Last created unit) Unité - Order (Last created unit) to Dryade Elfe de la nuit - Abolir magie (Attacking unit) Unité - Create 1 Dummy for (Owner of (Attacking unit)) at Overload_APosition facing Orientation bâtiment par défaut degrees Unité - Add a 0.10 second Générique expiration timer to (Last created unit) Unité - Set level of Baisse attaque for (Last created unit) to Overload_SpellLevel Unité - Order (Last created unit) to Nécromancien mort-vivant - Faiblesse (Attacking unit)
Je pense que gisga est le mieux placé pour me dire où-est-ce que ça coince.
Ps : il y à 1 hashtable commune pour les capacités surchauffe et Chaîne de lenteur, peut-être que cela viens de là ? _________________
"L'homme qui meurt est un astre couchant, qui se lève plus radieux sur un autre hémisphère"
"On entends le fracas des Arbres qui tombent, mais pas le murmure de ceux qui poussent"
Inscrit le: 30 Oct 2013 Messages: 284 Sujets: 21 Spécialité en worldedit: Spellmaker
Posté le: 06/11/14 18:44 Sujet du message:
Je pense que ça doit venir de là :p
Mais je ne peux pas te l'assurer
De plus, je ne sais pas si utiliser "Remove Buff" supprime aussi l'effet lié au buff par la même occasion :/ _________________
Le vaste monde vous entoure de tous côtés ; vous pouvez vous enclore, mais vous ne pouvez éternellement le tenir en dehors de vos clôtures.
John Ronald Reuel Tolkien.
Hâtez-vous lentement, et sans perdre courage,
Vingt fois sur le métier remettez votre ouvrage.
Polissez-le sans cesse, et le repolissez.
Ajoutez quelquefois, et souvent effacez.
Inscrit le: 30 Oct 2013 Messages: 284 Sujets: 21 Spécialité en worldedit: Spellmaker
Posté le: 06/11/14 19:26 Sujet du message:
Je pense oui.
Mais je croyais avoir déjà fait deux hashtable, une pour chaque capacité :/ _________________
Le vaste monde vous entoure de tous côtés ; vous pouvez vous enclore, mais vous ne pouvez éternellement le tenir en dehors de vos clôtures.
John Ronald Reuel Tolkien.
Hâtez-vous lentement, et sans perdre courage,
Vingt fois sur le métier remettez votre ouvrage.
Polissez-le sans cesse, et le repolissez.
Ajoutez quelquefois, et souvent effacez.
Page 1 sur 1 La question posée dans ce topic a été résolue !
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum