1. Are you planning to upload your awesome spell or system to Hive? Please review the rules here.
    Dismiss Notice
  2. Find your way through the deepest dungeon in the 18th Mini Mapping Contest Poll.
    Dismiss Notice
  3. A brave new world lies beyond the seven seas. Join the 34th Modeling Contest today!
    Dismiss Notice
  4. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
Hive 3 Remoosed BETA - NOW LIVE. Go check it out at BETA Hive Workshop! Post your feedback in this new forum BETA Feedback.
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Trigger Viewer

[S]Thunderblade.GUI.v1.1.w3x
Variables
[S]Thunder Blade.GUI
Read me
tb1
tb2
tbper
Stuff
level
repair
mapsight
Kartenspezifischen eigenen Skript-Code unten eingeben. Dieser Text wird in das Karten-Skript nach der Deklaration der Variablen und vor jeglichem Auslöser-Code eingefügt.

		
Name Type Is Array Initial Value
TB_dummygrp group No
TB_dummygrp2 group No
TB_temppoint1 location No
TB_temppoint2 location No
TB_x real No
Thunder Blade v1.1 Gui [S]quiggy 2oo9
===============================
Well good day, dear reader.
We've got lots to do, so lets start right away.

Thunder Blade consists of 3 Triggers:
-tb1 / tb2 and tbper

The spell needs all the dummies:
-tbdummy / tbdummy2 and tbdummy3

The spell needs all 4 abilities and both buffs.

So, import all of them into your map now.
================================
Great, now that you're done, we can move on with a short description of thunder blade:
The first trigger does nothing spectacular besides creating dummies in the air and making them head towards flying height 0 (That's the ground)

Now for the second:
As soon as one of the dummies dies, one dummy is being created which server us for some effects (lightning shield).
Also, all units inside the area of effect (300 - 500 - 700) are being paused and some buff is aded to them for a better visuality.
Next is, that the trigger creates one new dummy for each 'dead' dummy and make it face outwards every 36 degrees.
Last is the switch to turn on the periodic trigger.

Said periodic trigger moves the dummies until their custom value equals the AoE and then makes them stop and add some effects.

As I'm sure that you understood until now, we shall proceed with 'tb1'
tb1
  Events
    Unit - A unit Starts the effect of an ability
  Conditions
    (Ability being cast) Equal to Thunder Blade
  Actions
    Set VariableSet TB_temppoint1 = (Position of (Target unit of ability being cast))
    -------- - --------
    -------- This is the height at which the 'lance' should begin to be formed. --------
    Set VariableSet TB_x = 700.00
    -------- - --------
    -------- Some damage.. --------
    Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing ((Real((Level of Thunder Blade for (Triggering unit)))) x 45.00) damage of attack type Chaos and damage type Universal
    -------- - --------
    -------- And here we create 15 dummies, one every 50 height units. --------
    For each (Integer A) from 1 to 15, do (Actions)
      Loop - Actions
        Unit - Create 1.tb.dummy for (Owner of (Triggering unit)) at TB_temppoint1 facing (Random angle) degrees
        Unit - Set level of TB_Carrier for (Last created unit) to (Level of Thunder Blade for (Triggering unit))
        Animation - Change (Last created unit) flying height to (TB_x + 50.00) at 0.00
        Animation - Change (Last created unit) flying height to 0.00 at 2000.00
        Unit - Add a 0.90 second Generic expiration timer to (Last created unit)
        Set VariableSet TB_x = (TB_x + 50.00)
    Set VariableSet TB_x = 0.00
    Custom script: call RemoveLocation(udg_TB_temppoint1)
    -------- - --------
    -------- After resetting all values and cleaning those leaks, we move on to 'tb2' --------
Purposes:
~Add dummies (move outwards)
~Remove the lightning shield dummies after death to get rid of ugly effects
tb2
  Events
    Unit - A unit Dies
  Conditions
    ((Unit-type of (Triggering unit)) Equal to tb.dummy) or ((Unit-type of (Triggering unit)) Equal to tb.dummy3)
  Actions
    -------- - --------
    -------- As this trigger has multiple purposes (look at the comment), we check which unit is dead now. --------
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Unit-type of (Triggering unit)) Equal to tb.dummy
      Then - Actions
        -------- - --------
        -------- In case that it's our 'lance', we create one more dummy with the lightning shield model facing randomly --------
        Set VariableSet TB_temppoint1 = (Position of (Triggering unit))
        Unit - Create 1.tb.dummy3 for (Owner of (Triggering unit)) at TB_temppoint1 facing (Random angle) degrees
        Unit - Add a 6.00 second Generic expiration timer to (Last created unit)
        -------- - --------
        -------- Now we pause all enemy units --------
        Custom script: set bj_wantDestroyGroup = true
        Unit Group - Pick every unit in (Units within (((Real((Level of TB_Carrier for (Triggering unit)))) x 100.00) + 200.00) of TB_temppoint1 matching (((Matching unit) belongs to an enemy of (Owner of (Triggering unit)).) Equal to True).) and do (Pause (Picked unit))
        Animation - Play (Last created unit)'s birth large (animationname) animation
        Animation - Change (Last created unit)'s animation speed to 50.00% of its original speed
        Special Effect - Create a special effect at TB_temppoint1 using Abilities\Spells\Undead\Unsummon\UnsummonTarget.mdl
        Special Effect - Destroy (Last created special effect)
        -------- - --------
        -------- Here, we check for any 'still alive' part of the lanceand if there is, we create the said dummies we want to move --------
        Set VariableSet TB_dummygrp = (Units within 100.00 of TB_temppoint1 matching ((Unit-type of (Matching unit)) Equal to tb.dummy).)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Number of units in TB_dummygrp) Greater than or equal to 1
          Then - Actions
            Special Effect - Create a special effect at TB_temppoint1 using Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl
            Special Effect - Destroy (Last created special effect)
            Unit - Create 1.tb.dummy2 for (Owner of (Triggering unit)) at TB_temppoint1 facing (TB_x + 36.00) degrees
            Unit - Set level of TB_dummydamage for (Last created unit) to (Level of TB_Carrier for (Triggering unit))
            Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            Set VariableSet TB_x = (TB_x + 36.00)
            -------- - --------
            -------- Last, but not least, we turn on the periodic trigger to make the dummies move. --------
            Trigger - Turn on tbper <gen>
          Else - Actions
        Custom script: call DestroyGroup(udg_TB_dummygrp)
        Custom script: call RemoveLocation(udg_TB_temppoint1)
      Else - Actions
        -------- - --------
        -------- IF the dead unit wasn't our 'lance' but the lightning shiled, we remove it from the whole map. --------
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          If - Conditions
            (Unit-type of (Triggering unit)) Equal to tb.dummy3
          Then - Actions
            Set VariableSet TB_temppoint1 = (Position of (Triggering unit))
            Unit - Remove (Triggering unit) from the game
            -------- - --------
            -------- and now, we let the enemies regain their liberty and move around. --------
            Custom script: set bj_wantDestroyGroup = true
            Unit Group - Pick every unit in (Units within 700.00 of TB_temppoint1 matching (((Matching unit) has buff Paralyze) Equal to True).) and do (Actions)
              Loop - Actions
                Unit - Remove Paralyze buff from (Picked unit)
                Unit - Unpause (Picked unit)
            Custom script: call RemoveLocation(udg_TB_temppoint1)
          Else - Actions
        -------- - --------
        -------- Almost done. One more - 'tbper' --------
tbper
  Events
    Time - Every 0.04 seconds of game time
  Conditions
  Actions
    -------- - --------
    -------- First, we check if there are any dummies on the field which are moving and if not, we turn this trigger off. --------
    Set VariableSet TB_dummygrp2 = (Units of type tb.dummy2)
    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      If - Conditions
        (Number of units in TB_dummygrp2) Greater than 0
      Then - Actions
        -------- - --------
        -------- If there are any, we add the custom value by the distance they travel. That is, easily said a simple way to make them stop once they reach the end of the area of effect. --------
        -------- Since the CV will turn 500 once, which is the aoe, the dummy will stop. --------
        Unit Group - Pick every unit in TB_dummygrp2 and do (Actions)
          Loop - Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
              If - Conditions
                (Custom value of (Picked unit)) Less than or equal to (((Level of TB_dummydamage for (Picked unit)) x 100) + 200)
              Then - Actions
                Set VariableSet TB_temppoint1 = (Position of (Picked unit))
                Set VariableSet TB_temppoint2 = (TB_temppoint1 offset by 25.00 towards (Facing of (Picked unit)) degrees.)
                Unit - Set the custom value of (Picked unit) to ((Custom value of (Picked unit)) + 25)
                Unit - Move (Picked unit) instantly to TB_temppoint2
                Custom script: call RemoveLocation(udg_TB_temppoint2)
                Custom script: call RemoveLocation(udg_TB_temppoint1)
              Else - Actions
                -------- - --------
                -------- So, when it reaches the aoe, we add some effects --------
                Set VariableSet TB_temppoint1 = (Position of (Picked unit))
                Special Effect - Create a special effect at TB_temppoint1 using Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl
                Special Effect - Destroy (Last created special effect)
                Special Effect - Create a special effect at TB_temppoint1 using Abilities\Spells\Other\Monsoon\MonsoonBoltTarget.mdl
                Special Effect - Destroy (Last created special effect)
                -------- - --------
                -------- And remove the moving dummy --------
                Unit - Remove (Picked unit) from the game
                Custom script: call RemoveLocation(udg_TB_temppoint1)
            -------- - --------
            -------- This is the electric trace the dummies leave behind... --------
            Special Effect - Create a special effect at TB_temppoint2 using Abilities\Spells\Items\AIlb\AIlbSpecialArt.mdl
            Special Effect - Destroy (Last created special effect)
      Else - Actions
        Trigger - Turn off (This trigger)
    Custom script: call DestroyGroup(udg_TB_dummygrp2)
    -------- - --------
    -------- Congratulations, you made it. --------
    -------- Have fun and don't hesistate to give me some credits ;) //Squiggy --------
level
  Events
    Player - Player 1 (Red) types a chat message containing -lv (stringnoformat) as An exact match
  Conditions
  Actions
    Hero - Set ZOMG 0055 <gen> Hero-level to 10, Show level-up graphics
repair
  Events
    Player - Player 1 (Red) skips a cinematic sequence
  Conditions
  Actions
    Unit - Reset ability cooldowns for ZOMG 0055 <gen>.
    Unit - Set life of ZOMG 0055 <gen> to 100%
    Unit - Set mana of ZOMG 0055 <gen> to 100%
mapsight
  Events
    Map initialization
  Conditions
  Actions
    Visibility - Create an initially Enabled visibility modifier for Player 1 (Red) emitting Visibility across (Playable map area)