• 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.

BotL Spells - Review

Status
Not open for further replies.
Level 22
Joined
Sep 24, 2005
Messages
4,821
Sorry dude!
122581-albums6867-picture76343.jpg
Okay dude, Sorry about that :D
 
Level 16
Joined
Jul 31, 2012
Messages
2,217
okay, wait notice me when you make a BotL Discussion ... : p

firstly, moderating BotL is mainly my thing... xD but if you want to discuss further more, no prob

secondly, lol my lips here are not Photoshopped xD

thirdly, lol again, i only kiss 2 people lol (i don't like to kiss people mainly)

and finally, STOP off topic
 
Level 22
Joined
Sep 24, 2005
Messages
4,821
I haven't finished it yet, I'll pm both of you when I'm done. Don't worry it will be simple, it's not a serious one, just a spell I made for fun haha.
 
Level 22
Joined
Sep 24, 2005
Messages
4,821
tooltip
Powerful spell capable of killing the caster.

JASS:
scope TrollYah initializer onInit

    globals
        
        private constant integer    ABILITY_ID      =   'AOwk'
        private constant string     EFFECT          =   "Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl"
        
    endglobals
    
    private function core takes nothing returns boolean
        local unit c=GetTriggerUnit()
        
        if (GetSpellAbilityId()==ABILITY_ID) then
        call AddSpecialEffect(EFFECT,GetUnitX(c),GetUnitY(c))
        call KillUnit(c)
        endif
        
        set c=null
        return false
    endfunction
    
    private function onInit takes nothing returns nothing
        local trigger t=CreateTrigger()
        call TriggerRegisterAnyUnitEventBJ(t,EVENT_PLAYER_UNIT_SPELL_EFFECT)
        call TriggerAddCondition(t,Filter(function core))
        // I will not set t to null, this ain't gonna be destroyed anyways.
    endfunction

endscope
 
Level 18
Joined
Sep 14, 2012
Messages
3,413
I would like it better like this :
JASS:
scope TrollYah initializer onInit

    globals
        
        private constant integer    ABILITY_ID      =   'AOwk'
        private constant string     EFFECT          =   "Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl"
        
    endglobals
    
    private function core takes nothing returns boolean
        local unit c
        
        if (GetSpellAbilityId()==ABILITY_ID) then
            set c = GetTriggerUnit()
            call AddSpecialEffect(EFFECT,GetUnitX(c),GetUnitY(c))
            //What about the effect ?
            //Why not :
            // call DestroyEffect(AddSpecialEffect(EFFECT,GetUnitX(c),GetUnitY(c)))
            call KillUnit(c)
            set c = null
        endif
        return false
    endfunction
    
    private function onInit takes nothing returns nothing
        local trigger t=CreateTrigger()
        call TriggerRegisterAnyUnitEventBJ(t,EVENT_PLAYER_UNIT_SPELL_EFFECT)
        call TriggerAddCondition(t,Filter(function core))
        // I will not set t to null, this ain't gonna be destroyed anyways.
    endfunction
endscope
 
Level 22
Joined
Sep 24, 2005
Messages
4,821
No, I intended not to remove the effect. Lag would make the user think "hell, a lot of things must be going on the background when I cast this spell..."
 
Level 22
Joined
Sep 24, 2005
Messages
4,821
Oh alright, going to fix that...

JASS:
scope TrollYah initializer onInit

    globals
        
        private constant integer    ABILITY_ID      =   'AOwk'
        private constant string     EFFECT          =   "Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl"
        
    endglobals
    
    private function core takes nothing returns boolean
        local unit c=GetTriggerUnit()
        
        if (GetSpellAbilityId()==ABILITY_ID) then
        // credits to Malhorne for making me remove the effect...
        call DestroyEffect(AddSpecialEffect(EFFECT,GetUnitX(c),GetUnitY(c)))
        call KillUnit(c)
        endif
        
        set c=null
        return false
    endfunction
    
    private function onInit takes nothing returns nothing
        local trigger t=CreateTrigger()
        call TriggerRegisterAnyUnitEventBJ(t,EVENT_PLAYER_UNIT_SPELL_EFFECT)
        call TriggerAddCondition(t,Filter(function core))
        // I will not set t to null, this ain't gonna be destroyed anyways.
    endfunction

endscope
 
Level 22
Joined
Sep 24, 2005
Messages
4,821
Okay will do!

JASS:
scope TrollYah initializer onInit

    globals
        
        private constant integer    ABILITY_ID      =   'AOwk'
        private constant string     EFFECT          =   "Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl"
        
    endglobals
    
    private function core takes nothing returns boolean
        local unit c
        
        // Credits to Malhorne, for overall optimization
        if (GetSpellAbilityId()==ABILITY_ID) then
            set c=GetTriggerUnit()
            call DestroyEffect(AddSpecialEffect(EFFECT,GetUnitX(c),GetUnitY(c)))
            call KillUnit(c)
            set c=null
        endif
        
        return false
    endfunction
    
    private function onInit takes nothing returns nothing
        local trigger t=CreateTrigger()
        call TriggerRegisterAnyUnitEventBJ(t,EVENT_PLAYER_UNIT_SPELL_EFFECT)
        call TriggerAddCondition(t,Filter(function core))
        // I will not set t to null, this ain't gonna be destroyed anyways.
    endfunction

endscope
 
Level 22
Joined
Sep 24, 2005
Messages
4,821
Mindless Slaughter™, a map where you don't get to buy items, you just kill swarms of enemy units, that spell over there is the suicide skill. It ends the game, coz you can't die normally, since your hero will have 'Avul'.
 
Level 18
Joined
Sep 14, 2012
Messages
3,413
Oh sorry to be a bit dephased xD
I forgot to told you this chobibo :
JASS:
scope TrollYah initializer onInit

    globals
        
        private constant integer    ABILITY_ID      =   'AOwk'
        private constant string     EFFECT          =   "Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl"
        
    endglobals
    
    private function core takes nothing returns boolean
        local unit c
        
        // Credits to Malhorne, for overall optimization
        if (GetSpellAbilityId()==ABILITY_ID) then
            set c=GetTriggerUnit()
            call DestroyEffect(AddSpecialEffect(EFFECT,GetUnitX(c),GetUnitY(c)))
            call KillUnit(c)
            set c=null
        endif
        
        return false
    endfunction
    
    private function onInit takes nothing returns nothing
        local trigger t=CreateTrigger()
        call TriggerRegisterAnyUnitEventBJ(t,EVENT_PLAYER_UNIT_SPELL_EFFECT)
        call TriggerAddCondition(t,Filter(function core))
        //Preloading effects to avoid lags :)
        call Preload(EFFECT)
        // I will not set t to null, this ain't gonna be destroyed anyways.
    endfunction

endscope
 
Status
Not open for further replies.
Top