• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

Custom Shockwave not working need help

Status
Not open for further replies.
Level 5
Joined
Aug 8, 2008
Messages
113
JASS:
I used bribe's damage detection for this... basically what im trying to do is create a ministun over time in the shape of breathe of fire.

  • Set Damage Copy
    • Events
      • Game - DamageModifierEvent becomes Equal to 1.00
    • Conditions
      • DamageEventOverride Equal to False
    • Actions
      • Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Triggering unit) Equal to (Random unit from g)) and ((Triggering unit) Equal to DamageEventTarget)
            • Then - Actions
              • Set Point = (Position of (Triggering unit))
              • Set TriggCheck = (TriggCheck + 1)
              • Set DamageEventAmount = (DamageEventAmount - DamageEventAmount)
              • Unit - Create 1 Dummy for (Owner of DamageEventSource) at Point facing (Position of (Triggering unit))
              • Set DummyTemp = (Last created unit)
              • Wait until ((DummyTemp is alive) Equal to True), checking every 0.10 seconds
              • Unit - Add Dummy Storm Bolt to DummyTemp
              • Unit - Add a 2.00 second Generic expiration timer to (Triggering unit)
              • Custom script: call RemoveLocation (udg_Point)
            • Else - Actions
      • For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))
      • Wait until (timer Equal to 60), checking every 1.00 seconds
      • Set timer = 0
      • Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Triggering unit) Equal to (Random unit from g)) and ((Triggering unit) Equal to DamageEventTarget)
            • Then - Actions
              • Set Point = (Position of (Triggering unit))
              • Set TriggCheck = (TriggCheck + 1)
              • Unit - Create 1 Dummy for (Owner of DamageEventSource) at Point facing (Position of (Triggering unit))
              • Set DummyTemp = (Last created unit)
              • Wait until ((DummyTemp is alive) Equal to True), checking every 0.10 seconds
              • Unit - Add Dummy Storm Bolt to DummyTemp
              • Custom script: call RemoveLocation (udg_Point)
              • Unit - Add a 2.00 second Generic expiration timer to (Triggering unit)
            • Else - Actions
      • For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))
      • Wait until (timer Equal to 60), checking every 1.00 seconds
      • Set timer = 0
      • Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Triggering unit) Equal to (Random unit from g)) and ((Triggering unit) Equal to DamageEventTarget)
            • Then - Actions
              • Set Point = (Position of (Triggering unit))
              • Set TriggCheck = (TriggCheck + 1)
              • Unit - Create 1 Dummy for (Owner of DamageEventSource) at Point facing (Position of (Triggering unit))
              • Set DummyTemp = (Last created unit)
              • Wait until ((DummyTemp is alive) Equal to True), checking every 0.10 seconds
              • Unit - Add Dummy Storm Bolt to DummyTemp
              • Custom script: call RemoveLocation (udg_Point)
              • Unit - Add a 2.00 second Generic expiration timer to (Triggering unit)
            • Else - Actions
      • For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))
      • Wait until (timer Equal to 60), checking every 1.00 seconds
      • Set timer = 0
      • Custom script: call DestroyGroup (udg_g)
  • Setup
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Breath of Gloom (Neutral Hostile)
    • Actions
      • Unit Group - Pick every unit in (Units owned by (Triggering player)) and do (Actions)
        • Loop - Actions
          • Unit Group - Add (Triggering unit) to g
 
Level 19
Joined
Aug 8, 2007
Messages
2,765
((Triggering unit) Equal to (Random unit from g)) -> completely invalid
Set DamageEventAmount = (DamageEventAmount - DamageEventAmount) -> also invalid
Wait until ((DummyTemp is alive) Equal to True), checking every 0.10 seconds -> also invalid
For each (Integer A) from 1 to 60, do (Set timer = (timer + 1)) -> also invalid

Set TriggCheck = (TriggCheck + 1) -> unused

by "invalid" i mean either a blank statement or thread crashes. in either case, should be fixed or removed.
 
Level 12
Joined
Feb 22, 2010
Messages
1,115
For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))

You are instantly setting variable to 60.

And your method of doing this is soooo weird??!?

If you want a shockwave that stuns, move your own shockwave missile with triggers.
 
Level 5
Joined
Aug 8, 2008
Messages
113
For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))

You are instantly setting variable to 60.

And your method of doing this is soooo weird??!?

If you want a shockwave that stuns, move your own shockwave missile with triggers.

so I have to make a shockwave from scratch.....johnny this is gonna be harder than i thought.
 
Level 12
Joined
Nov 3, 2013
Messages
989
For each (Integer A) from 1 to 60, do (Set timer = (timer + 1))

You are instantly setting variable to 60.
triggers.

I think he thinks that it would be the same as if he'd make a perodic event increase the variable, but then he does it in the same trigger so if it actually worked it would just have been like a normal wait, but with up to 1sec inaccuracy instead of the normal 0.15~

Forget about helping with triggers I'd say give some links to tutorials...

Here's one, might already be a bit further down the road than you should start off though... http://www.hiveworkshop.com/forums/...u-should-know-when-using-triggers-gui-233242/
 
Level 5
Joined
Aug 8, 2008
Messages
113
I think he thinks that it would be the same as if he'd make a perodic event increase the variable, but then he does it in the same trigger so if it actually worked it would just have been like a normal wait, but with up to 1sec inaccuracy instead of the normal 0.15~

Forget about helping with triggers I'd say give some links to tutorials...

Here's one, might already be a bit further down the road than you should start off though... http://www.hiveworkshop.com/forums/...u-should-know-when-using-triggers-gui-233242/

thx for the tutorial
 
Status
Not open for further replies.
Top