1. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  2. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  3. The Lich King demands your service! We've reached the 19th edition of the Icon Contest. Come along and make some chilling servants for the one true king.
    Dismiss Notice
  4. The 4th SFX Contest has started. Be sure to participate and have a fun factor in it.
    Dismiss Notice
  5. The poll for the 21st Terraining Contest is LIVE. Be sure to check out the entries and vote for one.
    Dismiss Notice
  6. The results are out! Check them out.
    Dismiss Notice
  7. Don’t forget to sign up for the Hive Cup. There’s a 555 EUR prize pool. Sign up now!
    Dismiss Notice
  8. The Hive Workshop Cup contest results have been announced! See the maps that'll be featured in the Hive Workshop Cup tournament!
    Dismiss Notice
  9. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Zephyr Contest #11 - My aura, Your aura

Discussion in 'Contest Archive' started by Pharaoh_, Jul 1, 2014.

Thread Status:
Not open for further replies.
  1. Bannar

    Bannar

    Joined:
    Mar 19, 2008
    Messages:
    3,087
    Resources:
    20
    Spells:
    5
    Tutorials:
    1
    JASS:
    14
    Resources:
    20
    0.03125 doesn't really differ from 0.03. He should rather use 0.031250000 to achieve better accurancy.
     
  2. GywGod133

    GywGod133

    Joined:
    Jul 16, 2012
    Messages:
    646
    Resources:
    3
    Maps:
    1
    Spells:
    1
    Tutorials:
    1
    Resources:
    3
    :grin: maybe I can do that
     
  3. BlueSaint

    BlueSaint

    Joined:
    Jun 18, 2012
    Messages:
    2,733
    Resources:
    0
    Resources:
    0
    I found my spell finally! I left it onto my desktop when I was removing trash from my PC.

    It was called a.w3x :3
     
  4. Zeatherann

    Zeatherann

    Joined:
    Nov 25, 2008
    Messages:
    1,303
    Resources:
    6
    Skins:
    1
    Tools:
    1
    Maps:
    4
    Resources:
    6

    1/32 differs from 3/100. In the end it's only one or two more iterations per second than the other one. The real issue is that GUI (including object editor) floating point numbers only allows for two digits past the decimal point.

     
  5. Bannar

    Bannar

    Joined:
    Mar 19, 2008
    Messages:
    3,087
    Resources:
    20
    Spells:
    5
    Tutorials:
    1
    JASS:
    14
    Resources:
    20
    Thats why I had said what I said :) It's very important to keep additional zeros to improve accurancy. Note, that even with Jass usage it's more convenient to use 0.03125000 instead of 0.03125.
     
  6. Zeatherann

    Zeatherann

    Joined:
    Nov 25, 2008
    Messages:
    1,303
    Resources:
    6
    Skins:
    1
    Tools:
    1
    Maps:
    4
    Resources:
    6

    Why does the trailing (and one leading) zero matter? Aside from any changes to readability.

     
  7. edo494

    edo494

    Joined:
    Apr 16, 2012
    Messages:
    3,852
    Resources:
    5
    Spells:
    1
    JASS:
    4
    Resources:
    5
    its still roughly 0.000032 difference, so fully useless, because it would take 3,125,000 seconds to make 1 second difference
     
  8. BlueSaint

    BlueSaint

    Joined:
    Jun 18, 2012
    Messages:
    2,733
    Resources:
    0
    Resources:
    0
    If you want to keep things in sync you better use 0.03125000.
     
  9. edo494

    edo494

    Joined:
    Apr 16, 2012
    Messages:
    3,852
    Resources:
    5
    Spells:
    1
    JASS:
    4
    Resources:
    5
    that is misleading. Thigs are synchronized even when 0.03125 is used
     
  10. Zeatherann

    Zeatherann

    Joined:
    Nov 25, 2008
    Messages:
    1,303
    Resources:
    6
    Skins:
    1
    Tools:
    1
    Maps:
    4
    Resources:
    6
    Question

    Repeating my question; What is the difference (aside from readability) from

    0.03125000
    and
    .03125
    ?

     
  11. Quilnez

    Quilnez

    Joined:
    Oct 12, 2011
    Messages:
    3,251
    Resources:
    37
    Icons:
    2
    Tools:
    1
    Maps:
    7
    Spells:
    21
    Tutorials:
    2
    JASS:
    4
    Resources:
    37
    these fags are debating about "ultimate difference between 0.03, 0.03125, and 0.03125000" >.>

    Gee, can we start a better discussion? Seriously, I doubt any human will /visually/ notice the difference between them.
     
  12. BlueSaint

    BlueSaint

    Joined:
    Jun 18, 2012
    Messages:
    2,733
    Resources:
    0
    Resources:
    0
    Oh :O then I've been lied to! Nah I've always used 0.03125 :p I dunno how zeroes can help accuracy

    @Zeatherann Difference of whether you wanna go full nerd or just semi-nerd
     
  13. Mythic

    Mythic

    Joined:
    Apr 24, 2012
    Messages:
    7,725
    Resources:
    102
    Models:
    87
    Icons:
    4
    Maps:
    3
    Spells:
    6
    Tutorials:
    2
    Resources:
    102
    I'd rather not go nerd and use 0.03. :p

    But if it gets me less points...
     
  14. BlueSaint

    BlueSaint

    Joined:
    Jun 18, 2012
    Messages:
    2,733
    Resources:
    0
    Resources:
    0
    My GUI spell (uploaded -12, uses 0.03) did not get any feedback regarding whether I should use different loop, GUI doesn't support third decimal so I won't go alien and use custom script just to declare an interval lol xD I didn't know GUIers have to do that nowadays..
     
  15. Mythic

    Mythic

    Joined:
    Apr 24, 2012
    Messages:
    7,725
    Resources:
    102
    Models:
    87
    Icons:
    4
    Maps:
    3
    Spells:
    6
    Tutorials:
    2
    Resources:
    102
    No, my spell uses JASS. Only GUI for the config.

    E: Oh right I use 0.50 not 0.03 or something. >.<
     
  16. BlueSaint

    BlueSaint

    Joined:
    Jun 18, 2012
    Messages:
    2,733
    Resources:
    0
    Resources:
    0
    Is your aura some kind of stat boost in that case? 0.5 sounds like aura member checking loop :/
     
  17. Mythic

    Mythic

    Joined:
    Apr 24, 2012
    Messages:
    7,725
    Resources:
    102
    Models:
    87
    Icons:
    4
    Maps:
    3
    Spells:
    6
    Tutorials:
    2
    Resources:
    102
  18. Bannar

    Bannar

    Joined:
    Mar 19, 2008
    Messages:
    3,087
    Resources:
    20
    Spells:
    5
    Tutorials:
    1
    JASS:
    14
    Resources:
    20
    Let us stop bitching and concentrate on contest :)
     
  19. Mythic

    Mythic

    Joined:
    Apr 24, 2012
    Messages:
    7,725
    Resources:
    102
    Models:
    87
    Icons:
    4
    Maps:
    3
    Spells:
    6
    Tutorials:
    2
    Resources:
    102
    Final Entry - Holy Deliverance Aura

    Update: v 1.4

    Code
    Config
    • Configuration
      • Events
        • Map initialization
      • Conditions
      • Actions
        • -------- Note: There are some fields that do not increase on levelups by default but are configurable. --------
        • -------- Those fields not present here are within the Object Editor, such as; --------
        • -------- HDA Cast Range, Cast Time, Ability Cooldowns, Salvation Duration --------
        • -------- -------------------------------------------- --------
        • -------- Ability itself --------
        • Set Config_HD_Ability = Holy Deliverance Aura
        • -------- Spellbook for the Aura --------
        • Set Config_HD_SpellBook = Deliverance (Spellbook)
        • -------- Dummy Type --------
        • Set Config_HD_DummyID = Dummy
        • -------- Dummy Ability --------
        • Set Config_HD_SalvationDummy = Deliverance (Salvation)
        • -------- -------------------------------------------- --------
        • -------- -------------------------------------------- --------
        • -------- Aura Range --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_Range[1] = 750.00
        • Set Config_HD_Range[2] = 750.00
        • Set Config_HD_Range[3] = 750.00
        • -------- -------------------------------------------- --------
        • -------- Area for Heal Splash --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_HealArea[1] = 200.00
        • Set Config_HD_HealArea[2] = 250.00
        • Set Config_HD_HealArea[3] = 300.00
        • -------- -------------------------------------------- --------
        • -------- Heal base amount --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_HealBase[1] = 75.00
        • Set Config_HD_HealBase[2] = 100.00
        • Set Config_HD_HealBase[1] = 125.00
        • -------- -------------------------------------------- --------
        • -------- Cooldown of the heal --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_HealCD[1] = 7.00
        • Set Config_HD_HealCD[2] = 6.00
        • Set Config_HD_HealCD[3] = 5.00
        • -------- -------------------------------------------- --------
        • -------- Cooldown reduction of the passive heal per damage instance --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_HealCDRed[1] = 0.25
        • Set Config_HD_HealCDRed[2] = 0.25
        • Set Config_HD_HealCDRed[3] = 0.25
        • -------- -------------------------------------------- --------
        • -------- Special Effect for Heal --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_HealFx = Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl
        • -------- -------------------------------------------- --------
        • -------- Heal Int Scale Percent, in decimal --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_HealScale[1] = 2.00
        • Set Config_HD_HealScale[2] = 2.00
        • Set Config_HD_HealScale[3] = 2.00
        • -------- -------------------------------------------- --------
        • -------- Percentage Healing received by splashed units, in decimal --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_HealSplash[1] = 0.25
        • Set Config_HD_HealSplash[2] = 0.25
        • Set Config_HD_HealSplash[3] = 0.25
        • -------- -------------------------------------------- --------
        • -------- Trigger Fire Rate in seconds --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_Rate = 0.50
        • -------- -------------------------------------------- --------
        • -------- Regeneration Base --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_RegenBase[1] = 1.25
        • Set Config_HD_RegenBase[2] = 1.50
        • Set Config_HD_RegenBase[3] = 1.75
        • -------- -------------------------------------------- --------
        • -------- Regeneration for every 10% missing health --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_Regeneration[1] = 0.50
        • Set Config_HD_Regeneration[2] = 0.50
        • Set Config_HD_Regeneration[3] = 0.50
        • -------- -------------------------------------------- --------
        • -------- Salvation Healing Bonus Percentage, in Decimal --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_SalvationBonus[1] = 0.50
        • Set Config_HD_SalvationBonus[2] = 0.50
        • Set Config_HD_SalvationBonus[3] = 0.50
        • -------- -------------------------------------------- --------
        • -------- How many heals to trigger salvation --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_SalvationCounter[1] = 4
        • Set Config_HD_SalvationCounter[2] = 4
        • Set Config_HD_SalvationCounter[3] = 4
        • -------- -------------------------------------------- --------
        • -------- Salvation Fx --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_SalvationFx = Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl
        • -------- -------------------------------------------- --------
        • -------- Salvation Heal Fx --------
        • -------- -------------------------------------------- --------
        • Set Config_HD_SalvationReverseFx = HolyRestoration.mdx
        • -------- -------------------------------------------- --------
        • -------- End of configurables --------
        • -------- -------------------------------------------- --------
        • Custom script: call TriggerRegisterTimerEvent(gg_trg_Deliverance_Aura, udg_Config_HD_Rate, true)
        • Custom script: set udg_Config_HD_RegenBase[1] = udg_Config_HD_RegenBase[1] * udg_Config_HD_Rate
        • Custom script: set udg_Config_HD_RegenBase[2] = udg_Config_HD_RegenBase[2] * udg_Config_HD_Rate
        • Custom script: set udg_Config_HD_RegenBase[3] = udg_Config_HD_RegenBase[3] * udg_Config_HD_Rate
        • -------- ----------------------- --------
        • -------- Variable Creator --------
        • -------- !Delete actions below after copying! --------
        • -------- ----------------------- --------
        • Set HD_Caster[HD_Index] = (Triggering unit)
        • Set HD_Dummy = (Triggering unit)
        • Set HD_Group[A] = (Last created unit group)
        • Set HD_Player[A] = (Picked player)
        • Set HD_HealCD[A] = 0.00
        • Set HD_HealCounter[A] = 0
        • Set HD_Level[A] = 0

    Holy Deliverance
    Code (vJASS):
    //////////////////////////////////////////////////////////////////////////////
    //    _   _  __    _                                                        //
    //   | |_| || _\  /_\                                                       //
    //   |  _  |||_))/ _ \                                                      //
    //   |_| |_||__//_/ \_\                                                     //
    //                                                                          //
    //    Holy Deliverance Aura v 1.4                                           //
    //               by CakeMaster                                              //
    //                                                                          //
    //////////////////////////////////////////////////////////////////////////////

    function HD_RadarCondition takes nothing returns boolean
        return GetUnitState(GetFilterUnit(), UNIT_STATE_LIFE) > 0.405 and GetUnitState(GetFilterUnit(), UNIT_STATE_LIFE) != GetUnitState(GetFilterUnit(), UNIT_STATE_MAX_LIFE) and IsUnitAlly(GetFilterUnit(), udg_HD_Player[udg_A]) == true
    endfunction

    function HD_Setup takes nothing returns boolean
        //On init
        local integer i = -1
        loop
            set i = i + 1
            exitwhen i == 15
            call SetPlayerAbilityAvailable(Player(i), 'A002', false)
        endloop
        set udg_HD_Dummy = CreateUnit(Player(0), udg_Config_HD_DummyID, 0., 0., 0.)
        call UnitAddAbility(udg_HD_Dummy, udg_Config_HD_SalvationDummy)
        return false
    endfunction

    function HD_LearnedCache takes nothing returns boolean
        local integer i = 0
        local integer c = 0
        local unit u = GetTriggerUnit()
        //After a hero learns, cache his data
        if GetLearnedSkill() == udg_Config_HD_Ability then
            loop
                set i = i + 1
                exitwhen i > udg_HD_Index
                if udg_HD_Caster[udg_A] == u then
                    set udg_HD_Level[udg_A] = udg_HD_Level[udg_A] + 1
                else
                    set c = c + 1
                endif
            endloop
            if c == udg_HD_Index then
                set udg_HD_Index = (udg_HD_Index + 1)
                set udg_HD_Caster[udg_HD_Index] = u
                set udg_HD_Group[udg_HD_Index] = CreateGroup()
                set udg_HD_HealCD[udg_HD_Index] = 0.
                set udg_HD_HealCounter[udg_HD_Index] = 0
                set udg_HD_Player[udg_HD_Index] = GetOwningPlayer(udg_HD_Caster[udg_HD_Index])
                set udg_HD_Level[udg_HD_Index] = 1
                //Adds the buffer aura
                call UnitAddAbility(udg_HD_Caster[udg_HD_Index], udg_Config_HD_SpellBook)
                if udg_HD_Index == 1 then
                    call EnableTrigger(gg_trg_Deliverance_Aura)
                endif
            endif
        endif
        set u = null
        return false
    endfunction

    function HD_Detect takes nothing returns boolean
        local integer a = 0
        //Buff check for Salvation (invul + deflect)
        //If a unit already has the buff, it does not prevent from further dummy casts
        if GetUnitAbilityLevel(udg_target, 'B001') > 0 then
            call DestroyEffect(AddSpecialEffect(udg_Config_HD_SalvationReverseFx, GetUnitX(udg_target), GetUnitY(udg_target)))
            call SetUnitState(udg_target, UNIT_STATE_LIFE, (GetUnitState(udg_target, UNIT_STATE_LIFE) + udg_amount))
            set udg_amount = 0.
        endif
        //Buff Application
        loop
            set a = a + 1
            exitwhen a > udg_HD_Index
            //Heal CD Reduction
            if IsUnitInGroup(udg_target, udg_HD_Group[a]) == true then
                set udg_HD_HealCD[a] = udg_HD_HealCD[a] - udg_Config_HD_HealCDRed[udg_HD_Level[udg_A]]
            endif
            if IsUnitInGroup(udg_source, udg_HD_Group[a]) == true then
                set udg_HD_HealCD[a] = udg_HD_HealCD[a] - udg_Config_HD_HealCDRed[udg_HD_Level[udg_A]]
            endif
        endloop
        return false
    endfunction

    function HD_OnCast takes nothing returns boolean
        local group g
        local real real1 = 0
        local real x
        local real y
        local unit u = GetTriggerUnit()
        local unit u2
        if GetSpellAbilityId() == udg_Config_HD_Ability then
            set udg_A = 0
            loop
                set udg_A = udg_A + 1
                exitwhen udg_A > udg_HD_Index
                if udg_HD_Caster[udg_A] == u then
                    set u2 = GetSpellTargetUnit()
                    set x = GetUnitX(u2)
                    set y = GetUnitY(u2)
                    set real1 = udg_Config_HD_HealBase[udg_HD_Level[udg_A]] + (I2R(GetHeroInt(u, true)) * udg_Config_HD_HealScale[udg_HD_Level[udg_A]])
                    //Salvation
                    if udg_HD_HealCounter[udg_A] < udg_Config_HD_SalvationCounter[udg_HD_Level[udg_A]] then
                        set udg_HD_HealCounter[udg_A] = udg_HD_HealCounter[udg_A] + 1
                        call DestroyEffect(AddSpecialEffect(udg_Config_HD_HealFx, x, y))
                    else
                        set udg_HD_HealCounter[udg_A] = 0
                        set real1 = real1 * (1. + udg_Config_HD_SalvationBonus[udg_HD_Level[udg_A]])
                        call SetUnitOwner(udg_HD_Dummy, GetOwningPlayer(udg_HD_Caster[udg_A]), false)
                        call IssueTargetOrder(udg_HD_Dummy, "bloodlust", u2)
                    endif
                    //Heal
                    call SetUnitState(u2, UNIT_STATE_LIFE, (GetUnitState(u2, UNIT_STATE_LIFE) + real1))
                    set real1 = real1 * udg_Config_HD_HealSplash[udg_HD_Level[udg_A]]
                    set g = CreateGroup()
                    call GroupEnumUnitsInRange(g, x, y, udg_Config_HD_HealArea[udg_HD_Level[udg_A]], Condition(function HD_RadarCondition))
                    //Area Heal
                    loop
                        set u2 = FirstOfGroup(g)
                        exitwhen u2 == null
                        call SetUnitState(u2, UNIT_STATE_LIFE, (GetUnitState(u2, UNIT_STATE_LIFE) + real1))
                        call GroupRemoveUnit(g, u2)
                    endloop
                    call DestroyGroup(g)
                endif
            endloop
        endif
        set g = null
        set u = null
        return false
    endfunction

    function Holy_Deliverance takes nothing returns boolean
        local real x
        local real y
        local group g
        local group g2
        local unit u
        local real tx
        local real ty
        local real real1
        local real real2
        local real real3 = 0.
        local real real4 = 0.
        local real real5 = 0.
        local unit u2
        set udg_A = 0
        loop
            set udg_A = udg_A + 1
            exitwhen udg_A > udg_HD_Index
            if GetUnitState(udg_HD_Caster[udg_A], UNIT_STATE_LIFE) > 0.405 then
                set x = GetUnitX(udg_HD_Caster[udg_A])
                set y = GetUnitY(udg_HD_Caster[udg_A])
                //Reduce Cooldown
                if udg_HD_HealCD[udg_A] > 0. then
                    set udg_HD_HealCD[udg_A] = udg_HD_HealCD[udg_A] - udg_Config_HD_Rate
                else
                    set udg_HD_HealCD[udg_A] = 0.
                endif
                //Group Enumeration
                call GroupClear(udg_HD_Group[udg_A])
                call GroupEnumUnitsInRange(udg_HD_Group[udg_A], x, y, udg_Config_HD_Range[udg_HD_Level[udg_A]], Condition(function HD_RadarCondition))
                set g = CreateGroup()
                call GroupEnumUnitsInRange(g, x, y, udg_Config_HD_Range[udg_HD_Level[udg_A]], Condition(function HD_RadarCondition))
                set u2 = null
                set real1 = 0. //Lowest Percentage Checker
                set real2 = 100. //Record Tracker
                //Check for units to heal
                loop
                    set u = FirstOfGroup(g)
                    exitwhen u == null
                    //====================
                    //Regen
                    set real3 = GetUnitState(u, UNIT_STATE_LIFE)
                    set real4 = GetUnitState(u, UNIT_STATE_MAX_LIFE)
                    set real5 = ((((real4 - real3) / real4) * 100.) * udg_Config_HD_Regeneration[udg_HD_Level[udg_A]]) + udg_Config_HD_RegenBase[udg_HD_Level[udg_A]]
                    call SetUnitState(u, UNIT_STATE_LIFE, (GetUnitState(u, UNIT_STATE_LIFE) + real5))
                    //====================
                    //Lowest health% unit
                    set real1 = (real3 / real4) * 100.0
                    //Hero priority
                    if IsUnitType(u, UNIT_TYPE_HERO) == true then
                        set real1 = real1 - 5.
                    endif
                    if real1 < real2 then
                        set real2 = real1
                        set real1 = real2
                        set u2 = u
                    endif
                    call GroupRemoveUnit(g, u)
                endloop
                //Radar Checks
                if u2 == null then
                    call GroupClear(udg_HD_Group[udg_A])
                    //Group is only used for CD Reduction
                else
                    if udg_HD_HealCD[udg_A] == 0. then
                        set udg_HD_HealCD[udg_A] = udg_Config_HD_HealCD[udg_HD_Level[udg_A]]
                        set tx = GetUnitX(u2)
                        set ty = GetUnitY(u2)
                        set real1 = udg_Config_HD_HealBase[udg_HD_Level[udg_A]] + (I2R(GetHeroInt(udg_HD_Caster[udg_A], true)) * udg_Config_HD_HealScale[udg_HD_Level[udg_A]])
                        //Salvation
                        if udg_HD_HealCounter[udg_A] < udg_Config_HD_SalvationCounter[udg_HD_Level[udg_A]] then
                            set udg_HD_HealCounter[udg_A] = udg_HD_HealCounter[udg_A] + 1
                            call DestroyEffect(AddSpecialEffect(udg_Config_HD_HealFx, tx,ty))
                         else
                            set udg_HD_HealCounter[udg_A] = 0
                            set real1 = real1 * (1. + udg_Config_HD_SalvationBonus[udg_HD_Level[udg_A]])
                            call SetUnitOwner(udg_HD_Dummy, GetOwningPlayer(udg_HD_Caster[udg_A]), false)
                            call IssueTargetOrder(udg_HD_Dummy, "bloodlust", u2)
                         endif
                        //Heal
                        call SetUnitState(u2, UNIT_STATE_LIFE, (GetUnitState(u2, UNIT_STATE_LIFE) + real1))
                        set real1 = real1 * udg_Config_HD_HealSplash[udg_HD_Level[udg_A]]
                        set g2 = CreateGroup()
                        call GroupEnumUnitsInRange(g2, tx, ty, udg_Config_HD_HealArea[udg_HD_Level[udg_A]], Condition(function HD_RadarCondition))
                        //Area Heal
                        loop
                            set u = FirstOfGroup(g2)
                            exitwhen u == null
                            call SetUnitState(u, UNIT_STATE_LIFE, (GetUnitState(u, UNIT_STATE_LIFE) + real1))
                            call GroupRemoveUnit(g2, u)
                        endloop
                    endif
                endif
                call DestroyGroup(g)
                call DestroyGroup(g2)
            else
                call GroupClear(udg_HD_Group[udg_A])
            endif
        endloop
        set g = null
        set g2 = null
        set u = null
        return false
    endfunction

    //===========================================================================
    function InitTrig_Deliverance_Aura takes nothing returns nothing
        local trigger t = CreateTrigger()
        call TriggerRegisterAnyUnitEventBJ(t, EVENT_PLAYER_HERO_SKILL)
        call TriggerAddCondition(t, Condition(function HD_LearnedCache))
        set t = CreateTrigger()
        call TriggerRegisterAnyUnitEventBJ(t, EVENT_PLAYER_UNIT_SPELL_EFFECT)
        call TriggerAddCondition(t, Condition(function HD_OnCast))
        set t = CreateTrigger()
        call TriggerRegisterTimerEvent(t, 0., false)
        call TriggerAddCondition(t, Condition(function HD_Setup))
        set t = CreateTrigger()
        call TriggerRegisterVariableEvent(t, "udg_damageEventTrigger", EQUAL, 1.)
        call TriggerAddCondition(t, Condition(function HD_Detect))
        set t = null
        set gg_trg_Deliverance_Aura = CreateTrigger()
        call DisableTrigger(gg_trg_Deliverance_Aura)
        call TriggerAddCondition(gg_trg_Deliverance_Aura, Condition(function Holy_Deliverance))
    endfunction

    Preview
    [​IMG]
     

    Attached Files:

  20. BlueSaint

    BlueSaint

    Joined:
    Jun 18, 2012
    Messages:
    2,733
    Resources:
    0
    Resources:
    0
    Lol I'd want to give feedback but it's forbidden :D

    All I can say good job!
     
Thread Status:
Not open for further replies.