Another problem about trigger

CuteCumber

Member
Reaction score
4
Description: Thundera dashes towards his facing direction, leaving a path of lightning and an image. Thundera's dash will deal damage along his path. After 2 seconds, his image will merge with him, dealing damage along its path too.

The thing is, it fires wrongly after the first cast. And the lightning effect does not appear.

Trigger:
  • Thunder Dash
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to (==) Thunder Dash
    • Actions
      • Set TDCaster[1] = (Triggering unit)
      • Set TDCasterPoint[1] = (Position of TDCaster[1])
      • Set TDAngle[1] = (Facing of TDCaster[1])
      • Set TDDistance[1] = 0.00
      • Set TDN[1] = 800.00
      • Unit - Turn collision for TDCaster[1] Off
      • Unit - Pause TDCaster[1]
      • Unit - Create 1 Thundera's Image for (Owner of TDCaster[1]) at TDCasterPoint[1] facing TDAngle[1] degrees
      • Set TDCaster[2] = (Last created unit)
      • Set TDCasterPoint[2] = (Position of TDCaster[2])
      • Animation - Change TDCaster[2]'s vertex coloring to (100.00%, 100.00%, 100.00%) with 50.00% transparency
      • Lightning - Create a Chain Lightning - Primary lightning effect from source TDCasterPoint[1] to target TDCasterPoint[2]
      • Sound - Play LightningBolt <gen> at 100.00% volume, located at TDCasterPoint[1] with Z offset 0.00
      • Trigger - Turn on Thunder Dash 1 Effect <gen>


Trigger:
  • Thunder Dash Timer
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TDTimer Equal to (==) 2.00
        • Then - Actions
          • Set TDTimer = 0.00
          • Set TDCasterPoint[1] = (Position of TDCaster[1])
          • Set TDCasterPoint[2] = (Position of TDCaster[2])
          • Set TDAngle[2] = (Angle from TDCasterPoint[2] to TDCasterPoint[1])
          • Set TDN[2] = (Distance between TDCasterPoint[2] and TDCasterPoint[1])
          • Unit - Turn collision for TDCaster[2] Off
          • Unit - Pause TDCaster[2]
          • Trigger - Turn off (This trigger)
          • Trigger - Turn on Thunder Dash 2 Effect <gen>
        • Else - Actions
          • Set TDTimer = (TDTimer + 0.01)
          • Set TDCasterPoint[1] = (Position of TDCaster[1])
          • Lightning - Move TDLightning to source TDCasterPoint[1] and target TDCasterPoint[2]


Trigger:
  • Thunder Dash 1 Effect
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TDDistance[1] Greater than or equal to (>=) TDN[1]
        • Then - Actions
          • Unit - Turn collision for TDCaster[1] On
          • Unit - Unpause TDCaster[1]
          • Custom script: call RemoveLocation(udg_TDCasterPoint[1])
          • Trigger - Turn off (This trigger)
          • Trigger - Turn on Thunder Dash Timer <gen>
        • Else - Actions
          • Set TDCasterPoint[1] = (Position of TDCaster[1])
          • Set TDMove[1] = (TDCasterPoint[1] offset by 50.00 towards TDAngle[1] degrees)
          • Set TDDistance[1] = (TDDistance[1] + 50.00)
          • Unit - Move TDCaster[1] instantly to TDMove[1]
          • Lightning - Move TDLightning to source TDCasterPoint[1] and target TDCasterPoint[2]
          • Unit Group - Pick every unit in (Units within 200.00 of TDCasterPoint[1] matching ((((Matching unit) is A structure) Equal to (==) False) and ((((Matching unit) is alive) Equal to (==) True) and (((Matching unit) belongs to an enemy of (Owner of TDCaster[1])) Equal to (==) True)))) and do (Actions)
            • Loop - Actions
              • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) is in TDGroup[1]) Not equal to (!=) True
                • Then - Actions
                  • Set TDPickedUnitPoint[1] = (Position of (Picked unit))
                  • Unit Group - Add (Picked unit) to TDGroup[1]
                  • Unit - Cause TDCaster[1] to damage (Picked unit), dealing (40.00 x (Real((Level of Thunder Dash for TDCaster[1])))) damage of attack type Spells and damage type Normal
                  • Special Effect - Create a special effect at TDPickedUnitPoint[1] using Abilities\Weapons\Bolt\BoltImpact.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Custom script: call RemoveLocation(udg_TDPickedUnitPoint[1])
                • Else - Actions
          • Custom script: call RemoveLocation(udg_TDCasterPoint[1])
          • Custom script: call RemoveLocation(udg_TDMove[1])


Trigger:
  • Thunder Dash 2 Effect
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TDN[2] Less than (<) 50.00
        • Then - Actions
          • Unit - Remove TDCaster[2] from the game
          • Custom script: call RemoveLocation(udg_TDCasterPoint[1])
          • Custom script: call RemoveLocation(udg_TDCasterPoint[2])
          • Trigger - Turn off (This trigger)
        • Else - Actions
          • Set TDCasterPoint[2] = (Position of TDCaster[2])
          • Set TDMove[2] = (TDCasterPoint[2] offset by 50.00 towards TDAngle[2] degrees)
          • Unit - Move TDCaster[2] instantly to TDMove[2]
          • Lightning - Move TDLightning to source TDCasterPoint[1] and target TDCasterPoint[2]
          • Unit Group - Pick every unit in (Units within 200.00 of TDCasterPoint[2] matching ((((Matching unit) is A structure) Equal to (==) False) and ((((Matching unit) is alive) Equal to (==) True) and (((Matching unit) belongs to an enemy of (Owner of TDCaster[1])) Equal to (==) True)))) and do (Actions)
            • Loop - Actions
              • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) is in TDGroup[2]) Not equal to (!=) True
                • Then - Actions
                  • Set TDPickedUnitPoint[2] = (Position of (Picked unit))
                  • Unit Group - Add (Picked unit) to TDGroup[2]
                  • Unit - Cause TDCaster[1] to damage (Picked unit), dealing (40.00 x (Real((Level of Thunder Dash for TDCaster[1])))) damage of attack type Spells and damage type Normal
                  • Special Effect - Create a special effect at TDPickedUnitPoint[2] using Abilities\Weapons\Bolt\BoltImpact.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Custom script: call RemoveLocation(udg_TDPickedUnitPoint[2])
                • Else - Actions
          • Custom script: call RemoveLocation(udg_TDCasterPoint[1])
          • Custom script: call RemoveLocation(udg_TDCasterPoint[2])
          • Custom script: call RemoveLocation(udg_TDMove[2])
 

Laiev

Hey Listen!!
Reaction score
188
omg other lol

well, how i say in other post, 0,01 seconds may bug your trigger, and may lag the game..

what happen in the first cast and what happen in second cast?

if you can, post a print
 

CuteCumber

Member
Reaction score
4
Here i post a replay. Maybe it can help to understand. But still why lightning effect is absent?
 

Attachments

  • Thunder Dash Test.w3g
    2.5 KB · Views: 96

Ph[o]bia

New Member
Reaction score
7
I don't know if it's the problem , but I saw

Trigger:
  • Trigger - Turn off (This trigger)


That mean Information under this won't happen. Right?
 

Komaqtion

You can change this now in User CP.
Reaction score
469
That mean Information under this won't happen. Right?

No, it means that the trigger will finish execute, and then it'll stop executing, after that... (Though it'll count as "Turned off" from the event)
 

Ph[o]bia

New Member
Reaction score
7
No, it means that the trigger will finish execute, and then it'll stop executing, after that... (Though it'll count as "Turned off" from the event)

oh ^^, but if he turn off the periodic trigger and don't turn on after , the trigger will do the actions once only?
 

Komaqtion

You can change this now in User CP.
Reaction score
469
oh ^^, but if he turn off the periodic trigger and don't turn on after , the trigger will do the actions once only?

Yeah, but as you can see he also turns triggers on in other triggers ;)

So as long as they get turned on, it should work :p
 

Komaqtion

You can change this now in User CP.
Reaction score
469
I can't see you setting this lightning to a variable...

Trigger:
  • Lightning - Create a Chain Lightning - Primary lightning effect from source TDCasterPoint[1] to target TDCasterPoint[2]
 

Laiev

Hey Listen!!
Reaction score
188
just a add lol

change the thunder dash periodic to 0,03 :D the 'dash' is very good, but the time to 'image' come to you is tooooooooooooooooooooooooooooo large lol
 

CuteCumber

Member
Reaction score
4
I had another problem now. The first slide does not damage same units on second cast. And the 2nd slide deals more damage than stated. Any solutions??
Trigger:
  • Thunder Dash
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to (==) Thunder Dash
    • Actions
      • Set TDCaster[1] = (Triggering unit)
      • Set TDCasterPoint[1] = (Position of TDCaster[1])
      • Set TDAngle[1] = (Facing of TDCaster[1])
      • Set TDDistance[1] = 0.00
      • Set TDN[1] = 800.00
      • Unit - Turn collision for TDCaster[1] Off
      • Unit - Pause TDCaster[1]
      • Unit - Create 1 Thundera's Image for (Owner of TDCaster[1]) at TDCasterPoint[1] facing TDAngle[1] degrees
      • Set TDCaster[2] = (Last created unit)
      • Set TDCasterPoint[2] = (Position of TDCaster[2])
      • Animation - Change TDCaster[2]'s vertex coloring to (100.00%, 100.00%, 100.00%) with 50.00% transparency
      • Lightning - Create a Chain Lightning - Primary lightning effect from source TDCasterPoint[1] to target TDCasterPoint[2]
      • Set TDLightning = (Last created lightning effect)
      • Sound - Play LightningBolt <gen> at 100.00% volume, located at TDCasterPoint[1] with Z offset 0.00
      • Trigger - Turn on Thunder Dash 1 Effect <gen>


Trigger:
  • Thunder Dash Timer
    • Events
      • Time - Every 0.01 seconds of game time
    • Conditions
    • Actions
      • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TDTimer Equal to (==) 2.00
        • Then - Actions
          • Set TDTimer = 0.00
          • Set TDCasterPoint[1] = (Position of TDCaster[1])
          • Set TDCasterPoint[2] = (Position of TDCaster[2])
          • Set TDAngle[2] = (Angle from TDCasterPoint[2] to TDCasterPoint[1])
          • Set TDN[2] = (Distance between TDCasterPoint[2] and TDCasterPoint[1])
          • Unit - Turn collision for TDCaster[2] Off
          • Unit - Pause TDCaster[2]
          • Trigger - Turn on Thunder Dash 2 Effect <gen>
          • Trigger - Turn off (This trigger)
        • Else - Actions
          • Set TDTimer = (TDTimer + 0.01)
          • Set TDCasterPoint[1] = (Position of TDCaster[1])
          • Lightning - Move TDLightning to source TDCasterPoint[1] and target TDCasterPoint[2]


Trigger:
  • Thunder Dash 1 Effect
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TDDistance[1] Greater than or equal to (>=) TDN[1]
        • Then - Actions
          • Unit - Turn collision for TDCaster[1] On
          • Unit - Unpause TDCaster[1]
          • Custom script: call RemoveLocation(udg_TDCasterPoint[1])
          • Custom script: call RemoveLocation(udg_TDMove[1])
          • Trigger - Turn on Thunder Dash Timer <gen>
          • Trigger - Turn off (This trigger)
        • Else - Actions
          • Set TDCasterPoint[1] = (Position of TDCaster[1])
          • Set TDMove[1] = (TDCasterPoint[1] offset by 50.00 towards TDAngle[1] degrees)
          • Set TDDistance[1] = (TDDistance[1] + 50.00)
          • Unit - Move TDCaster[1] instantly to TDMove[1], facing TDAngle[1] degrees
          • Lightning - Move TDLightning to source TDCasterPoint[1] and target TDCasterPoint[2]
          • Unit Group - Pick every unit in (Units within 200.00 of TDCasterPoint[1] matching ((((Matching unit) is A structure) Equal to (==) False) and ((((Matching unit) is alive) Equal to (==) True) and (((Matching unit) belongs to an enemy of (Owner of TDCaster[1])) Equal to (==) True)))) and do (Actions)
            • Loop - Actions
              • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) is in TDGroup[1]) Equal to (==) False
                • Then - Actions
                  • Set TDPickedUnitPoint[1] = (Position of (Picked unit))
                  • Unit Group - Add (Picked unit) to TDGroup[1]
                  • Unit - Cause TDCaster[1] to damage (Picked unit), dealing (40.00 x (Real((Level of Thunder Dash for TDCaster[1])))) damage of attack type Spells and damage type Normal
                  • Special Effect - Create a special effect at TDPickedUnitPoint[1] using Abilities\Weapons\Bolt\BoltImpact.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Custom script: call RemoveLocation(udg_TDPickedUnitPoint[1])
                • Else - Actions
          • Custom script: call RemoveLocation(udg_TDCasterPoint[1])
          • Custom script: call RemoveLocation(udg_TDMove[1])


Trigger:
  • Thunder Dash 2 Effect
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • TDN[2] Less than (<) 50.00
        • Then - Actions
          • Unit - Remove TDCaster[2] from the game
          • Lightning - Destroy TDLightning
          • Custom script: call RemoveLocation(udg_TDCasterPoint[1])
          • Custom script: call RemoveLocation(udg_TDCasterPoint[2])
          • Custom script: call RemoveLocation(udg_TDMove[2])
          • Trigger - Turn off (This trigger)
        • Else - Actions
          • Set TDCasterPoint[1] = (Position of TDCaster[1])
          • Set TDCasterPoint[2] = (Position of TDCaster[2])
          • Set TDAngle[2] = (Angle from TDCasterPoint[2] to TDCasterPoint[1])
          • Set TDN[2] = (Distance between TDCasterPoint[2] and TDCasterPoint[1])
          • Set TDMove[2] = (TDCasterPoint[2] offset by 75.00 towards TDAngle[2] degrees)
          • Unit - Move TDCaster[2] instantly to TDMove[2]
          • Lightning - Move TDLightning to source TDCasterPoint[1] and target TDCasterPoint[2]
          • Unit Group - Pick every unit in (Units within 200.00 of TDCasterPoint[2] matching ((((Matching unit) is A structure) Equal to (==) False) and ((((Matching unit) is alive) Equal to (==) True) and (((Matching unit) belongs to an enemy of (Owner of TDCaster[1])) Equal to (==) True)))) and do (Actions)
            • Loop - Actions
              • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) is in TDGroup[2]) Equal to (==) False
                • Then - Actions
                  • Set TDPickedUnitPoint[2] = (Position of (Picked unit))
                  • Unit Group - Add (Picked unit) to TDGroup[2]
                  • Unit - Cause TDCaster[1] to damage (Picked unit), dealing (40.00 x (Real((Level of Thunder Dash for TDCaster[1])))) damage of attack type Spells and damage type Normal
                  • Special Effect - Create a special effect at TDPickedUnitPoint[2] using Abilities\Weapons\Bolt\BoltImpact.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Custom script: call RemoveLocation(udg_TDPickedUnitPoint[2])
                • Else - Actions
          • Custom script: call RemoveLocation(udg_TDCasterPoint[1])
          • Custom script: call RemoveLocation(udg_TDCasterPoint[2])
          • Custom script: call RemoveLocation(udg_TDMove[2])
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top