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

Cracked Earth

Status
Not open for further replies.
Level 12
Joined
Mar 23, 2008
Messages
942
I want to create a spell that cracks the earth and creates a crater stunning and damaging all enemy, The stun and damage is provided by the base War Stomp, but I can't get a nice effect of crater + cracked earth.

Someone can help? Thanks
 
Level 5
Joined
Jul 4, 2007
Messages
166
I want to create a spell that cracks the earth and creates a crater stunning and damaging all enemy, The stun and damage is provided by the base War Stomp, but I can't get a nice effect of crater + cracked earth.

Someone can help? Thanks

Earthquake and Warstomp both provide cracked earth effects (The Earthquake one is probably the best). If you want an actual depression, consider triggering a terrain depression.
 
Level 12
Joined
Mar 23, 2008
Messages
942
Earthquake and Warstomp both provide cracked earth effects (The Earthquake one is probably the best). If you want an actual depression, consider triggering a terrain depression.

Yeah but the crack is lame, and cannot be resized :(
I want to use a dummy unit as a crack, so I can have more freedom!

I'm trying that trigger, but the terrain deformation never go away! If I use a number lower than the terrain formation time I can make it disappear. I think once the terrain deformation become permanent its impossible to remove it, and setting the duration to 3s make it slowing going down, not very good :(

(Maybe use a negative deformation with 3s?)

JASS:
function Trig_Tsuuten_Kyaku_Conditions takes nothing returns boolean
    return ( GetSpellAbilityId() == 'A00M' )
endfunction

function Trig_Tsuuten_Kyaku_Actions takes nothing returns nothing
    local real x = GetUnitX(GetTriggerUnit())
    local real y = GetUnitY(GetTriggerUnit())
    local terraindeformation td
    local unit te
    set td = TerrainDeformCrater( x, y, 600, 150, 300, true )
    set te = CreateUnit(GetOwningPlayer(GetTriggerUnit()), 'h013', x, y, 0 )
    call UnitApplyTimedLife(te, 'BTLF', 3)
    call TerrainDeformStop(td, 3000)
endfunction

//===========================================================================
function InitTrig_Tsuuten_Kyaku takes nothing returns nothing
    set gg_trg_Tsuuten_Kyaku = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_Tsuuten_Kyaku, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( gg_trg_Tsuuten_Kyaku, Condition( function Trig_Tsuuten_Kyaku_Conditions ) )
    call TriggerAddAction( gg_trg_Tsuuten_Kyaku, function Trig_Tsuuten_Kyaku_Actions )
endfunction
 
Level 7
Joined
Jul 20, 2008
Messages
377
Just perform the same deform action in the same location in the opposite direction (up!) after 3s.
 
Level 7
Joined
Jul 20, 2008
Messages
377
You only null local variables when you're -done- using them. Mostly, at the end of the function.
 
Status
Not open for further replies.
Top