• 🏆 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!

Deidara Spellpack v1.0

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
My first spellpack. I tried to make it easy to export to another project. Also I'd like to receive flaks to improve my learning.

  • Deidara Spell Conf
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set Deidara_Flying = Akatsuki Artist (Flying Mode)
      • -------- [[ Spells ]] --------
      • -------- Clay Clone --------
      • Set Deidara_CONF_Spells[1] = Clay Clone (Deidara)
      • -------- C1 --------
      • Set Deidara_CONF_Spells[2] = Kibaku Nendo: C1 (Deidara)
      • -------- Beauty of Destruction --------
      • Set Deidara_CONF_Spells[3] = Beauty of Destruction (Deidara)
      • -------- C2: Dragon --------
      • Set Deidara_CONF_Spells[4] = C2: Dragon (Deidara)
      • -------- Flying Mode --------
      • Set Deidara_CONF_Spells[5] = Flying Mode (Deidara)
      • -------- C0 --------
      • Set Deidara_CONF_Spells[6] = Kyuukyoku Geijutsu: C0 (Deidara)
      • -------- Eye Enhancement --------
      • Set Deidara_CONF_Spells[7] = Eye Enhancement (Deidara)
      • -------- C4 --------
      • Set Deidara_CONF_Spells[8] = C4: Karura (Deidara)
      • -------- C3 --------
      • Set Deidara_CONF_Spells[9] = Speciality 18: C3 (Deidara)
      • -------- Sky-Eagle Art --------
      • Set Deidara_CONF_Spells[10] = Sky-Eagle Art (Deidara)
      • -------- [[ Units ]] --------
      • -------- Deidara Dummy --------
      • Set Deidara_CONF_Units[1] = Deidara Dummy
      • -------- Spider-Type Explosive Clay --------
      • Set Deidara_CONF_Units[2] = Spider-Type Explosive Clay (Deidara)
      • -------- Bird-Type Explosive Clay --------
      • Set Deidara_CONF_Units[3] = Bird-Type Explosive Clay (Deidara)
      • -------- Bird-Type Dummy (Spinning) --------
      • Set Deidara_CONF_Units[4] = Deidara Bird-Type Dummy Spinning
      • -------- Super Explosion Dummy --------
      • Set Deidara_CONF_Units[5] = Deidara Super Explosion Dummy
      • -------- C2 Dragon --------
      • Set Deidara_CONF_Units[6] = Dragon-Type Explosive Clay (Deidara)
      • -------- Explosive Landime --------
      • Set Deidara_CONF_Units[7] = Deidara Explosive Landmine
      • -------- C4 Dummy --------
      • Set Deidara_CONF_Units[8] = Deidara C4 Dummy
      • -------- Smoke Dummy --------
      • Set Deidara_CONF_Units[9] = Deidara Smoke Dummy
      • -------- C3 Dummy --------
      • Set Deidara_CONF_Units[10] = Deidara C3 Dummy
      • -------- Big Explosion Dummy --------
      • Set Deidara_CONF_Units[11] = Deidara Big Explosion Dummy
      • -------- [[ Dummies Spells ]] --------
      • -------- Deidara Dummy Invisibility --------
      • Set Deidara_CONF_Dummies_Spells[1] = Deidara Dummy Invisibility
      • -------- Deidara Dummy Illusion --------
      • Set Deidara_CONF_Dummies_Spells[2] = Deidara Dummy Illusion
      • -------- Katsu! --------
      • Set Deidara_CONF_Dummies_Spells[3] = Katsu! (Clay Creatures)
      • -------- Explosive Missle --------
      • Set Deidara_CONF_Dummies_Spells[4] = Explosive Missle (Dragon)
      • -------- Explosive Landmine --------
      • Set Deidara_CONF_Dummies_Spells[5] = Explosive Landmine (Dragon)
      • -------- [[ VARIABLES INITIALIZATION ]] --------
      • Hashtable - Create a hashtable
      • Set Deidara_Beauty_Hash = (Last created hashtable)
      • Hashtable - Create a hashtable
      • Set Deidara_C2_Hash = (Last created hashtable)
      • Hashtable - Create a hashtable
      • Set Deidara_C3_Hash = (Last created hashtable)
      • Hashtable - Create a hashtable
      • Set Deidara_C4_Hash = (Last created hashtable)
      • Hashtable - Create a hashtable
      • Set Deidara_C0_Hash = (Last created hashtable)
      • Hashtable - Create a hashtable
      • Set Deidara_SEA_Hash = (Last created hashtable)
  • Clay Clone
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[1]
    • Actions
      • Set Deidara_Clone_Caster = (Triggering unit)
      • Set Deidara_Clone_Damage = (Real((Intelligence of (Triggering unit) (Include bonuses))))
      • Set Deidara_Clone_Point[1] = (Position of (Triggering unit))
      • -------- Illusion --------
      • Unit - Create 1 Deidara_CONF_Units[1] for (Triggering player) at Deidara_Clone_Point[1] facing Default building facing degrees
      • Unit - Add Deidara_CONF_Dummies_Spells[1] to (Last created unit)
      • Unit - Order (Last created unit) to Human Sorceress - Invisibility (Triggering unit)
      • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
      • -------- Clone --------
      • Unit - Create 1 Deidara_CONF_Units[1] for (Triggering player) at Deidara_Clone_Point[1] facing Default building facing degrees
      • Unit - Add Deidara_CONF_Dummies_Spells[2] to (Last created unit)
      • Custom script: call IssueTargetOrderById(bj_lastCreatedUnit, 852274, GetTriggerUnit())
      • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
  • Clay Clone Spawn
    • Events
      • Unit - A unit Spawns a summoned unit
    • Conditions
      • (Unit-type of (Summoning unit)) Equal to Deidara_CONF_Units[1]
    • Actions
      • Unit - Turn collision for (Summoned unit) Off
      • Unit - Move (Summoned unit) instantly to Deidara_Clone_Point[1]
      • Animation - Change (Summoned unit) flying height to (Current flying height of Deidara_Clone_Caster) at 0.00
      • Custom script: call UnitRemoveAbility(GetSummonedUnit(), 'Aatk')
      • Custom script: call RemoveLocation(udg_Deidara_Clone_Point[1])
      • Unit Group - Add (Summoned unit) to Deidara_Clone_Group
      • Unit - Turn collision for (Triggering unit) On
      • Set Deidara_Clone_Caster = No unit
  • Clay Clone Explosion
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is in Deidara_Clone_Group) Equal to True
    • Actions
      • Set Deidara_Clone_Point[2] = (Position of (Triggering unit))
      • Special Effect - Create a special effect at Deidara_Clone_Point[2] using Abilities\Weapons\Mortar\MortarMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • Environment - Create a 1.00 second Normal ripple deformation at Deidara_Clone_Point[2] with starting radius 300.00, ending radius 300.00, and depth 32.00, using 1.00 second ripples spaced 150.00 apart
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units within 300.00 of Deidara_Clone_Point[2] matching (((Matching unit) belongs to an enemy of (Triggering player)) Equal to True)) and do (Actions)
        • Loop - Actions
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing Deidara_Clone_Damage damage of attack type Spells and damage type Fire
      • Custom script: call RemoveLocation(udg_Deidara_Clone_Point[2])
      • Unit Group - Remove (Triggering unit) from Deidara_Clone_Group
  • C1 INIT
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[2]
    • Actions
      • Set Deidara_C1_Damage = (20.00 x (Real((Level of (Ability being cast) for (Triggering unit)))))
      • Set Deidara_C1_Point[1] = (Position of (Triggering unit))
      • For each (Integer A) from 1 to (Level of (Ability being cast) for (Triggering unit)), do (Actions)
        • Loop - Actions
          • Set Deidara_C1_Point[2] = (Deidara_C1_Point[1] offset by 200.00 towards ((Real((Integer A))) x (360.00 / (Real((Level of (Ability being cast) for (Triggering unit)))))) degrees)
          • Unit - Create 1 Deidara_CONF_Units[2] for (Triggering player) at Deidara_C1_Point[1] facing Default building facing degrees
          • Unit - Add Deidara_CONF_Dummies_Spells[3] to (Last created unit)
          • Unit - Order (Last created unit) to Neutral - Activate Kaboom!
          • Unit - Turn collision for (Last created unit) Off
          • Unit - Move (Last created unit) instantly to Deidara_C1_Point[1]
          • Unit - Order (Last created unit) to Move To Deidara_C1_Point[2]
          • Unit - Add a 15.00 second Generic expiration timer to (Last created unit)
          • Unit Group - Add (Last created unit) to Deidara_C1_Group
          • Unit - Create 1 Deidara_CONF_Units[3] for (Triggering player) at Deidara_C1_Point[1] facing Default building facing degrees
          • Unit - Add Deidara_CONF_Dummies_Spells[3] to (Last created unit)
          • Unit - Order (Last created unit) to Neutral - Activate Kaboom!
          • Unit - Turn collision for (Last created unit) Off
          • Unit - Move (Last created unit) instantly to Deidara_C1_Point[1]
          • Animation - Change (Last created unit) flying height to 300.00 at 300.00
          • Animation - Change (Last created unit)'s animation speed to (Random real number between 80.00 and 120.00)% of its original speed
          • Unit - Order (Last created unit) to Move To Deidara_C1_Point[2]
          • Unit - Add a 15.00 second Generic expiration timer to (Last created unit)
          • Unit Group - Add (Last created unit) to Deidara_C1_Group
          • Custom script: call RemoveLocation(udg_Deidara_C1_Point[2])
      • Custom script: call RemoveLocation(udg_Deidara_C1_Point[1])
  • C1 UNIT DIE
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is in Deidara_C1_Group) Equal to True
    • Actions
      • Unit - Hide (Triggering unit)
      • Set Deidara_C1_Point[3] = (Position of (Triggering unit))
      • Special Effect - Create a special effect at Deidara_C1_Point[3] using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Deidara_C1_Point[3] using Abilities\Weapons\Mortar\MortarMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • Environment - Create a 1.00 second Normal ripple deformation at Deidara_C1_Point[3] with starting radius 300.00, ending radius 300.00, and depth 16.00, using 1.00 second ripples spaced 150.00 apart
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units within 200.00 of Deidara_C1_Point[3] matching (((Matching unit) belongs to an enemy of (Triggering player)) Equal to True)) and do (Actions)
        • Loop - Actions
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing Deidara_C1_Damage damage of attack type Spells and damage type Fire
      • Custom script: call RemoveLocation(udg_Deidara_C1_Point[3])
      • Unit Group - Remove (Triggering unit) from Deidara_C1_Group
  • BOF INIT
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[3]
    • Actions
      • Set Deidara_Beauty_Damage = ((Real((Intelligence of (Triggering unit) (Include bonuses)))) x (Real((Level of (Ability being cast) for (Triggering unit)))))
      • Set Deidara_Beauty_Point[1] = (Position of (Triggering unit))
      • Set Deidara_Beauty_Point[2] = (Target point of ability being cast)
      • Unit - Create 1 Deidara_CONF_Units[4] for (Triggering player) at Deidara_Beauty_Point[1] facing (Angle from Deidara_Beauty_Point[1] to Deidara_Beauty_Point[2]) degrees
      • Unit - Add a 5.00 second Generic expiration timer to (Last created unit)
      • Animation - Play (Last created unit)'s birth animation
      • Animation - Change (Last created unit) flying height to 500.00 at 1000.00
      • Hashtable - Save Handle OfDeidara_Beauty_Point[1] as 1 of (Key (Triggering unit)) in Deidara_Beauty_Hash
      • Hashtable - Save Handle OfDeidara_Beauty_Point[2] as 2 of (Key (Triggering unit)) in Deidara_Beauty_Hash
      • Hashtable - Save Handle Of(Last created unit) as 3 of (Key (Triggering unit)) in Deidara_Beauty_Hash
      • Hashtable - Save Deidara_Beauty_Damage as 4 of (Key (Triggering unit)) in Deidara_Beauty_Hash
      • Hashtable - Save 0.00 as 5 of (Key (Triggering unit)) in Deidara_Beauty_Hash
      • Unit Group - Add (Triggering unit) to Deidara_Beauty_Group
  • BOF LOOP
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in Deidara_Beauty_Group and do (Actions)
        • Loop - Actions
          • Set Deidara_Beauty_Timer = (Load 5 of (Key (Picked unit)) from Deidara_Beauty_Hash)
          • Hashtable - Save (Deidara_Beauty_Timer + 0.03) as 5 of (Key (Picked unit)) in Deidara_Beauty_Hash
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Deidara_Beauty_Timer Greater than or equal to 0.50
            • Then - Actions
              • Set Deidara_Beauty_Caster = (Picked unit)
              • Set Deidara_Beauty_Dummy = (Load 3 of (Key (Picked unit)) in Deidara_Beauty_Hash)
              • Set Deidara_Beauty_Point[1] = (Load 1 of (Key (Picked unit)) in Deidara_Beauty_Hash)
              • Set Deidara_Beauty_Point[2] = (Load 2 of (Key (Picked unit)) in Deidara_Beauty_Hash)
              • Set Deidara_Beauty_Point[3] = (Position of Deidara_Beauty_Dummy)
              • Set Deidara_Beauty_Point[4] = (Deidara_Beauty_Point[3] offset by 30.00 towards (Angle from Deidara_Beauty_Point[1] to Deidara_Beauty_Point[2]) degrees)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Current flying height of Deidara_Beauty_Dummy) Equal to 500.00
                • Then - Actions
                  • Sound - Play Katsu <gen>
                  • Animation - Play Deidara_Beauty_Dummy's stand animation
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Distance between Deidara_Beauty_Point[2] and Deidara_Beauty_Point[4]) Less than or equal to 50.00
                • Then - Actions
                  • Set Deidara_Beauty_Damage = (Load 4 of (Key (Picked unit)) from Deidara_Beauty_Hash)
                  • Custom script: set bj_wantDestroyGroup = true
                  • Unit Group - Pick every unit in (Units within 300.00 of Deidara_Beauty_Point[3] matching (((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True)) and do (Actions)
                    • Loop - Actions
                      • Unit - Cause Deidara_Beauty_Caster to damage (Picked unit), dealing Deidara_Beauty_Damage damage of attack type Spells and damage type Universal
                  • Unit - Kill (Load 3 of (Key (Picked unit)) in Deidara_Beauty_Hash)
                  • Unit - Kill Deidara_Beauty_Dummy
                  • Unit - Hide Deidara_Beauty_Dummy
                  • Special Effect - Create a special effect at Deidara_Beauty_Point[3] using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Environment - Create a 2.00 second Normal ripple deformation at Deidara_Beauty_Point[3] with starting radius 300.00, ending radius 300.00, and depth 32.00, using 1.00 second ripples spaced 150.00 apart
                  • For each (Integer A) from 1 to 5, do (Actions)
                    • Loop - Actions
                      • Set Deidara_Beauty_Point[5] = (Deidara_Beauty_Point[3] offset by 150.00 towards (72.00 x (Real((Integer A)))) degrees)
                      • Special Effect - Create a special effect at Deidara_Beauty_Point[5] using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
                      • Special Effect - Destroy (Last created special effect)
                      • Special Effect - Create a special effect at Deidara_Beauty_Point[5] using Abilities\Weapons\Mortar\MortarMissile.mdl
                      • Special Effect - Destroy (Last created special effect)
                      • Custom script: call RemoveLocation(udg_Deidara_Beauty_Point[5])
                  • For each (Integer A) from 1 to 4, do (Actions)
                    • Loop - Actions
                      • Custom script: call RemoveLocation(udg_Deidara_Beauty_Point[GetForLoopIndexA()])
                  • Unit Group - Remove (Picked unit) from Deidara_Beauty_Group
                  • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Deidara_Beauty_Hash
                • Else - Actions
                  • Unit - Move Deidara_Beauty_Dummy instantly to Deidara_Beauty_Point[4]
                  • Animation - Change Deidara_Beauty_Dummy flying height to (500.00 - (500.00 x ((Distance between Deidara_Beauty_Point[1] and Deidara_Beauty_Point[4]) / (Distance between Deidara_Beauty_Point[1] and Deidara_Beauty_Point[2])))) at 0.00
              • Custom script: call RemoveLocation(udg_Deidara_Beauty_Point[3])
              • Custom script: call RemoveLocation(udg_Deidara_Beauty_Point[4])
              • Set Deidara_Beauty_Caster = No unit
              • Set Deidara_Beauty_Dummy = No unit
            • Else - Actions
  • C2 INIT
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[4]
    • Actions
      • Set Deidara_C2_Point[1] = (Position of (Triggering unit))
      • Set Deidara_C2_Point[2] = (Deidara_C2_Point[1] offset by 100.00 towards (Facing of (Triggering unit)) degrees)
      • Special Effect - Create a special effect at Deidara_C2_Point[2] using Effect-Smoke.mdx
      • Special Effect - Destroy (Last created special effect)
      • Unit - Create 1 Deidara_CONF_Units[6] for (Triggering player) at Deidara_C2_Point[2] facing (Facing of (Triggering unit)) degrees
      • Unit - Add Deidara_CONF_Dummies_Spells[3] to (Last created unit)
      • Unit - Add Deidara_CONF_Dummies_Spells[4] to (Last created unit)
      • Unit - Set level of Deidara_CONF_Dummies_Spells[4] for (Last created unit) to (Level of (Ability being cast) for (Triggering unit))
      • Unit - Order (Last created unit) to Night Elf Priestess Of The Moon - Activate Searing Arrows
      • -------- Setting level of explosive missle and activing it --------
      • Unit - Add Deidara_CONF_Dummies_Spells[5] to (Last created unit)
      • -------- Setting level of landmine to level of ability being casting --------
      • Unit - Set level of Deidara_CONF_Dummies_Spells[5] for (Last created unit) to (Level of (Ability being cast) for (Triggering unit))
      • Unit - Add a 30.00 second Generic expiration timer to (Last created unit)
      • -------- Storing Level of ability on Dragon ID --------
      • Hashtable - Save (Level of (Ability being cast) for (Triggering unit)) as 1 of (Key (Last created unit)) in Deidara_C2_Hash
      • -------- Storing Dragon's size on Dragon ID --------
      • Hashtable - Save (100 + (20 x (Level of (Ability being cast) for (Triggering unit)))) as 2 of (Key (Last created unit)) in Deidara_C2_Hash
      • -------- Dragon's size increase with level --------
      • Animation - Change (Last created unit)'s size to ((100.00 + (20.00 x (Real((Level of (Ability being cast) for (Triggering unit))))))%, (100.00 + (20.00 x (Real((Level of (Ability being cast) for (Triggering unit))))))%, (100.00 + (20.00 x (Real((Level of (Ability being cast) for (Triggering unit))))))%) of its original size
      • -------- Dragon's flying height increase with level --------
      • Animation - Change (Last created unit) flying height to (100.00 + (20.00 x (Real((Level of (Ability being cast) for (Triggering unit)))))) at (100.00 + (20.00 x (Real((Level of (Ability being cast) for (Triggering unit))))))
      • Unit Group - Add (Last created unit) to Deidara_C2_Group
      • Custom script: call RemoveLocation(udg_Deidara_C2_Point[1])
      • Custom script: call RemoveLocation(udg_Deidara_C2_Point[2])
  • C2 DRAGON SPAWN
    • Events
      • Unit - A unit Spawns a summoned unit
    • Conditions
      • (Unit-type of (Triggering unit)) Equal to Deidara_CONF_Units[7]
      • (Unit-type of (Summoning unit)) Equal to Deidara_CONF_Units[6]
    • Actions
      • Hashtable - Save (Load 1 of (Key (Summoning unit)) from Deidara_C2_Hash) as 1 of (Key (Triggering unit)) in Deidara_C2_Hash
      • Unit Group - Add (Triggering unit) to Deidara_C2_LM_Group
      • Hashtable - Save ((Load 2 of (Key (Summoning unit)) from Deidara_C2_Hash) - 10) as 2 of (Key (Summoning unit)) in Deidara_C2_Hash
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Load 2 of (Key (Summoning unit)) from Deidara_C2_Hash) Less than or equal to 50
        • Then - Actions
          • Unit - Kill (Summoning unit)
        • Else - Actions
          • Animation - Change (Summoning unit)'s size to ((Real((Load 2 of (Key (Summoning unit)) from Deidara_C2_Hash)))%, (Real((Load 2 of (Key (Summoning unit)) from Deidara_C2_Hash)))%, (Real((Load 2 of (Key (Summoning unit)) from Deidara_C2_Hash)))%) of its original size
          • Animation - Change (Summoning unit) flying height to ((Current flying height of (Summoning unit)) - 5.00) at 0.00
  • C2 DRAGON MISSLE
    • Events
      • Unit - A unit Is attacked
    • Conditions
      • ((Attacking unit) is in Deidara_C2_Group) Equal to True
    • Actions
      • Hashtable - Save ((Load 2 of (Key (Attacking unit)) from Deidara_C2_Hash) - 5) as 2 of (Key (Attacking unit)) in Deidara_C2_Hash
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Load 2 of (Key (Attacking unit)) from Deidara_C2_Hash) Less than or equal to 50
        • Then - Actions
          • Unit - Kill (Attacking unit)
        • Else - Actions
          • Animation - Change (Attacking unit)'s size to ((Real((Load 2 of (Key (Attacking unit)) from Deidara_C2_Hash)))%, (Real((Load 2 of (Key (Attacking unit)) from Deidara_C2_Hash)))%, (Real((Load 2 of (Key (Attacking unit)) from Deidara_C2_Hash)))%) of its original size
          • Animation - Change (Attacking unit) flying height to ((Current flying height of (Attacking unit)) - 1.00) at 0.00
  • C2 DRAGON DIE
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is in Deidara_C2_Group) Equal to True
    • Actions
      • Unit - Hide (Triggering unit)
      • Set Deidara_C2_Point[3] = (Position of (Triggering unit))
      • Environment - Create a 1.00 second Normal ripple deformation at Deidara_C2_Point[3] with starting radius 400.00, ending radius 400.00, and depth 32.00, using 1.00 second ripples spaced 200.00 apart
      • Special Effect - Create a special effect at Deidara_C2_Point[3] using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Deidara_C2_Point[3] using Abilities\Weapons\Mortar\MortarMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • For each (Integer A) from 1 to 5, do (Actions)
        • Loop - Actions
          • Set Deidara_C2_Point[4] = (Deidara_C2_Point[3] offset by 150.00 towards (72.00 x (Real((Integer A)))) degrees)
          • Special Effect - Create a special effect at Deidara_C2_Point[4] using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
          • Special Effect - Destroy (Last created special effect)
          • Special Effect - Create a special effect at Deidara_C2_Point[4] using Abilities\Weapons\Mortar\MortarMissile.mdl
          • Special Effect - Destroy (Last created special effect)
          • Custom script: call RemoveLocation(udg_Deidara_C2_Point[4])
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units within 400.00 of Deidara_C2_Point[3] matching (((Matching unit) belongs to an enemy of (Triggering player)) Equal to True)) and do (Actions)
        • Loop - Actions
          • -------- Here is the damage on dragon clay explosion --------
          • -------- The damage formula is Lvl of ability to Deidara X Dragon's size --------
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing ((Real((Load 1 of (Key (Triggering unit)) from Deidara_C2_Hash))) x (Real((Load 2 of (Key (Triggering unit)) from Deidara_C2_Hash)))) damage of attack type Spells and damage type Fire
      • Custom script: call RemoveLocation(udg_Deidara_C2_Point[3])
      • Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in Deidara_C2_Hash
      • Unit Group - Remove (Triggering unit) from Deidara_C2_Group
  • LANDMINE DIE
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is in Deidara_C2_LM_Group) Equal to True
    • Actions
      • Set Deidara_C2_LM_Point = (Position of (Triggering unit))
      • Special Effect - Create a special effect at Deidara_C2_LM_Point using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Deidara_C2_LM_Point using Abilities\Weapons\Mortar\MortarMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • Environment - Create a 1.00 second Normal ripple deformation at Deidara_C2_LM_Point with starting radius 300.00, ending radius 300.00, and depth 16.00, using 1.00 second ripples spaced 150.00 apart
      • Unit - Hide (Triggering unit)
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units within 300.00 of Deidara_C2_LM_Point matching (((Matching unit) is A flying unit) Equal to False)) and do (Actions)
        • Loop - Actions
          • -------- Landmine damage; 20 X LVL --------
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing (20.00 x (Real((Load 1 of (Key (Triggering unit)) from Deidara_C2_Hash)))) damage of attack type Spells and damage type Fire
      • Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in Deidara_C2_Hash
      • Custom script: call RemoveLocation(udg_Deidara_C2_LM_Point)
      • Unit Group - Remove (Triggering unit) from Deidara_C2_LM_Group
  • FM INIT
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[5]
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Unit-type of (Triggering unit)) Equal to Deidara_Flying
        • Then - Actions
          • Player - Enable Deidara_CONF_Spells[3] for (Triggering player)
          • Player - Enable Deidara_CONF_Spells[4] for (Triggering player)
          • Player - Enable Deidara_CONF_Spells[6] for (Triggering player)
          • Player - Enable Deidara_CONF_Spells[7] for (Triggering player)
        • Else - Actions
          • Player - Disable Deidara_CONF_Spells[3] for (Triggering player)
          • Player - Disable Deidara_CONF_Spells[4] for (Triggering player)
          • Player - Disable Deidara_CONF_Spells[6] for (Triggering player)
          • Player - Disable Deidara_CONF_Spells[7] for (Triggering player)
  • FM DEATH
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Unit-type of (Triggering unit)) Equal to Deidara_Flying
    • Actions
      • Player - Enable Deidara_CONF_Spells[3] for (Triggering player)
      • Player - Enable Deidara_CONF_Spells[4] for (Triggering player)
      • Player - Enable Deidara_CONF_Spells[6] for (Triggering player)
      • Player - Enable Deidara_CONF_Spells[7] for (Triggering player)
  • C0 INIT
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[6]
    • Actions
      • Sound - Play Deidara_Katsu__3_u <gen> at 100.00% volume, attached to (Triggering unit)
      • Set Deidara_C0_Damage = (30.00 x (Real((Intelligence of (Triggering unit) (Include bonuses)))))
      • Unit - Pause (Triggering unit)
      • Unit - Make (Triggering unit) Invulnerable
      • Animation - Play (Triggering unit)'s spell animation
      • Hashtable - Save 0.00 as 1 of (Key (Triggering unit)) in Deidara_C0_Hash
      • Hashtable - Save Deidara_C0_Damage as 3 of (Key (Triggering unit)) in Deidara_C0_Hash
      • Floating Text - Create floating text that reads Art... above (Triggering unit) with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
      • Hashtable - Save Handle Of(Last created floating text) as 4 of (Key (Triggering unit)) in Deidara_C0_Hash
      • Wait 0.40 seconds
      • Unit Group - Add (Triggering unit) to Deidara_C0_Group
  • C0 LOOP
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in Deidara_C0_Group and do (Actions)
        • Loop - Actions
          • Set Deidara_C0_Timer = (Load 1 of (Key (Picked unit)) from Deidara_C0_Hash)
          • Hashtable - Save (Deidara_C0_Timer + 0.03) as 1 of (Key (Picked unit)) in Deidara_C0_Hash
          • Set Deidara_C0_Point[1] = (Position of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Deidara_C0_Timer Less than or equal to 2.00
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Execution count of (This trigger)) mod 3) Equal to 0
                • Then - Actions
                  • Special Effect - Create a special effect attached to the chest of (Picked unit) using SuperShinyThingy.mdx
                  • Special Effect - Destroy (Last created special effect)
                • Else - Actions
              • Animation - Change (Picked unit)'s vertex coloring to (0.00%, 0.00%, 0.00%) with (Deidara_C0_Timer x 50.00)% transparency
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Deidara_C0_Timer Equal to 3.00
                • Then - Actions
                  • Set Deidara_C0_TT = (Load 4 of (Key (Picked unit)) in Deidara_C0_HashIf the label is not found, this function returns NULL.)
                  • Floating Text - Change text of Deidara_C0_TT to |cffff0000IS A BANG... using font size 10.00
                  • Floating Text - Change Deidara_C0_TT: Disable permanence
                  • Floating Text - Change the lifespan of Deidara_C0_TT to 5.00 seconds
                  • Floating Text - Change the fading age of Deidara_C0_TT to 4.00 seconds
                  • Floating Text - Change the age of Deidara_C0_TT to 0.00 seconds
                  • Camera - Set (Owner of (Picked unit))'s camera Distance to target to 3000.00 over 5.00 seconds
                  • Unit - Create 3 Deidara_CONF_Units[5] for (Owner of (Picked unit)) at Deidara_C0_Point[1] facing (72.00 x (Real((Integer A)))) degrees
                  • Unit Group - Pick every unit in (Last created unit group) and do (Actions)
                    • Loop - Actions
                      • Unit - Add a 10.00 second Generic expiration timer to (Picked unit)
                      • Animation - Change (Picked unit)'s size to (1.00%, 1.00%, 1.00%) of its original size
                  • Hashtable - Save Handle Of(Last created unit group) as 2 of (Key (Picked unit)) in Deidara_C0_Hash
                  • Custom script: call CreateGroup()
                  • Hashtable - Save Handle Of(Last created unit group) as 5 of (Key (Picked unit)) in Deidara_C0_Hash
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Deidara_C0_Timer Greater than 3.00
                      • Deidara_C0_Timer Less than 8.00
                    • Then - Actions
                      • Set Deidara_C0_Point[2] = (Deidara_C0_Point[1] offset by (Deidara_C0_Timer x 50.00) towards 270.00 degrees)
                      • Unit Group - Pick every unit in (Load 2 of (Key (Picked unit)) in Deidara_C0_Hash) and do (Actions)
                        • Loop - Actions
                          • Unit - Move (Picked unit) instantly to Deidara_C0_Point[2]
                          • Animation - Change (Picked unit)'s size to (((Deidara_C0_Timer - 3.00) x 100.00)%, ((Deidara_C0_Timer - 3.00) x 100.00)%, ((Deidara_C0_Timer - 3.00) x 100.00)%) of its original size
                          • Animation - Change (Picked unit) flying height to (Deidara_C0_Timer x 50.00) at 0.00
                      • Custom script: call RemoveLocation(udg_Deidara_C0_Point[2])
                      • Set Deidara_C0_Damage = (Load 3 of (Key (Picked unit)) from Deidara_C0_Hash)
                      • Set Deidara_C0_Caster = (Picked unit)
                      • Set Deidara_C0_Int = (Key (Picked unit))
                      • Custom script: set bj_wantDestroyGroup = true
                      • Unit Group - Pick every unit in (Units within ((Deidara_C0_Timer - 3.00) x 200.00) of Deidara_C0_Point[1] matching (((Matching unit) is in (Load 5 of (Key (Picked unit)) in Deidara_C0_Hash)) Equal to False)) and do (Actions)
                        • Loop - Actions
                          • Unit - Cause Deidara_C0_Caster to damage (Picked unit), dealing Deidara_C0_Damage damage of attack type Spells and damage type Universal
                          • Unit Group - Add (Picked unit) to (Load 5 of Deidara_C0_Int in Deidara_C0_Hash)
                      • Set Deidara_C0_Caster = No unit
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • Deidara_C0_Timer Greater than or equal to 8.00
                          • Deidara_C0_Timer Less than 10.00
                        • Then - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • Deidara_C0_Timer Equal to 9.90
                            • Then - Actions
                              • Camera - Set (Owner of (Picked unit))'s camera Distance to target to Default camera distance over 3.00 seconds
                            • Else - Actions
                          • Set Deidara_C0_Damage = (Load 3 of (Key (Picked unit)) from Deidara_C0_Hash)
                          • Set Deidara_C0_Caster = (Picked unit)
                          • Set Deidara_C0_Int = (Key (Picked unit))
                          • Custom script: set bj_wantDestroyGroup = true
                          • Unit Group - Pick every unit in (Units within 1000.00 of Deidara_C0_Point[1] matching (((Matching unit) is in (Load 5 of (Key (Picked unit)) in Deidara_C0_Hash)) Equal to False)) and do (Actions)
                            • Loop - Actions
                              • Unit - Cause Deidara_C0_Caster to damage (Picked unit), dealing Deidara_C0_Damage damage of attack type Spells and damage type Universal
                              • Unit Group - Add (Picked unit) to (Load 5 of Deidara_C0_Int in Deidara_C0_Hash)
                          • Set Deidara_C0_Caster = No unit
                        • Else - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • Deidara_C0_Timer Greater than or equal to 10.00
                              • Deidara_C0_Timer Less than 12.50
                            • Then - Actions
                              • Set Deidara_C0_Point[2] = (Deidara_C0_Point[1] offset by (250.00 - ((Deidara_C0_Timer - 10.00) x 100.00)) towards 270.00 degrees)
                              • Unit Group - Pick every unit in (Load 2 of (Key (Picked unit)) in Deidara_C0_Hash) and do (Actions)
                                • Loop - Actions
                                  • Unit - Move (Picked unit) instantly to Deidara_C0_Point[2]
                                  • Animation - Change (Picked unit)'s size to ((500.00 - ((Deidara_C0_Timer - 10.00) x 200.00))%, (500.00 - ((Deidara_C0_Timer - 10.00) x 200.00))%, (500.00 - ((Deidara_C0_Timer - 10.00) x 200.00))%) of its original size
                                  • Animation - Change (Picked unit) flying height to (250.00 - ((Deidara_C0_Timer - 10.00) x 100.00)) at 0.00
                            • Else - Actions
                              • Custom script: call RemoveLocation(udg_Deidara_C0_Point[2])
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • Deidara_C0_Timer Greater than or equal to 13.00
                                • Then - Actions
                                  • Custom script: call DestroyGroup(LoadGroupHandle(udg_Deidara_C0_Hash, 5, GetHandleId(GetEnumUnit())))
                                  • Unit - Make (Picked unit) Vulnerable
                                  • Unit - Kill (Picked unit)
                                  • Unit - Unpause (Picked unit)
                                  • Animation - Change (Picked unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
                                  • Unit Group - Remove (Picked unit) from Deidara_C0_Group
                                  • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Deidara_C0_Hash
                                • Else - Actions
          • Custom script: call RemoveLocation(udg_Deidara_C0_Point[1])
  • C3 INIT
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[9]
    • Actions
      • Set Deidara_C3_Damage = ((5.00 x (Real((Level of Deidara_CONF_Spells[5] for (Triggering unit))))) x (Real((Intelligence of (Triggering unit) (Include bonuses)))))
      • Set Deidara_C3_Point = (Target point of ability being cast)
      • Unit - Create 1 Deidara_CONF_Units[10] for (Triggering player) at Deidara_C3_Point facing (Facing of (Triggering unit)) degrees
      • Animation - Change (Last created unit) flying height to 0.00 at 250.00
      • Hashtable - Save Handle Of(Last created unit) as 1 of (Key (Triggering unit)) in Deidara_C3_Hash
      • Hashtable - Save Deidara_C3_Damage as 2 of (Key (Triggering unit)) in Deidara_C3_Hash
      • Hashtable - Save 0.00 as 3 of (Key (Triggering unit)) in Deidara_C3_Hash
      • Hashtable - Save Handle OfDeidara_C3_Point as 4 of (Key (Triggering unit)) in Deidara_C3_Hash
      • Unit Group - Add (Triggering unit) to Deidara_C3_Group
  • C3 LOOP
    • Events
      • Time - Every 0.10 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in Deidara_C3_Group and do (Actions)
        • Loop - Actions
          • Set Deidara_C3_Timer = (Load 3 of (Key (Picked unit)) from Deidara_C3_Hash)
          • Hashtable - Save (Deidara_C3_Timer + 0.10) as 3 of (Key (Picked unit)) in Deidara_C3_Hash
          • Set Deidara_C3_Timer = (Load 3 of (Key (Picked unit)) from Deidara_C3_Hash)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Deidara_C3_Timer Equal to 1.40
            • Then - Actions
              • Animation - Play (Picked unit)'s spell two animation
              • Sound - Play Katsu <gen>
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Deidara_C3_Timer Equal to 1.80
            • Then - Actions
              • Player Group - Pick every player in (All players) and do (Actions)
                • Loop - Actions
                  • Camera - Shake the camera for (Picked player) with magnitude 10.00
              • Unit - Kill (Load 1 of (Key (Picked unit)) in Deidara_C3_Hash)
              • For each (Integer A) from 1 to 3, do (Actions)
                • Loop - Actions
                  • Unit - Create 1 Deidara_CONF_Units[11] for (Owner of (Picked unit)) at (Load 4 of (Key (Picked unit)) in Deidara_C3_Hash) facing Default building facing degrees
                  • Unit - Kill (Last created unit)
              • Set Deidara_C3_Caster = (Picked unit)
              • Set Deidara_C3_Damage = (Load 2 of (Key (Picked unit)) from Deidara_C3_Hash)
              • Custom script: set bj_wantDestroyGroup = true
              • Unit Group - Pick every unit in (Units within 1000.00 of (Load 4 of (Key (Picked unit)) in Deidara_C3_Hash) matching (((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True)) and do (Actions)
                • Loop - Actions
                  • Unit - Cause Deidara_C3_Caster to damage (Picked unit), dealing Deidara_C3_Damage damage of attack type Spells and damage type Fire
              • Set Deidara_C3_Caster = No unit
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Deidara_C3_Timer Equal to 3.00
                • Then - Actions
                  • Player Group - Pick every player in (All players) and do (Actions)
                    • Loop - Actions
                      • Camera - Stop swaying/shaking the camera for (Picked player)
                  • Custom script: call RemoveLocation(LoadLocationHandle(udg_Deidara_C3_Hash, 1, GetHandleId(GetEnumUnit())))
                  • Unit Group - Remove (Picked unit) from Deidara_C3_Group
                  • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Deidara_C3_Hash
                • Else - Actions
  • C4 INIT
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[8]
    • Actions
      • Set Deidara_C4_Damage = (2000.00 x (Real((Level of Deidara_CONF_Spells[5] for (Triggering unit)))))
      • Set Deidara_C4_Point[1] = (Target point of ability being cast)
      • Unit - Create 1 Deidara_CONF_Units[8] for (Triggering player) at Deidara_C4_Point[1] facing (Facing of (Triggering unit)) degrees
      • Unit - Add a 10.00 second Generic expiration timer to (Last created unit)
      • Animation - Change (Last created unit)'s animation speed to 50.00% of its original speed
      • Animation - Play (Last created unit)'s spell four animation
      • Animation - Change (Last created unit)'s size to (1.00%, 1.00%, 1.00%) of its original size
      • Hashtable - Save Handle Of(Last created unit) as 3 of (Key (Triggering unit)) in Deidara_C4_Hash
      • Hashtable - Save Handle OfDeidara_C4_Point[1] as 1 of (Key (Triggering unit)) in Deidara_C4_Hash
      • Hashtable - Save 0.00 as 2 of (Key (Triggering unit)) in Deidara_C4_Hash
      • Hashtable - Save Deidara_C4_Damage as 5 of (Key (Triggering unit)) in Deidara_C4_Hash
      • Unit Group - Add (Triggering unit) to Deidara_C4_Group
  • C4 LOOP
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in Deidara_C4_Group and do (Actions)
        • Loop - Actions
          • Set Deidara_C4_Timer = (Load 2 of (Key (Picked unit)) from Deidara_C4_Hash)
          • Set Deidara_C4_Damage = (Load 5 of (Key (Picked unit)) from Deidara_C4_Hash)
          • Hashtable - Save (Deidara_C4_Timer + 1.00) as 2 of (Key (Picked unit)) in Deidara_C4_Hash
          • Set Deidara_C4_Point[2] = (Load 1 of (Key (Picked unit)) in Deidara_C4_Hash)
          • Set Deidara_C4_Dummy = (Load 3 of (Key (Picked unit)) in Deidara_C4_Hash)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Deidara_C4_Timer Equal to 120.00
            • Then - Actions
              • Animation - Play (Picked unit)'s spell two animation
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Deidara_C4_Timer Less than or equal to 132.00
            • Then - Actions
              • Animation - Change Deidara_C4_Dummy's size to ((Deidara_C4_Timer x 2.50)%, (Deidara_C4_Timer x 2.50)%, (Deidara_C4_Timer x 2.50)%) of its original size
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Deidara_C4_Timer Equal to 140.00
                • Then - Actions
                  • Unit - Create 1 Deidara_CONF_Units[9] for (Owner of (Picked unit)) at Deidara_C4_Point[2] facing Default building facing degrees
                  • Unit - Kill (Last created unit)
                  • Unit - Hide Deidara_C4_Dummy
                  • Unit - Kill Deidara_C4_Dummy
                  • Hashtable - Save Handle Of(Units within 600.00 of Deidara_C4_Point[2] matching ((((Matching unit) is A structure) Equal to False) and (((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True))) as 4 of (Key (Picked unit)) in Deidara_C4_Hash
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Deidara_C4_Timer Greater than 140.00
                      • Deidara_C4_Timer Less than 300.00
                    • Then - Actions
                      • Set Deidara_C4_Caster = (Picked unit)
                      • Unit Group - Pick every unit in (Load 4 of (Key (Picked unit)) in Deidara_C4_Hash) and do (Actions)
                        • Loop - Actions
                          • Unit - Cause Deidara_C4_Caster to damage (Picked unit), dealing (Deidara_C4_Damage / 160.00) damage of attack type Spells and damage type Universal
                      • Set Deidara_C4_Caster = No unit
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • Deidara_C4_Timer Equal to 300.00
                        • Then - Actions
                          • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Deidara_C4_Hash
                          • Unit Group - Remove (Picked unit) from Deidara_C4_Group
                        • Else - Actions
  • SEA INIT
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deidara_CONF_Spells[10]
    • Actions
      • -------- PS: Damage Total --------
      • Set Deidara_SEA_Damage = (1000.00 x (Real((Level of Deidara_CONF_Spells[5] for (Triggering unit)))))
      • Set Deidara_SEA_Point[1] = (Position of (Triggering unit))
      • Set Deidara_SEA_Point[2] = (Target point of ability being cast)
      • Hashtable - Save Handle OfDeidara_SEA_Point[1] as 1 of (Key (Triggering unit)) in Deidara_SEA_Hash
      • Hashtable - Save Handle OfDeidara_SEA_Point[2] as 2 of (Key (Triggering unit)) in Deidara_SEA_Hash
      • Hashtable - Save 0.00 as 3 of (Key (Triggering unit)) in Deidara_SEA_Hash
      • Hashtable - Save Deidara_SEA_Damage as 4 of (Key (Triggering unit)) in Deidara_SEA_Hash
      • Unit Group - Add (Triggering unit) to Deidara_SEA_Group
  • SEA LOOP
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in Deidara_SEA_Group and do (Actions)
        • Loop - Actions
          • Set Deidara_SEA_Timer = (Load 3 of (Key (Picked unit)) from Deidara_SEA_Hash)
          • Hashtable - Save (Deidara_SEA_Timer + 1.00) as 3 of (Key (Picked unit)) in Deidara_SEA_Hash
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Deidara_SEA_Timer Greater than or equal to 30.00
            • Then - Actions
              • Custom script: call RemoveLocation(LoadLocationHandle(udg_Deidara_SEA_Hash, 1, GetHandleId(GetEnumUnit())))
              • Custom script: call RemoveLocation(LoadLocationHandle(udg_Deidara_SEA_Hash, 2, GetHandleId(GetEnumUnit())))
              • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Deidara_SEA_Hash
              • Unit Group - Remove (Picked unit) from Deidara_SEA_Group
            • Else - Actions
              • Set Deidara_SEA_Point[3] = (Position of (Picked unit))
              • Set Deidara_SEA_Point[4] = (Deidara_SEA_Point[3] offset by 30.00 towards (Angle from (Load 1 of (Key (Picked unit)) in Deidara_SEA_Hash) to (Load 2 of (Key (Picked unit)) in Deidara_SEA_Hash)) degrees)
              • Animation - Play (Picked unit)'s spell three animation
              • Unit - Move (Picked unit) instantly to Deidara_SEA_Point[4], facing (Angle from (Load 1 of (Key (Picked unit)) in Deidara_SEA_Hash) to (Load 2 of (Key (Picked unit)) in Deidara_SEA_Hash)) degrees
              • Unit - Create 1 Deidara_CONF_Units[4] for (Owner of (Picked unit)) at Deidara_SEA_Point[3] facing (Facing of (Picked unit)) degrees
              • Animation - Change (Last created unit)'s size to (10.00%, 10.00%, 10.00%) of its original size
              • Animation - Change (Last created unit) flying height to ((Current flying height of (Picked unit)) + 200.00) at 0.00
              • Animation - Change (Last created unit) flying height to 0.00 at ((Current flying height of (Picked unit)) + 200.00)
              • Unit Group - Add (Last created unit) to Deidara_SEA_Group2
              • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
              • Set Deidara_SEA_Damage = (Load 4 of (Key (Picked unit)) from Deidara_SEA_Hash)
              • Hashtable - Save Deidara_SEA_Damage as 1 of (Key (Last created unit)) in Deidara_SEA_Hash
              • Custom script: call RemoveLocation(udg_Deidara_SEA_Point[3])
              • Custom script: call RemoveLocation(udg_Deidara_SEA_Point[4])
  • SEA UNIT DIE
    • Events
      • Unit - A unit Dies
    • Conditions
      • ((Triggering unit) is in Deidara_SEA_Group2) Equal to True
    • Actions
      • Unit - Hide (Triggering unit)
      • Set Deidara_SEA_Point[5] = (Position of (Triggering unit))
      • Special Effect - Create a special effect at Deidara_SEA_Point[5] using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
      • Special Effect - Destroy (Last created special effect)
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units within 200.00 of Deidara_SEA_Point[5] matching (((Matching unit) belongs to an enemy of (Triggering player)) Equal to True)) and do (Actions)
        • Loop - Actions
          • Unit - Cause (Triggering unit) to damage (Picked unit), dealing ((Load 1 of (Key (Triggering unit)) from Deidara_SEA_Hash) / 30.00) damage of attack type Spells and damage type Fire
      • Custom script: call RemoveLocation(udg_Deidara_SEA_Point[5])
      • Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in Deidara_SEA_Hash
      • Unit Group - Remove (Triggering unit) from Deidara_SEA_Group2
Keywords:
spell pack, naruto, deidara, gui, mui
Contents

Deidara Spellpack v1.0 (Map)

Reviews
12th Dec 2015 IcemanBo: Too long as NeedsFix. Rejected. 11:16, 27th Jul 2012 Magtheridon96: This uses far too many imports :/ Also, you need to cache repeated function calls like (Last created unit) and (Triggering player) because repeating...

Moderator

M

Moderator

12th Dec 2015
IcemanBo: Too long as NeedsFix. Rejected.

11:16, 27th Jul 2012
Magtheridon96: This uses far too many imports :/

Also, you need to cache repeated function calls like (Last created unit) and (Triggering player) because repeating them is inefficient.
 
Top