1. Are you planning to upload your awesome spell or system to Hive? Please review the rules here.
    Dismiss Notice
  2. The long-awaited results for Concept Art Contest #11 have finally been released!
    Dismiss Notice
  3. Join Texturing Contest #30 now in a legendary battle of mythological creatures!
    Dismiss Notice
  4. The Aftermath has been revealed for the 19th Terraining Contest! Be sure to check out the Results and see what came out of it.
    Dismiss Notice
  5. Melee Mapping Contest #3 - Results are out! Congratulate the winners and check plenty of new 4v4 melee maps designed for this competition!
    Dismiss Notice
  6. The winners of our cinematic soundtrack competition have been decided! Step by the Music Contest #11 - Results to check the entries and congratulate the winners!
    Dismiss Notice
  7. Check out the Staff job openings thread.
    Dismiss Notice

[GUI] Belhammer v1.0

Submitted by Archangel678
This bundle is marked as approved. It works and satisfies the submission rules.
Belhammer

Spells & Systems Mini-Contest #20 Entry; Spell from Eternal Eyes

Ingame Description -


The user summons a volcano. The volcano will emit fire dragons from itself, and the dragons will rise upwards and then rain down, inflicting damage to units near the dragon.

Level 1 Damage - 40
Level 2 Damage - 80
Level 3 Damage - 120
Level 4 Damage - 160


Triggers
Init
  • BelhammerINT
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Hashtable - Create a hashtable
      • Set BelHash = (Last created hashtable)
      • -------- ============================= --------
      • -------- Damage --------
      • Set BelDam = 40.00
      • -------- Starting Height --------
      • Set BelBaseHeight = 50.00
      • -------- Starting rate it moves outward. --------
      • Set BelBaseMoveOut = 2.00
      • -------- Special "Volcano" effect. Sadly, the volcano used in Warcraft 3's death animation is crap, this is used. --------
      • Set BelSFXA = AbilitiesSpellsOtherVolcanoVolcanoDeath.mdl
      • -------- The starting height movement rate. --------
      • Set BelConstant1 = 16.00
      • -------- Starting rate the balls move outward. --------
      • Set BelConstant2 = 0.10
      • -------- The starting spin rate. --------
      • Set BelConstant3 = 2.35
      • -------- The Area of effect. Increases with each level by: (BelConstant4 + ((BelConstant4 / BelConstant15) * Level)) --------
      • Set BelConstant4 = 150.00
      • -------- The explode height --------
      • Set BelConstant5 = 800.00
      • -------- Starting fall rate. --------
      • Set BelConstant6 = -5.60
      • -------- Starting fall move outward rate. --------
      • Set BelConstant7 = 5.00
      • -------- Fall spin rate. --------
      • Set BelConstant8 = -0.75
      • -------- First speed up point --------
      • Set BelConstant9 = 600.00
      • -------- First speed up fall rate. --------
      • Set BelConstant10 = -8.00
      • -------- Second speed up rate. --------
      • Set BelConstant11 = 550.00
      • -------- Second speed up move outward rate. --------
      • Set BelConstant12 = 0.34
      • -------- Second speed up fall rate. --------
      • Set BelConstant13 = 0.35
      • -------- Death height. --------
      • Set BelConstant14 = 70.00
      • -------- Determines if SFX appear. Mostly used for testing, however, it may prove useful for lagging games. --------
      • Set BelBool4 = True
      • -------- AoE multiplier per level. --------
      • Set BelConstant15 = 3.75
Cast
  • BelCast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Belhammer
    • Actions
      • Set BelCast = (Triggering unit)
      • Set BP = (Position of BelCast)
      • Set BelLev = (Level of Belhammer for BelCast)
      • Set BelRealA = (Facing of BelCast)
      • -------- ================================ --------
      • Unit - Create 1 Belhammer Dummy for (Owner of BelCast) at BP facing Default building facing degrees
      • Set BelDummy = (Last created unit)
      • Unit - Hide BelDummy
      • Custom script: set udg_Handle_Bel = GetHandleId(udg_BelDummy)
      • For each (Integer BelLoop) from 1 to 6, do (Actions)
        • Loop - Actions
          • Unit - Create 1 Belhammer Dummy for (Triggering player) at BP facing (BelRealA + ((Real(BelLoop)) x 60.00)) degrees
          • Hashtable - Save Handle Of(Last created unit) as BelLoop of Handle_Bel in BelHash
      • Sound - Play VolcanoLoop <gen> at 100.00% volume, located at BP with Z offset 50.00
      • Hashtable - Save (BelDam x (Real(BelLev))) as 7 of Handle_Bel in BelHash
      • Hashtable - Save BelBaseHeight as 8 of Handle_Bel in BelHash
      • Hashtable - Save BelBaseMoveOut as 9 of Handle_Bel in BelHash
      • Hashtable - Save False as 11 of Handle_Bel in BelHash
      • Hashtable - Save False as 12 of Handle_Bel in BelHash
      • Hashtable - Save BelConstant1 as 13 of Handle_Bel in BelHash
      • Hashtable - Save BelConstant2 as 14 of Handle_Bel in BelHash
      • Hashtable - Save BelConstant3 as 15 of Handle_Bel in BelHash
      • Hashtable - Save Handle OfBelCast as 17 of Handle_Bel in BelHash
      • Hashtable - Save (BelConstant4 + ((BelConstant4 / BelConstant15) x (Real(BelLev)))) as 20 of Handle_Bel in BelHash
      • Custom script: call DestroyEffect(AddSpecialEffectLoc(udg_BelSFXA, udg_BP))
      • -------- ================================ --------
      • Custom script: call GroupAddUnit(udg_BelGroup, udg_BelDummy)
      • Set BelTrigger = (BelTrigger + 1)
      • Trigger - Turn on BelLoop <gen>
      • Custom script: call RemoveLocation(udg_BP)
Loop
  • BelLoop
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in BelGroup and do (Actions)
        • Loop - Actions
          • Set BelCast = (Picked unit)
          • Set BP = (Position of BelCast)
          • Custom script: set udg_Handle_Bel = GetHandleId(udg_BelCast)
          • Set BelBool1 = (Load 11 of Handle_Bel from BelHash)
          • Set BelBool2 = (Load 12 of Handle_Bel from BelHash)
          • Set BelRealA = (Load 8 of Handle_Bel from BelHash)
          • Set BelRealB = (Load 9 of Handle_Bel from BelHash)
          • Set BelRealC = (Load 13 of Handle_Bel from BelHash)
          • Set BelRealD = (Load 14 of Handle_Bel from BelHash)
          • Set BelRealE = (Load 15 of Handle_Bel from BelHash)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • BelRealA Greater than BelConstant5
              • BelBool1 Equal to False
              • BelBool2 Equal to False
            • Then - Actions
              • Sound - Play DragonYesAttack3 <gen> at 100.00% volume, located at BP with Z offset 500.00
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • BelBool4 Equal to True
                • Then - Actions
                  • Unit - Create 1 Explosive Dummy for Neutral Passive at BP facing Default building facing degrees
                  • Set BelDummy = (Last created unit)
                  • Animation - Change BelDummy flying height to BelConstant5 at 0.00
                  • Unit - Add a 0.01 second Generic expiration timer to BelDummy
                  • Unit - Make BelDummy Explode on death
                • Else - Actions
              • Hashtable - Save BelConstant6 as 13 of Handle_Bel in BelHash
              • Hashtable - Save BelConstant7 as 14 of Handle_Bel in BelHash
              • Hashtable - Save BelConstant8 as 15 of Handle_Bel in BelHash
              • Hashtable - Save True as 11 of Handle_Bel in BelHash
              • Custom script: call DestroyEffect(AddSpecialEffectLoc(udg_BelSFXA, udg_BP))
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • BelRealA Less than or equal to BelConstant9
              • BelBool1 Equal to True
              • BelBool2 Equal to False
            • Then - Actions
              • Hashtable - Save BelConstant10 as 13 of Handle_Bel in BelHash
              • Hashtable - Save True as 12 of Handle_Bel in BelHash
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • BelRealA Less than or equal to BelConstant11
              • BelBool1 Equal to True
              • BelBool2 Equal to True
            • Then - Actions
              • Hashtable - Save (BelRealD - BelConstant12) as 14 of Handle_Bel in BelHash
              • Hashtable - Save (BelRealC - BelConstant13) as 13 of Handle_Bel in BelHash
            • Else - Actions
          • For each (Integer BelLoop) from 1 to 6, do (Actions)
            • Loop - Actions
              • Set BelDummy = (Load BelLoop of Handle_Bel in BelHash)
              • Set BelReal = (Facing of BelDummy)
              • Set BP2 = (BP offset by BelRealB towards BelReal degrees)
              • Animation - Change BelDummy flying height to BelRealA at 0.00
              • Unit - Make BelDummy face (BelReal + BelRealE) over 0.00 seconds
              • Custom script: call SetUnitPositionLoc (udg_BelDummy, udg_BP2)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • BelRealA Less than or equal to BelConstant14
                  • BelBool1 Equal to True
                  • BelBool2 Equal to True
                • Then - Actions
                  • Unit - Add a 0.01 second Generic expiration timer to BelDummy
                  • Unit - Make BelDummy Explode on death
                  • Set BelDummy = (Load 17 of Handle_Bel in BelHash)
                  • Set BelReal = (Load 7 of Handle_Bel from BelHash)
                  • Set BelReal2 = (Load 20 of Handle_Bel from BelHash)
                  • Custom script: set bj_wantDestroyGroup = true
                  • Unit Group - Pick every unit in (Units within BelReal2 of BP2 matching ((((Matching unit) is A flying unit) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) belongs to an ally of (Owner of BelCast) and do (Actions)
                    • Loop - Actions
                      • Custom script: call UnitDamageTarget(udg_BelDummy, GetEnumUnit(), udg_BelReal, true, true, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_FIRE, WEAPON_TYPE_WHOKNOWS)
                  • -------- ===================================== --------
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • BelBool4 Equal to True
                    • Then - Actions
                      • Unit - Create 1 Explosive Dummy for (Owner of BelCast) at BP2 facing Default building facing degrees
                      • Set BelDummy = (Last created unit)
                      • Unit - Add a 0.01 second Generic expiration timer to BelDummy
                      • Unit - Make BelDummy Explode on death
                      • Animation - Change BelDummy's size to (135.00%, 135.00%, 135.00%) of its original size
                    • Else - Actions
                • Else - Actions
              • Custom script: call RemoveLocation(udg_BP2)
          • Hashtable - Save (BelRealA + BelRealC) as 8 of Handle_Bel in BelHash
          • Hashtable - Save (BelRealB + BelRealD) as 9 of Handle_Bel in BelHash
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • BelRealA Less than or equal to BelConstant14
              • BelBool1 Equal to True
              • BelBool2 Equal to True
            • Then - Actions
              • Sound - Play ThunderClapCaster <gen> at 100.00% volume, attached to BelCast
              • Custom script: call GroupRemoveUnit(udg_BelGroup, udg_BelCast)
              • Hashtable - Clear all child hashtables of child Handle_Bel in BelHash
              • Unit - Add a 0.01 second Generic expiration timer to BelCast
              • Unit - Make BelCast Explode on death
              • Set BelTrigger = (BelTrigger - 1)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • BelTrigger Equal to 0
                • Then - Actions
                  • Trigger - Turn off (This trigger)
                • Else - Actions
            • Else - Actions
          • Custom script: call RemoveLocation(udg_BP)


Pictures
#1
[​IMG]
#2
[​IMG]
#3
[​IMG]


Keywords:
Spell,System,Contest,Wip,Bell,Bel,Hammer,Axe,Dragon,Fairy,Ball,Configurable,Gui,Mui,Herp,Derp,Angel,Arch,678,#,20,Blaaarg
Contents

Belhammer (Map)

Reviews
Moderator
12:43, 18th Jul 2011 Maker: Approved. Well triggered and the effects look nice. You could replace WEAPON_TYPE_WHOKNOWS with null and the sound plays for too long when the spell is over.
  1. 12:43, 18th Jul 2011
    Maker:
    Approved. Well triggered and the effects look nice.
    You could replace WEAPON_TYPE_WHOKNOWS with null and the sound plays for too long when the spell is over.
     
  2. Archangel678

    Archangel678

    Joined:
    Apr 25, 2009
    Messages:
    246
    Resources:
    4
    Spells:
    4
    Resources:
    4
    emjlr3 won the contest, I tied like ~5 other people for fourth,with a score of 28/30.
     
  3. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    7,759
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    Looks like you made some cool changes, too - the effects are really sweet!
     
  4. Magtheridon96

    Magtheridon96

    Joined:
    Dec 12, 2008
    Messages:
    6,007
    Resources:
    26
    Maps:
    1
    Spells:
    8
    Tutorials:
    7
    JASS:
    10
    Resources:
    26
    It looks awesome ^^
    5/5 (Just by looking at the picture, and scanning through the code :D)
     
  5. Black-kitty

    Black-kitty

    Joined:
    Jul 29, 2010
    Messages:
    263
    Resources:
    0
    Resources:
    0
    Cool Spell, effects looks great, the preformance is wonderful. Good job and keep working on it.
     
  6. Ketsuno Anson

    Ketsuno Anson

    Joined:
    May 14, 2011
    Messages:
    392
    Resources:
    0
    Resources:
    0
    Got a high rating in the contest,this spell is good
     
  7. Noobsmoke

    Noobsmoke

    Joined:
    Nov 20, 2007
    Messages:
    631
    Resources:
    1
    Spells:
    1
    Resources:
    1
    Fireworks, awsome. Tested and no bugs or leaks. Good Job 5/5