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

Implosion Spell (Need Help)

Status
Not open for further replies.
Level 2
Joined
Jan 4, 2008
Messages
9
Hey. I found this awesome spell. But when I upload it and all that to my own map then it don't show the real spell. Only blizzard kind of spell and hit the enemy 1. Thats it..
It's suposed to take every unit in X range and then kill them and that.
Link to spell: http://www.hiveworkshop.com/resources_new/spells/978/

My triggers:
  • Implosion Cast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Unknown (A00H)
    • Actions
      • -------- YOU MAY CHANGE THE SPELL IF YOU ARE CHANGING THE AREA OF EFFECT, BUT BE CAREFUL! --------
      • Set TargetPointImplosion[(Player number of (Owner of (Casting unit)))] = (Target point of ability being cast)
      • Unit - Create 1 Implosion (Sphere) for (Owner of (Casting unit)) at (Target point of ability being cast) facing Default building facing degrees
      • Unit Group - Add (Last created unit) to Spheres
      • Set Sphere[(Player number of (Owner of (Casting unit)))] = (Last created unit)
      • Unit - Create 1 Implosion (Birth) for (Owner of (Casting unit)) at (Target point of ability being cast) facing Default building facing degrees
      • Animation - Play (Last created unit)'s birth animation
      • Unit - Create 1 Implosion (Chaos) for (Owner of (Casting unit)) at ((Target point of ability being cast) offset by (Random real number between 0.00 and 500.00) towards (Random angle) degrees) facing Default building facing degrees
      • Unit - Set the custom value of (Last created unit) to (Player number of (Owner of (Casting unit)))
      • Animation - Change (Last created unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 40.00% transparency
      • Animation - Change (Triggering unit) flying height to (Random real number between 0.00 and 350.00) at 9000.00
      • Unit - Create 1 Implosion (Chaos) for (Owner of (Casting unit)) at ((Target point of ability being cast) offset by (Random real number between 0.00 and 500.00) towards (Random angle) degrees) facing Default building facing degrees
      • Unit - Set the custom value of (Last created unit) to (Player number of (Owner of (Casting unit)))
      • Animation - Change (Last created unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 40.00% transparency
      • Animation - Change (Triggering unit) flying height to (Random real number between 0.00 and 350.00) at 9000.00
      • Unit - Create 1 Implosion (Chaos) for (Owner of (Casting unit)) at ((Target point of ability being cast) offset by (Random real number between 0.00 and 500.00) towards (Random angle) degrees) facing Default building facing degrees
      • Unit - Set the custom value of (Last created unit) to (Player number of (Owner of (Casting unit)))
      • Animation - Change (Last created unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 40.00% transparency
      • Animation - Change (Triggering unit) flying height to (Random real number between 0.00 and 350.00) at 9000.00
      • Unit - Set the custom value of Sphere[(Player number of (Owner of (Casting unit)))] to 1500
      • Sound - Play ImplosionCast <gen>
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s animation speed to 45.00% of its original speed
      • Wait 1.00 seconds
      • Sound - Play ImplosionLoop2 <gen>
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s animation speed to 2.50% of its original speed
      • Unit Group - Pick every unit in (Units within 500.00 of TargetPointImplosion[(Player number of (Owner of (Casting unit)))]) and do (Actions)
        • Loop - Actions
          • Unit - Pause (Picked unit)
          • Unit - Turn collision for (Picked unit) Off
          • Unit Group - Add (Picked unit) to DoomedGroup[(Player number of (Owner of (Casting unit)))]
      • Wait 1.00 seconds
      • Unit Group - Pick every unit in (Units within 500.00 of TargetPointImplosion[(Player number of (Owner of (Casting unit)))]) and do (Actions)
        • Loop - Actions
          • Unit - Pause (Picked unit)
          • Unit - Turn collision for (Picked unit) Off
          • Unit Group - Add (Picked unit) to DoomedGroup[(Player number of (Owner of (Casting unit)))]
      • Destructible - Pick every destructible within 500.00 of (Position of Sphere[(Player number of (Owner of (Casting unit)))]) and do (Actions)
        • Loop - Actions
          • Destructible - Kill (Picked destructible)
      • Sound - Play ImplosionLoop1 <gen>
      • Environment - Create a 8.00 second Depression ripple deformation at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] with starting radius 500.00, ending radius 1500.00, and depth 75.00, using 0.50 second ripples spaced 150.00 apart
      • Wait 1.00 seconds
      • Unit - Set the custom value of Sphere[(Player number of (Owner of (Casting unit)))] to 2500
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 90.00%, 90.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 80.00%, 80.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 70.00%, 70.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 60.00%, 60.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Sound - Play ImplosionLoop1 <gen>
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 50.00%, 50.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 40.00%, 40.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 30.00%, 30.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 20.00%, 20.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 10.00%, 10.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Animation - Change Sphere[(Player number of (Owner of (Casting unit)))]'s vertex coloring to (100.00%, 0.00%, 0.00%) with 0.00% transparency
      • Wait 0.25 seconds
      • Unit - Set the custom value of Sphere[(Player number of (Owner of (Casting unit)))] to ((Custom value of Sphere[(Player number of (Owner of (Casting unit)))]) + 1000)
      • Sound - Play ImplosionShrink <gen>
      • Sound - Stop ImplosionLoop1 <gen> After fading
      • Sound - Stop ImplosionLoop2 <gen> After fading
      • Wait 1.00 seconds
      • Unit Group - Pick every unit in (Units within 500.00 of TargetPointImplosion[(Player number of (Owner of (Casting unit)))]) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Unit-type of (Picked unit)) Equal to Implosion (Chaos)
            • Then - Actions
              • Unit - Explode (Picked unit)
            • Else - Actions
              • Do nothing
      • Sound - Play ImplosionDie1 <gen>
      • Unit - Create 1 Suck In Effect for (Owner of (Casting unit)) at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] facing Default building facing degrees
      • Animation - Change (Last created unit)'s animation speed to 40.00% of its original speed
      • Unit - Create 1 Clap Effect for (Owner of (Casting unit)) at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] facing Default building facing degrees
      • -------- YOU MAY CHANGE THE BELOW TO WHATEVER YOU WANT --------
      • Unit Group - Pick every unit in DoomedGroup[(Player number of (Owner of (Casting unit)))] and do (Actions)
        • Loop - Actions
          • Unit - Explode (Picked unit)
      • -------- YOU MAY CHANGE THE ABOVE TO WHATEVER YOU WANT --------
      • Wait 1.00 seconds
      • Unit - Create 1 Stomp Effect for (Owner of (Casting unit)) at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] facing Default building facing degrees
      • Animation - Change (Last created unit)'s animation speed to 25.00% of its original speed
      • Sound - Play ImplosionDie2 <gen>
      • Unit - Remove Sphere[(Player number of (Owner of (Casting unit)))] from the game
      • Environment - Create a 3.00 second Normal ripple deformation at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] with starting radius 500.00, ending radius 500.00, and depth 150.00, using 0.50 second ripples spaced 150.00 apart
      • Environment - Create a 0.50 second Permanent crater deformation at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] with radius 500.00 and depth 75.00
      • Ubersplat - Create ubersplat at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] of type Human Flame Strike 2 with color (100.00%, 0.00%, 0.00%) with 0.00% transparency. Enable paused state. Disable skipping birth time.
      • Ubersplat - Change render always state of (Last created ubersplat) to Enable
      • Special Effect - Create a special effect at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] using Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl
      • Special Effect - Create a special effect at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] using Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl
      • Special Effect - Create a special effect at TargetPointImplosion[(Player number of (Owner of (Casting unit)))] using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
      • Unit Group - Remove all units from DoomedGroup[(Player number of (Owner of (Casting unit)))]
  • Periodic Stuff
    • Events
      • Time - Every 0.05 seconds of game time
    • Conditions
    • Actions
      • -------- This is for the blue ribbons: --------
      • Set TempGroup1 = (Units in (Playable map area)((Unit-type of (Matching unit)) Equal to Implosion (Chaos)))
      • Unit Group - Pick every unit in TempGroup1 and do (Actions)
        • Loop - Actions
          • Set TempPoint1 = (TargetPointImplosion[(Player number of (Owner of (Picked unit)))] offset by (Random real number between 0.00 and (Real((Substring((String((Custom value of Sphere[(Custom value of (Picked unit))]))), 2, 4))))) towards (Random angle) degrees)
          • Unit - Move (Picked unit) instantly to TempPoint1
          • Animation - Change (Picked unit) flying height to (Random real number between 0.00 and 350.00) at 9000.00
          • Custom script: call RemoveLocation( udg_TempPoint1 )
      • Custom script: call DestroyGroup( udg_TempGroup1 )
      • -------- This changes the scale of the sphere and crunches the units: --------
      • Unit Group - Pick every unit in Spheres and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Substring((String((Custom value of (Picked unit)))), 1, 1)) Equal to 1
            • Then - Actions
              • Do nothing
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Substring((String((Custom value of (Picked unit)))), 1, 1)) Equal to 2
                • Then - Actions
                  • Unit - Set the custom value of (Picked unit) to ((Custom value of (Picked unit)) - 1)
                  • Animation - Change (Picked unit)'s size to (((Real((Custom value of (Picked unit)))) - 2000.00)%, ((Real((Custom value of (Picked unit)))) - 2000.00)%, ((Real((Custom value of (Picked unit)))) - 2000.00)%) of its original size
                  • Set TempPoint1 = (Position of (Picked unit))
                  • Set TempGroup1 = (Units within (Real((Substring((String((Custom value of (Picked unit)))), 2, 4)))) of TempPoint1 matching (((Unit-type of (Matching unit)) Not equal to Implosion (Chaos)) and ((Unit-type of (Matching unit)) Not equal to Implosion (Sphere))))
                  • Unit Group - Add all units of TempGroup1 to DoomedGroup[(Player number of (Owner of (Picked unit)))]
                  • Unit Group - Pick every unit in TempGroup1 and do (Actions)
                    • Loop - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • ((Picked unit) is A structure) Equal to False
                        • Then - Actions
                          • Set TempPoint3 = (Position of (Picked unit))
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • (Distance between TempPoint1 and TempPoint3) Less than or equal to 1.00
                            • Then - Actions
                              • Unit - Move (Picked unit) instantly to TempPoint1
                            • Else - Actions
                              • Set TempPoint2 = (TempPoint1 offset by ((Distance between TempPoint1 and TempPoint3) - 1.00) towards (Angle from TempPoint1 to TempPoint3) degrees)
                              • Unit - Move (Picked unit) instantly to TempPoint2
                              • Custom script: call RemoveLocation( udg_TempPoint2 )
                          • Custom script: call RemoveLocation( udg_TempPoint3 )
                        • Else - Actions
                          • Do nothing
                  • Custom script: call DestroyGroup( udg_TempGroup1 )
                  • Custom script: call RemoveLocation( udg_TempPoint1 )
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Substring((String((Custom value of (Picked unit)))), 1, 1)) Equal to 3
                    • Then - 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 3008
                        • Then - Actions
                          • Unit - Set the custom value of (Picked unit) to 3001
                          • Animation - Change (Picked unit)'s size to (((Real((Custom value of (Picked unit)))) - 3000.00)%, ((Real((Custom value of (Picked unit)))) - 3000.00)%, ((Real((Custom value of (Picked unit)))) - 3000.00)%) of its original size
                          • Set TempPoint1 = (Position of (Picked unit))
                          • Set TempGroup1 = (Units within (Real((Substring((String((Custom value of (Picked unit)))), 2, 4)))) of TempPoint1 matching (((Unit-type of (Matching unit)) Not equal to Implosion (Chaos)) and ((Unit-type of (Matching unit)) Not equal to Implosion (Sphere))))
                          • Unit Group - Add all units of TempGroup1 to DoomedGroup[(Player number of (Owner of (Picked unit)))]
                          • Unit Group - Pick every unit in TempGroup1 and do (Actions)
                            • Loop - Actions
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • ((Picked unit) is A structure) Equal to False
                                • Then - Actions
                                  • Set TempPoint3 = (Position of (Picked unit))
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • (Distance between TempPoint1 and TempPoint3) Less than or equal to 8.00
                                    • Then - Actions
                                      • Unit - Move (Picked unit) instantly to TempPoint1
                                    • Else - Actions
                                      • Set TempPoint2 = (TempPoint1 offset by ((Distance between TempPoint1 and TempPoint3) - 8.00) towards (Angle from TempPoint1 to TempPoint3) degrees)
                                      • Unit - Move (Picked unit) instantly to TempPoint2
                                      • Custom script: call RemoveLocation( udg_TempPoint2 )
                                  • Custom script: call RemoveLocation( udg_TempPoint3 )
                                • Else - Actions
                                  • Do nothing
                          • Custom script: call DestroyGroup( udg_TempGroup1 )
                          • Custom script: call RemoveLocation( udg_TempPoint1 )
                        • Else - Actions
                          • Unit - Set the custom value of (Picked unit) to ((Custom value of (Picked unit)) - 8)
                          • Animation - Change (Picked unit)'s size to (((Real((Custom value of (Picked unit)))) - 3000.00)%, ((Real((Custom value of (Picked unit)))) - 3000.00)%, ((Real((Custom value of (Picked unit)))) - 3000.00)%) of its original size
                          • Set TempPoint1 = (Position of (Picked unit))
                          • Set TempGroup1 = (Units within (Real((Substring((String((Custom value of (Picked unit)))), 2, 4)))) of TempPoint1 matching (((Unit-type of (Matching unit)) Not equal to Implosion (Sphere)) and ((Unit-type of (Matching unit)) Not equal to )))
                          • Unit Group - Add all units of TempGroup1 to DoomedGroup[(Player number of (Owner of (Picked unit)))]
                          • Unit Group - Pick every unit in TempGroup1 and do (Actions)
                            • Loop - Actions
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • ((Picked unit) is A structure) Equal to False
                                • Then - Actions
                                  • Set TempPoint3 = (Position of (Picked unit))
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • (Distance between TempPoint1 and TempPoint3) Less than or equal to 8.00
                                    • Then - Actions
                                      • Unit - Move (Picked unit) instantly to TempPoint1
                                    • Else - Actions
                                      • Set TempPoint2 = (TempPoint1 offset by ((Distance between TempPoint1 and TempPoint3) - 8.00) towards (Angle from TempPoint1 to TempPoint3) degrees)
                                      • Unit - Move (Picked unit) instantly to TempPoint2
                                      • Custom script: call RemoveLocation( udg_TempPoint2 )
                                  • Custom script: call RemoveLocation( udg_TempPoint3 )
                                • Else - Actions
                                  • Do nothing
                          • Custom script: call DestroyGroup( udg_TempGroup1 )
                          • Custom script: call RemoveLocation( udg_TempPoint1 )
                    • Else - Actions
                      • Do nothing
 

Rui

Rui

Level 41
Joined
Jan 7, 2005
Messages
7,550
Spell-questions go on the Spells and Systems forum.
[self="http://www.hiveworkshop.com/forums/forumdisplay.php?f=309"]
spellsandsystems.gif
»»» Spells and Systems
[/self]
Talk regarding custom created spells and systems takes place in here. Get help creating a spell or implementing a system etc.
Do NOT request for help or talk about spell-creation in the World Editor Help Zone. Spell-matters go on the Spells and Systems, which has it's link above.
~Thread Moved
 
Status
Not open for further replies.
Top