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

[cnnn12] Simple Spells Pack 1.0

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
My first time upload spells :)
I made it just for fun ^_^ hope you like it
some easy spells and pet system :)
  • Inferno
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Inferno (Sorceress)
    • Actions
      • Set Inferno_Integers[3] = (Inferno_Integers[3] + 1)
      • Set PlayerNumber_Integers[0] = (Player number of (Owner of (Casting unit)))
      • Set Inferno_UnitNumber_Integers[PlayerNumber_Integers[0]] = 0
      • Set Sorceress[PlayerNumber_Integers[0]] = (Casting unit)
      • Set Inferno_CasterPoints[PlayerNumber_Integers[0]] = (Position of Sorceress[PlayerNumber_Integers[0]])
      • Set Inferno_TargetPoints[PlayerNumber_Integers[0]] = (Target point of ability being cast)
      • Set Inferno_AngleReals[PlayerNumber_Integers[0]] = (Angle from Inferno_CasterPoints[PlayerNumber_Integers[0]] to Inferno_TargetPoints[PlayerNumber_Integers[0]])
      • Set Inferno_CasterPoints[PlayerNumber_Integers[0]] = (Inferno_CasterPoints[PlayerNumber_Integers[0]] offset by 140.00 towards Inferno_AngleReals[PlayerNumber_Integers[0]] degrees)
      • Set Inferno_Booleans[PlayerNumber_Integers[0]] = True
      • Custom script: call RemoveLocation (udg_Inferno_TargetPoints[udg_PlayerNumber_Integers[0]])
      • Trigger - Turn on Inferno New Loop <gen>
  • Inferno New Loop
    • Events
      • Time - Every 0.10 seconds of game time
    • Conditions
    • Actions
      • Set Inferno_Integers[3] = 6
      • For each (Integer Inferno_Integers[0]) from 1 to 6, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Inferno_Booleans[Inferno_Integers[0]] Equal to True
            • Then - Actions
              • Set Inferno_UnitNumber_Integers[0] = (Inferno_UnitNumber_Integers[0] + 1)
              • Set Inferno_UnitAngle_Reals[Inferno_UnitNumber_Integers[0]] = (Inferno_AngleReals[Inferno_Integers[0]] + (Random real number between -9.00 and 9.00))
              • Unit - Create 1 Inferno for (Player(Inferno_Integers[0])) at Inferno_CasterPoints[Inferno_Integers[0]] facing Default building facing degrees
              • Set Inferno_Units[Inferno_UnitNumber_Integers[0]] = (Last created unit)
              • Unit - Add a 0.75 second Generic expiration timer to Inferno_Units[Inferno_UnitNumber_Integers[0]]
              • Animation - Play Inferno_Units[Inferno_UnitNumber_Integers[0]]'s death animation
              • Animation - Change Inferno_Units[Inferno_UnitNumber_Integers[0]]'s animation speed to 25.00% of its original speed
              • Trigger - Turn on Inferno Move Loop <gen>
            • Else - Actions
              • Set Inferno_Integers[3] = (Inferno_Integers[3] - 1)
              • Custom script: call RemoveLocation (udg_Inferno_CasterPoints[udg_Inferno_Integers[0]])
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Inferno_Integers[3] Less than 1
                • Then - Actions
                  • Trigger - Turn off (This trigger)
                • Else - Actions
  • Inferno Move Loop
    • Events
      • Time - Every 0.04 seconds of game time
    • Conditions
    • Actions
      • For each (Integer Inferno_Integers[2]) from 1 to Inferno_UnitNumber_Integers[0], do (Actions)
        • Loop - Actions
          • Unit - Move Inferno_Units[Inferno_Integers[2]] instantly to ((Position of Inferno_Units[Inferno_Integers[2]]) offset by 20.00 towards Inferno_UnitAngle_Reals[Inferno_Integers[2]] degrees)
          • Unit Group - Pick every unit in (Units within 115.00 of (Position of Inferno_Units[Inferno_Integers[2]]) matching ((((Matching unit) belongs to an enemy of (Owner of Inferno_Units[Inferno_Integers[2]])) Equal to True) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) is and do (Actions)
            • Loop - Actions
              • Unit - Cause Sorceress[(Player number of (Owner of Inferno_Units[Inferno_Integers[2]]))] to damage (Picked unit), dealing 30.00 damage of attack type Spells and damage type Normal
              • Unit Group - Add (Picked unit) to Inferno_SafeGroups[Inferno_Integers[2]]
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Number of units in (Units of type Inferno)) Equal to 0
        • Then - Actions
          • For each (Integer Inferno_Integers[5]) from 1 to Inferno_UnitNumber_Integers[0], do (Actions)
            • Loop - Actions
              • Unit Group - Remove all units from Inferno_SafeGroups[Inferno_Integers[5]]
          • Set Inferno_UnitNumber_Integers[0] = 0
          • Trigger - Turn off (This trigger)
        • Else - Actions
  • Inferno Stop N Finish
    • Events
      • Unit - A unit Stops casting an ability
      • Unit - A unit Finishes casting an ability
    • Conditions
      • (Ability being cast) Equal to Inferno (Sorceress)
    • Actions
      • Set PlayerNumber_Integers[0] = (Player number of (Owner of (Casting unit)))
      • Set Inferno_Booleans[PlayerNumber_Integers[0]] = False
  • Inferno Return Animation
    • Events
      • Unit - A unit Dies
    • Conditions
      • Inferno Equal to (Unit-type of (Dying unit))
    • Actions
      • Animation - Change (Dying unit)'s animation speed to 300.00% of its original speed

  • Glacial Spike
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Glacial Spike
    • Actions
      • Set PlayerNumber_Integers[0] = (Player number of (Owner of (Casting unit)))
      • Unit Group - Remove all units from GlacialSpike_SafeGroups[PlayerNumber_Integers[0]]
      • Set GlacialSpike_NumberIntegers[PlayerNumber_Integers[0]] = 0
      • Set GlacialSpike_DistanceReals[PlayerNumber_Integers[0]] = 0.00
      • Set GlacialSpike_CastPoints[PlayerNumber_Integers[0]] = (Position of Sorceress[PlayerNumber_Integers[0]])
      • Set GlacialSpike_TargetPoints[PlayerNumber_Integers[0]] = (Target point of ability being cast)
      • Set GlacialSpike_AngleReals[PlayerNumber_Integers[0]] = (Angle from GlacialSpike_CastPoints[PlayerNumber_Integers[0]] to GlacialSpike_TargetPoints[PlayerNumber_Integers[0]])
      • Set GlacialSpike_CastPoints[PlayerNumber_Integers[0]] = (GlacialSpike_CastPoints[PlayerNumber_Integers[0]] offset by 75.00 towards GlacialSpike_AngleReals[PlayerNumber_Integers[0]] degrees)
      • Set GlacialSpike_Booleans[PlayerNumber_Integers[0]] = True
      • Trigger - Turn on Glacial Spike Loop <gen>
  • Glacial Spike Loop
    • Events
      • Time - Every 0.05 seconds of game time
    • Conditions
    • Actions
      • Set GlacialSpike_Integers[0] = 6
      • For each (Integer GlacialSpike_Integers[1]) from 1 to 6, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • GlacialSpike_Booleans[GlacialSpike_Integers[1]] Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • GlacialSpike_NumberIntegers[GlacialSpike_Integers[1]] Less than 20
                • Then - Actions
                  • Set GlacialSpike_Integers[2] = (GlacialSpike_Integers[2] + 1)
                  • Set GlacialSpike_NumberIntegers[GlacialSpike_Integers[1]] = (GlacialSpike_NumberIntegers[GlacialSpike_Integers[1]] + 1)
                  • Set GlacialSpike_DistanceReals[GlacialSpike_Integers[1]] = (GlacialSpike_DistanceReals[GlacialSpike_Integers[1]] + 40.00)
                  • Set GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] = (GlacialSpike_CastPoints[GlacialSpike_Integers[1]] offset by GlacialSpike_DistanceReals[GlacialSpike_Integers[1]] towards GlacialSpike_AngleReals[GlacialSpike_Integers[1]] degrees)
                  • Set GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] = (GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] offset by (Random real number between 0.00 and 50.00) towards (Random angle) degrees)
                  • Set GlacialSpike_MaxSizeReals[GlacialSpike_Integers[2]] = (40.00 + (((Real(GlacialSpike_NumberIntegers[GlacialSpike_Integers[1]])) x 10.00) / 5.00))
                  • Set GlacialSpike_SizeReals[GlacialSpike_Integers[2]] = 5.00
                  • Unit - Create 1 Glacial Spike for (Player(GlacialSpike_Integers[1])) at GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] facing GlacialSpike_AngleReals[GlacialSpike_Integers[1]] degrees
                  • Set GlacialSpike_Units[GlacialSpike_Integers[2]] = (Last created unit)
                  • Unit - Add a 6.00 second Generic expiration timer to GlacialSpike_Units[GlacialSpike_Integers[2]]
                  • Animation - Change GlacialSpike_Units[GlacialSpike_Integers[2]]'s size to (GlacialSpike_SizeReals[GlacialSpike_Integers[2]]%, GlacialSpike_SizeReals[GlacialSpike_Integers[2]]%, GlacialSpike_SizeReals[GlacialSpike_Integers[2]]%) of its original size
                  • Unit - Add Locust to GlacialSpike_Units[GlacialSpike_Integers[2]]
                  • Unit - Remove Locust from GlacialSpike_Units[GlacialSpike_Integers[2]]
                  • Unit - Turn collision for GlacialSpike_Units[GlacialSpike_Integers[2]] Off
                  • Unit - Move GlacialSpike_Units[GlacialSpike_Integers[2]] instantly to GlacialSpike_UnitPoints[GlacialSpike_Integers[2]]
                  • Unit - Turn collision for GlacialSpike_Units[GlacialSpike_Integers[2]] On
                  • Special Effect - Create a special effect at GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] using Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Unit Group - Pick every unit in (Units within 150.00 of (Position of GlacialSpike_Units[GlacialSpike_Integers[2]]) matching ((((Matching unit) belongs to an enemy of (Owner of GlacialSpike_Units[GlacialSpike_Integers[2]])) Equal to True) and ((((Matching unit) is alive) Equal to True) and ( and do (Actions)
                    • Loop - Actions
                      • Unit - Cause Sorceress[(Player number of (Owner of GlacialSpike_Units[GlacialSpike_Integers[2]]))] to damage (Picked unit), dealing 150.00 damage of attack type Spells and damage type Normal
                      • Unit Group - Add (Picked unit) to GlacialSpike_SafeGroups[GlacialSpike_Integers[1]]
                      • Unit - Create 1 Dummy for (Player(GlacialSpike_Integers[1])) at GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] facing GlacialSpike_AngleReals[GlacialSpike_Integers[1]] degrees
                      • Set GlacialSpike_DummyUnit = (Last created unit)
                      • Unit - Add a 1.00 second Generic expiration timer to GlacialSpike_DummyUnit
                      • Unit - Order GlacialSpike_DummyUnit to Undead Lich - Frost Nova (Picked unit)
                  • Set GlacialSpike_SizeBooleans[GlacialSpike_Integers[2]] = True
                  • Trigger - Turn on Glacial Spike Grow Loop <gen>
                  • Custom script: call RemoveLocation (udg_GlacialSpike_UnitPoints[udg_GlacialSpike_Integers[2]])
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • GlacialSpike_Booleans[GlacialSpike_Integers[1]] Equal to True
                    • Then - Actions
                      • Set GlacialSpike_Booleans[GlacialSpike_Integers[1]] = False
                      • Set GlacialSpike_Integers[2] = (GlacialSpike_Integers[2] + 1)
                      • Set GlacialSpike_DistanceReals[GlacialSpike_Integers[1]] = (GlacialSpike_DistanceReals[GlacialSpike_Integers[1]] + 100.00)
                      • Set GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] = (GlacialSpike_CastPoints[GlacialSpike_Integers[1]] offset by GlacialSpike_DistanceReals[GlacialSpike_Integers[1]] towards GlacialSpike_AngleReals[GlacialSpike_Integers[1]] degrees)
                      • Set GlacialSpike_MaxSizeReals[GlacialSpike_Integers[2]] = 150.00
                      • Set GlacialSpike_SizeReals[GlacialSpike_Integers[2]] = 15.00
                      • Unit - Create 1 Glacial Spike for (Player(GlacialSpike_Integers[1])) at GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] facing GlacialSpike_AngleReals[GlacialSpike_Integers[1]] degrees
                      • Set GlacialSpike_Units[GlacialSpike_Integers[2]] = (Last created unit)
                      • Unit - Add a 6.00 second Generic expiration timer to GlacialSpike_Units[GlacialSpike_Integers[2]]
                      • Animation - Change GlacialSpike_Units[GlacialSpike_Integers[2]]'s size to (GlacialSpike_SizeReals[GlacialSpike_Integers[2]]%, GlacialSpike_SizeReals[GlacialSpike_Integers[2]]%, GlacialSpike_SizeReals[GlacialSpike_Integers[2]]%) of its original size
                      • Unit - Add Locust to GlacialSpike_Units[GlacialSpike_Integers[2]]
                      • Unit - Remove Locust from GlacialSpike_Units[GlacialSpike_Integers[2]]
                      • Unit - Turn collision for GlacialSpike_Units[GlacialSpike_Integers[2]] Off
                      • Unit - Move GlacialSpike_Units[GlacialSpike_Integers[2]] instantly to GlacialSpike_UnitPoints[GlacialSpike_Integers[2]]
                      • Unit - Turn collision for GlacialSpike_Units[GlacialSpike_Integers[2]] On
                      • Special Effect - Create a special effect at GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] using Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl
                      • Special Effect - Destroy (Last created special effect)
                      • Special Effect - Create a special effect at GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] using Abilities\Spells\Undead\FreezingBreath\FreezingBreathMissile.mdl
                      • Special Effect - Destroy (Last created special effect)
                      • Unit Group - Pick every unit in (Units within 200.00 of (Position of GlacialSpike_Units[GlacialSpike_Integers[2]]) matching ((((Matching unit) belongs to an enemy of (Owner of GlacialSpike_Units[GlacialSpike_Integers[2]])) Equal to True) and (((Matching unit) is alive) Equal to True))) and do (Actions)
                        • Loop - Actions
                          • Unit - Cause Sorceress[(Player number of (Owner of GlacialSpike_Units[GlacialSpike_Integers[2]]))] to damage (Picked unit), dealing 150.00 damage of attack type Spells and damage type Normal
                          • Unit Group - Add (Picked unit) to GlacialSpike_SafeGroups[GlacialSpike_Integers[1]]
                          • Unit - Create 1 Dummy for (Player(GlacialSpike_Integers[1])) at GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] facing GlacialSpike_AngleReals[GlacialSpike_Integers[1]] degrees
                          • Set GlacialSpike_DummyUnit = (Last created unit)
                          • Unit - Add a 1.00 second Generic expiration timer to GlacialSpike_DummyUnit
                          • Unit - Order GlacialSpike_DummyUnit to Undead Lich - Frost Nova (Picked unit)
                          • Unit - Create 1 Dummy for (Player(GlacialSpike_Integers[1])) at GlacialSpike_UnitPoints[GlacialSpike_Integers[2]] facing GlacialSpike_AngleReals[GlacialSpike_Integers[1]] degrees
                          • Set GlacialSpike_DummyUnit = (Last created unit)
                          • Unit - Add a 1.00 second Generic expiration timer to GlacialSpike_DummyUnit
                          • Unit - Order GlacialSpike_DummyUnit to Night Elf Keeper Of The Grove - Entangling Roots (Picked unit)
                      • Set GlacialSpike_SizeBooleans[GlacialSpike_Integers[2]] = True
                      • Trigger - Turn on Glacial Spike Grow Loop <gen>
                      • Custom script: call RemoveLocation (udg_GlacialSpike_UnitPoints[udg_GlacialSpike_Integers[2]])
                    • Else - Actions
            • Else - Actions
              • Set GlacialSpike_Integers[0] = (GlacialSpike_Integers[0] - 1)
              • Custom script: call RemoveLocation (udg_GlacialSpike_CastPoints[udg_GlacialSpike_Integers[1]])
              • Custom script: call RemoveLocation (udg_GlacialSpike_TargetPoints[udg_GlacialSpike_Integers[1]])
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • GlacialSpike_Integers[0] Less than 1
                • Then - Actions
                  • Trigger - Turn off (This trigger)
                • Else - Actions
  • Glacial Spike Grow Loop
    • Events
      • Time - Every 0.04 seconds of game time
    • Conditions
    • Actions
      • Set GlacialSpike_Integers[5] = GlacialSpike_Integers[2]
      • For each (Integer GlacialSpike_Integers[4]) from 1 to GlacialSpike_Integers[2], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • GlacialSpike_SizeBooleans[GlacialSpike_Integers[4]] Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • GlacialSpike_SizeReals[GlacialSpike_Integers[4]] Less than GlacialSpike_MaxSizeReals[GlacialSpike_Integers[4]]
                • Then - Actions
                  • Set GlacialSpike_SizeReals[GlacialSpike_Integers[4]] = (GlacialSpike_SizeReals[GlacialSpike_Integers[4]] x 1.15)
                  • Animation - Change GlacialSpike_Units[GlacialSpike_Integers[4]]'s size to (GlacialSpike_SizeReals[GlacialSpike_Integers[4]]%, GlacialSpike_SizeReals[GlacialSpike_Integers[4]]%, GlacialSpike_SizeReals[GlacialSpike_Integers[4]]%) of its original size
                • Else - Actions
                  • Set GlacialSpike_SizeBooleans[GlacialSpike_Integers[4]] = False
            • Else - Actions
              • Set GlacialSpike_Integers[5] = (GlacialSpike_Integers[5] - 1)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • GlacialSpike_Integers[5] Less than 1
                • Then - Actions
                  • Set GlacialSpike_Integers[2] = 0
                  • Trigger - Turn off (This trigger)
                • Else - Actions

  • Phoenix Laser
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Phoenix Laser
    • Actions
      • Set PhoenixLaser_Integers[0] = (PhoenixLaser_Integers[0] + 1)
      • Set PhoenixLaser_DistanceReals[PhoenixLaser_Integers[0]] = 10.00
      • Set PhoenixLaser_Units[PhoenixLaser_Integers[0]] = (Casting unit)
      • Set PhoenixLaser_CastPoints[PhoenixLaser_Integers[0]] = (Position of PhoenixLaser_Units[PhoenixLaser_Integers[0]])
      • Set PhoenixLaser_TargetPoints[PhoenixLaser_Integers[0]] = (Target point of ability being cast)
      • Set PhoenixLaser_AngleReals[PhoenixLaser_Integers[0]] = (Angle from PhoenixLaser_CastPoints[PhoenixLaser_Integers[0]] to PhoenixLaser_TargetPoints[PhoenixLaser_Integers[0]])
      • Set PhoenixLaser_AngleReals[PhoenixLaser_Integers[0]] = (PhoenixLaser_AngleReals[PhoenixLaser_Integers[0]] + (Random real number between -45.00 and 45.00))
      • Set PhoenixLaser_TargetPoints[PhoenixLaser_Integers[0]] = (PhoenixLaser_TargetPoints[PhoenixLaser_Integers[0]] offset by -250.00 towards PhoenixLaser_AngleReals[PhoenixLaser_Integers[0]] degrees)
      • Set PhoenixLaser_Booleans[PhoenixLaser_Integers[0]] = True
      • Trigger - Turn on Phoenix Laser Loop <gen>
  • Phoenix Laser Loop
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Set PhoenixLaser_Integers[2] = PhoenixLaser_Integers[0]
      • For each (Integer PhoenixLaser_Integers[1]) from 1 to PhoenixLaser_Integers[0], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • PhoenixLaser_Booleans[PhoenixLaser_Integers[1]] Equal to False
            • Then - Actions
              • Set PhoenixLaser_Integers[2] = (PhoenixLaser_Integers[2] - 1)
              • Custom script: call RemoveLocation (udg_PhoenixLaser_CastPoints[udg_PhoenixLaser_Integers[1]])
              • Custom script: call RemoveLocation (udg_PhoenixLaser_TargetPoints[udg_PhoenixLaser_Integers[1]])
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • PhoenixLaser_Integers[2] Less than 1
                • Then - Actions
                  • Trigger - Turn off (This trigger)
                • Else - Actions
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • And - All (Conditions) are true
                • Conditions
                  • PhoenixLaser_Booleans[PhoenixLaser_Integers[1]] Equal to True
                  • PhoenixLaser_DistanceReals[PhoenixLaser_Integers[1]] Less than or equal to 650.00
            • Then - Actions
              • Set PhoenixLaser_DistanceReals[PhoenixLaser_Integers[1]] = (PhoenixLaser_DistanceReals[PhoenixLaser_Integers[1]] + (9.00 + (PhoenixLaser_DistanceReals[PhoenixLaser_Integers[1]] / 20.00)))
              • Set PhoenixLaser_LaserPoints[PhoenixLaser_Integers[1]] = (PhoenixLaser_TargetPoints[PhoenixLaser_Integers[1]] offset by PhoenixLaser_DistanceReals[PhoenixLaser_Integers[1]] towards PhoenixLaser_AngleReals[PhoenixLaser_Integers[1]] degrees)
              • Unit - Create 1 Phoenix Laser for (Owner of PhoenixLaser_Units[PhoenixLaser_Integers[1]]) at PhoenixLaser_CastPoints[PhoenixLaser_Integers[1]] facing Default building facing degrees
              • Set PhoenixLaser_Dummy = (Last created unit)
              • Unit - Add a 0.25 second Generic expiration timer to PhoenixLaser_Dummy
              • Unit - Order PhoenixLaser_Dummy to Attack Ground PhoenixLaser_LaserPoints[PhoenixLaser_Integers[1]]
              • Custom script: call RemoveLocation (udg_PhoenixLaser_LaserPoints[udg_PhoenixLaser_Integers[1]])
            • Else - Actions
              • Set PhoenixLaser_Booleans[PhoenixLaser_Integers[1]] = False

  • Initialization
    • Events
      • Time - Elapsed game time is 0.10 seconds
    • Conditions
    • Actions
      • Set PlayerNumber_Integers[0] = (Player number of (Owner of Cho'gath 0000 <gen>))
      • Set Sorceress[PlayerNumber_Integers[0]] = Cho'gath 0000 <gen>
      • Unit Group - Pick every unit in (Units in (Entire map)) and do (Actions)
        • Loop - Actions
          • Trigger - Add to Rain Of Fire <gen> the event (Unit - (Picked unit) Takes damage)
          • Trigger - Add to Thunder Storm <gen> the event (Unit - (Picked unit) Takes damage)
  • Untitled Trigger 001
    • Events
      • Unit - A unit enters (Entire map)
    • Conditions
    • Actions
      • Trigger - Add to Rain Of Fire <gen> the event (Unit - (Entering unit) Takes damage)
      • Trigger - Add to Thunder Storm <gen> the event (Unit - (Entering unit) Takes damage)
  • Thunder Storm
    • Events
    • Conditions
      • (Unit-type of (Damage source)) Equal to Thunder Storm
      • ((Triggering unit) has buff Phoenix Fire) Equal to True
    • Actions
      • Unit - Add Locust to (Damage source)
      • Set PlayerNumber_Integers[0] = (Player number of (Owner of (Damage source)))
      • Unit - Create 1 Dummy for (Owner of (Damage source)) at (Position of (Triggering unit)) facing Default building facing degrees
      • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
      • Animation - Change (Last created unit) flying height to 1000.00 at 0.00
      • Unit - Order (Last created unit) to Orc Far Seer - Chain Lightning (Triggering unit)
      • Unit - Create 1 Dummy for (Owner of (Damage source)) at (Position of (Triggering unit)) facing Default building facing degrees
      • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
      • Unit - Order (Last created unit) to Orc Shaman - Purge (Triggering unit)
      • Unit - Cause Sorceress[PlayerNumber_Integers[0]] to damage (Triggering unit), dealing 150.00 damage of attack type Spells and damage type Normal
  • Rain Of Fire
    • Events
    • Conditions
      • (Unit-type of (Damage source)) Equal to Phoenix
      • ((Triggering unit) has buff Phoenix Fire) Equal to True
    • Actions
      • Unit - Create 1 Dummy for (Owner of (Damage source)) at (Position of (Triggering unit)) facing Default building facing degrees
      • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
      • Unit - Order (Last created unit) to Undead Dreadlord - Inferno (Position of (Triggering unit))
Keywords:
inferno, glacial spike, fire, frost, thunder, phoenix, lightning, cnnn12, meteor, laser, pet, system, damage, detection, take damage
Contents

Cnnn12's Spells Pack (Map)

Reviews
12th Dec 2015 IcemanBo: Too long as NeedsFix. Rejected. 12:58, 18th Jul 2014 BPower: Your code has location leaks. Furthermore I recommend you check out the tutorial link I posted in comment 13 Public spell resources must have a configuration...

Moderator

M

Moderator

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

12:58, 18th Jul 2014
BPower:
Your code has location leaks.
Furthermore I recommend you check out the tutorial link I posted in comment 13
Public spell resources must have a configuration trigger instead of beeing completly hard-coded.
 
Level 2
Joined
Jun 22, 2014
Messages
13
Question: why must be 0.03125 ?
This Trigger - Turn on Trigger Loop <gen>
must be put it in ITE
you mean ?
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • ((This trigger) is on) Equal to False
    • Then - Actions
      • Trigger - Turn on (This trigger)
    • Else - Actions
 
Level 13
Joined
Jul 16, 2012
Messages
679
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • ((This trigger) is on) Equal to False
    • Then - Actions
      • Trigger - Turn on (This trigger)
    • Else - Actions

Yes :)

why must be 0.03125 ?

you can also use 0.03 but more efficient if you use 0.03125
this 0.03125 mostly use in DURATION
 
Level 13
Joined
Jul 16, 2012
Messages
679
I forgot something......

Need Add This

- Add Config in every spells (Set All Ability, AoE, Damage, etc)

- In Inferno New Loop, this Set Inferno_Integers[3] = 6 inf front just remove it. In every 0.10, the udg_Inferno_Integers[3] set in 6, so why you put this Set Inferno_Integers[3] = (Inferno_Integers[3] - 1)

- In Inferno Move Loop, you have Unit Group and Point leaks. So in UnitGroup, you forgot add add set bj_wantDestroy=true or call DestroyGroup( udg_VarUG)

- In Inferno Stop N Finish, change this Set PlayerNumber_Integers[0] = (Player number of (Owner of (Casting unit))) to Set PlayerNumber_Integers[0] = (Player number of ( Triggering Player)

- In Inferno Return Animation, Inferno Equal to (Unit-type of (Dying unit)) and Animation - Change (Dying unit)'s animation speed to 300.00% of its original speed, change the Dying Unit into Triggering Unit

- In Glacial Spike, remove this Unit Group - Remove all units from GlacialSpike_SafeGroups[PlayerNumber_Integers[0]], in your loop Set GlacialSpike_Integers[0] = 6. You have Unit Group, SFX (Using Point) Point leaks
so Need Fix
 
Top