• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[Trigger] Ayuda de detonadoes

Status
Not open for further replies.
Level 39
Joined
Feb 27, 2007
Messages
5,019
In general trying to translate your post into english is necessary to get help on this forum. Also this forum you posted in here is the correct forum for trigger questions, but where your other post is (Warcraft Town Hall) is not.

The problem is there's an infinite loop that happens when Talion has the sword, which causes your game to crash. The first If-Then-Else block checks if he has the sword; if yes (Entonces: Acciones) it runs Arena and turns off StopGP and Mis01; if no (Otros: Acciones) it does nothing. Then the second If-Then-Else block checks if he doesn't have the sword; if yes (Entonces) it displays a message and shows a cinematic transmission; if no (Otros) it runs the entire trigger again. When Talion has the sword the first If Condition evaluates to "yes the conditions are satisfied" and so runs the first set of Then actions; then the second If Condition is check which evaluates to "no the conditions are not satisfied" so it runs the second set of Else actions... which tells the trigger to run again, which evaluates the same way and tells the trigger to run again, which evaluates the same way and tells the trigger to run again, etc.

You can fix this by reducing your logic to only be one If-Then-Else with the appropriate actions in either the Then or the Else

  • Events
    • Unit - A unit comes within 256.00 of Soldado raso 0025 <gen>
  • Conditions
    • (Entering Unit) equal to Talion
  • Actions
    • If (All conditions are true) then do (Then actions) else do (Else actions)
      • If - Conditions
        • Talion has Espada del Soldado 0034 <gen>
      • Then - Actions
        • Trigger - Run Arena <gen> (Checking conditions)
        • Trigger - Turn off StopGP <gen>
        • Trigger - Turn off Mis01 <gen>
      • Else - Actions
        • -------- display message --------
        • -------- play transmission from the unit --------
I'm not sure I understand why you're trying to run the trigger again if Talion has the sword, but if you can explain what you were trying to do we can help you figure out how to do that. Another thing that confuses me is the condition you have used in the "Arena" trigger. If the trigger is initially turned off (Activado del principio is not checked) then trying to run the trigger via Trigger - Run Arena <gen> (checking conditions) won't do anything because Arena will fail its conditions (because the trigger is not on). Perhaps you're confused as to what "checking conditions" actually means? Also why is Arena initially off if the only event for it is an Elapsed Game Time is 0.01 seconds? Maybe it was for testing purposes?
 
Level 4
Joined
Sep 27, 2018
Messages
52
In general trying to translate your post into english is necessary to get help on this forum. Also this forum you posted in here is the correct forum for trigger questions, but where your other post is (Warcraft Town Hall) is not.

The problem is there's an infinite loop that happens when Talion has the sword, which causes your game to crash. The first If-Then-Else block checks if he has the sword; if yes (Entonces: Acciones) it runs Arena and turns off StopGP and Mis01; if no (Otros: Acciones) it does nothing. Then the second If-Then-Else block checks if he doesn't have the sword; if yes (Entonces) it displays a message and shows a cinematic transmission; if no (Otros) it runs the entire trigger again. When Talion has the sword the first If Condition evaluates to "yes the conditions are satisfied" and so runs the first set of Then actions; then the second If Condition is check which evaluates to "no the conditions are not satisfied" so it runs the second set of Else actions... which tells the trigger to run again, which evaluates the same way and tells the trigger to run again, which evaluates the same way and tells the trigger to run again, etc.

You can fix this by reducing your logic to only be one If-Then-Else with the appropriate actions in either the Then or the Else

  • Events
    • Unit - A unit comes within 256.00 of Soldado raso 0025 <gen>
  • Conditions
    • (Entering Unit) equal to Talion
  • Actions
    • If (All conditions are true) then do (Then actions) else do (Else actions)
      • If - Conditions
        • Talion has Espada del Soldado 0034 <gen>
      • Then - Actions
        • Trigger - Run Arena <gen> (Checking conditions)
        • Trigger - Turn off StopGP <gen>
        • Trigger - Turn off Mis01 <gen>
      • Else - Actions
        • -------- display message --------
        • -------- play transmission from the unit --------
I'm not sure I understand why you're trying to run the trigger again if Talion has the sword, but if you can explain what you were trying to do we can help you figure out how to do that. Another thing that confuses me is the condition you have used in the "Arena" trigger. If the trigger is initially turned off (Activado del principio is not checked) then trying to run the trigger via Trigger - Run Arena <gen> (checking conditions) won't do anything because Arena will fail its conditions (because the trigger is not on). Perhaps you're confused as to what "checking conditions" actually means? Also why is Arena initially off if the only event for it is an Elapsed Game Time is 0.01 seconds? Maybe it was for testing purposes?


Okay thank you very much! Now, if the trigger is going well for me, it is that I am very noob in this of the triggers.
It is my first time in this forum and I was not sure where to publish it and I sent it to the Warcraft City Council because I had not realized that the Forum of triggers was there and then I sent it to the correct one.
 
Last edited:
Status
Not open for further replies.
Top