Skills not Switching

Black_Fire

New Member
Reaction score
0
Hi!

Can you please help me with this:
Trigger:
  • Ravage
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Ravage
    • Actions
      • Set temp_ability = Ravage
      • Set temp_unit[(Player number of (Owner of (Triggering unit)))] = (Casting unit)
      • Unit - Remove temp_ability from (Casting unit)
      • Unit - Add Fatal Blows to temp_unit[(Player number of (Owner of (Triggering unit)))]
      • Unit - Set level of Fatal Blows for (Triggering unit) to (Level of temp_ability for (Casting unit))
      • Countdown Timer - Start temp_timer as a One-shot timer that will expire in 8.00 seconds
      • Set temp_timer = (Last started timer)
      • Countdown Timer - Create a timer window for temp_timer with title Ravage
      • Set temp_timer_window = (Last created timer window)
      • Countdown Timer - Hide (Last created timer window)


Trigger:
  • Fatal Blows Switch
    • Events
      • Time - temp_timer expires
    • Conditions
    • Actions
      • Unit - Remove Fatal Blows from temp_unit[(Player number of (Owner of (Triggering unit)))]
      • Unit - Add Ravage(cooldown) to temp_unit[(Player number of (Owner of (Triggering unit)))]
      • Unit - Order temp_unit[(Player number of (Owner of (Triggering unit)))] to Orc Troll Berserker - Berserk
      • Custom script: call DestroyTimer(udg_temp_timer)
      • Countdown Timer - Destroy temp_timer_window
      • Countdown Timer - Start cooldown as a One-shot timer that will expire in 15.00 seconds
      • Set cooldown = (Last started timer)
      • Countdown Timer - Create a timer window for (Last started timer) with title Fatal Blows Cooldown
      • Countdown Timer - Hide (Last created timer window)
      • Set cooldown_window = (Last created timer window)


Trigger:
  • Ravage Cooldown
    • Events
      • Time - cooldown expires
    • Conditions
    • Actions
      • Custom script: call DestroyTimer(udg_cooldown)
      • Countdown Timer - Destroy cooldown_window
      • Unit - Remove Ravage(cooldown) from temp_unit[(Player number of (Owner of (Triggering unit)))]
      • Unit - Add temp_ability to temp_unit[(Player number of (Owner of (Triggering unit)))]


On the first try the switch worked but then on the second it didn't change from Fatal Blows to Ravage(cooldown).
 

NoobImbaPro

You can change this now in User CP.
Reaction score
60
EDIT: Put [wc3.][./wc3] tabs without dot and inside them place your triggers, will be better understanding.

EDIT: Dirac beat me
 

Dirac

22710180
Reaction score
147
Triggering Unit == Casting Unit

Also, you can't use Triggering Unit in the timer's triggers since there's no triggering unit... Triggering unit only reffers to the event, if the event is "A timer expires" there's no triggering unit.
use the variable you stored the caster in instead
 

Black_Fire

New Member
Reaction score
0
So what should I do to replace the variable because I needed that to be usable by players at the same time.
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
613
Since the only variable you need here is Triggering Unit, you should be able to simply use Waits without any problems. (See Dirac's post: you should use Triggering Unit to replace Casting Unit)

Unless you need the timer window, in which case you would need some other timer system. Local variables would probably come into use.

A bit off-topic, but you trigger seems a bit problematic in these three actions:
Trigger:
  • Unit - Remove temp_ability from (Casting unit)
    • Unit - Add Fatal Blows to temp_unit[(Player number of (Owner of (Triggering unit)))]
    • Unit - Set level of Fatal Blows for (Triggering unit) to (Level of temp_ability for (Casting unit))

You remove the ability, then set Fatal Blows to the level of the removed ability?

P.S. Try using GUI tags, as NoobImbaPro said, except it's [wc3.] and [/wc3.], without the dots as usual. Then paste your triggers within the two tags.
 

Black_Fire

New Member
Reaction score
0
Trigger:
  • Unit - Remove temp_ability from (Casting unit)
    • Unit - Add Fatal Blows to temp_unit[(Player number of (Owner of (Triggering unit)))]
    • Unit - Set level of Fatal Blows for (Triggering unit) to (Level of temp_ability for (Casting unit))
Already fixed that and are you sure with using wait? I want the spell to be MUI.
Also here's another version of the trigger:
Trigger:
  • Ravage
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Ravage
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • temp_intger Less than 1000
        • Then - Actions
          • Set temp_intger = (temp_intger + 1)
        • Else - Actions
          • Set temp_intger = 1
      • Set temp_ability = Ravage
      • Set temp_unit[temp_intger] = (Triggering unit)
      • Unit - Remove temp_ability from temp_unit[temp_intger]
      • Unit - Add Fatal Blows to temp_unit[temp_intger]
      • Unit - Set level of Fatal Blows for temp_unit[temp_intger] to (Level of temp_ability for temp_unit[temp_intger])
      • Countdown Timer - Start temp_timer as a One-shot timer that will expire in 8.00 seconds
      • Set temp_timer = (Last started timer)
      • Countdown Timer - Create a timer window for temp_timer with title Ravage
      • Set temp_timer_window = (Last created timer window)
      • Countdown Timer - Hide (Last created timer window)

Trigger:
  • Fatal Blows Switch
    • Events
      • Time - temp_timer expires
    • Conditions
    • Actions
      • Unit - Remove Fatal Blows from temp_unit[temp_intger]
      • Unit - Add Ravage(cooldown) to temp_unit[temp_intger]
      • Unit - Order temp_unit[temp_intger] to Orc Troll Berserker - Berserk
      • Custom script: call DestroyTimer(udg_temp_timer)
      • Countdown Timer - Destroy temp_timer_window
      • Countdown Timer - Start cooldown as a One-shot timer that will expire in 15.00 seconds
      • Set cooldown = (Last started timer)
      • Countdown Timer - Create a timer window for (Last started timer) with title Fatal Blows Cooldow...
      • Countdown Timer - Hide (Last created timer window)
      • Set cooldown_window = (Last created timer window)

Trigger:
  • Ravage Cooldown
    • Events
      • Time - cooldown expires
    • Conditions
    • Actions
      • Custom script: call DestroyTimer(udg_cooldown)
      • Countdown Timer - Destroy cooldown_window
      • Unit - Remove Ravage(cooldown) from temp_unit[temp_intger]
      • Unit - Add temp_ability to temp_unit[temp_intger]


But its still not working, its still not reverting back at the second try.
 

Dirac

22710180
Reaction score
147
You should know that your ability can't hold more that one instance at the time (what does this means??) it means that if you cast it before both timers end, a lot of bugs will pop up. Also why are you creating timer windows just to hide them? don't create them at all xD
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
613
Trigger:
  • Ravage
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Ravage
    • Actions
      • Unit - Add Fatal Blows to (Triggering unit)
      • Unit - Set level of Fatal Blows for (Triggering unit) to (Level of (Ability being cast) for (Triggering unit))
      • Unit - Remove (Ability being cast) from (Triggering unit)
      • Wait 8.00 seconds
      • Unit - Remove Fatal Blows (Triggering unit)
      • Unit - Add Ravage (cooldown) to (Triggering unit)
      • Unit - Order (Triggering unit) to Orc Troll Berserker - Berserk
      • Wait 15.00 seconds
      • Unit - Remove Ravage (cooldown) from (Triggering unit)
      • Unit - Add (Ability being cast) to (Triggering unit)

Here. I simplified the steps, and make sure you follow the order (note my last post, and the first few actions). The reason it should work is because Triggering Unit is not overwritten by waits or multiple instances of the trigger running, unlike the global variables, effectively making it a MUI local variable.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top