Greater Bash?

XeNiM666

I lurk for pizza
Reaction score
138
How can i make a simple knockback spell just like in DotA's Barathrum's Greater Bash??
I want it to be in GUI and in MUI or MPI.
 
Reaction score
333
Nope, but is always better in every single way.

You can't just expect everything you want to materialize out of the air; if you really need an MPI greater bash, you should learn how to make it yourself.
 

XeNiM666

I lurk for pizza
Reaction score
138
Another Question:

In JASS, if there's a wait situation or another trigger is supposed to run, will it use the same variables and cannot be changed whatsoever unit i change it??
 
Reaction score
333
In Jass, you can use global variables or local variables.

Globals are the variables you use in GUI that can be changed and access by anything. Locals are specific to a function.

JASS:
function foo takes nothing returns nothing
    local unit u = GetTriggerUnit() // declare a local variable "u" and initialize it to the triggering unit.
    call TriggerSleepAction(10.) // wait for 10 seconds.
    call KillUnit(u) // kill the unit that "u" points to (the triggering unit)
endfunction


This function is perfectly MUI, even with the wait.
 
Reaction score
333
Ohhh....

So if Global Variables are used, it won't be MUI, but if Local Variables are used, it will be MUI, Right???

When you're using waits, usually.

Often waits are not used at all in Jass due to their low accuracy and unreliability.
 
Reaction score
333
No one understands for the first few days, but you'll end up saving a lot of time and getting much better results if you put effort into learning Jass, rather than trying to persist with GUI.
 

XeNiM666

I lurk for pizza
Reaction score
138
I'm just making a trigger with my wanted function, change to custom text, and change the values a little.
 

Flare

Stops copies me!
Reaction score
662
You could check out emjlr3's DotA Heroes map (it's in Member's Projects). I think that has Barathrum in it (not fully sure though)

There's also the OpenDotA project (not sure whether this is supported or not) which has most heroes as far as I know.

Both of the above will have the spell coded in JASS (unless Greater Bash was an exception :p) I think
 

XeNiM666

I lurk for pizza
Reaction score
138
Ive copied something thats just like Greater Bash, but without the "damage as they skid".
I changed it i think it works now.

Any way. Thanks for the help!!!
Appreciated it :)

If you have some more ideas, ill see it!!
 

XeNiM666

I lurk for pizza
Reaction score
138
OFF-topic

Is this MUI / MPI??:

Code:
function Trig_Cleanse_Jass_Conditions takes nothing returns boolean
    if ( not ( GetSpellAbilityId() == 'A00T' ) ) then
        return false
    endif
    if ( not ( GetUnitTypeId(GetSpellAbilityUnit()) == 'Hpal' ) ) then
        return false
    endif
    return true
endfunction

function Trig_Cleanse_Jass_Actions takes nothing returns nothing
    call PauseUnitBJ( true, GetSpellTargetUnit() )
    call TriggerSleepAction( ( 7.00 - ( 0.50 * I2R(GetUnitAbilityLevelSwapped('A00T', GetSpellAbilityUnit())) ) ) )
    call AddSpecialEffectLocBJ( GetUnitLoc(GetSpellTargetUnit()), "Abilities\\Spells\\Human\\DivineShield\\DivineShieldTarget.mdl" )
    call TriggerSleepAction( 1.00 )
    call RemoveUnit( GetSpellTargetUnit() )
    call CreateNUnitsAtLoc( 1, 'o000', GetOwningPlayer(GetSpellAbilityUnit()), GetUnitLoc(GetSpellTargetUnit()), bj_UNIT_FACING )
    call UnitApplyTimedLifeBJ( 40.00, 'BTLF', GetLastCreatedUnit() )
    call DestroyEffectBJ( GetLastCreatedEffectBJ() )
endfunction

//===========================================================================
function InitTrig_Cleanse_Jass takes nothing returns nothing
    set gg_trg_Cleanse_Jass = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_Cleanse_Jass, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( gg_trg_Cleanse_Jass, Condition( function Trig_Cleanse_Jass_Conditions ) )
    call TriggerAddAction( gg_trg_Cleanse_Jass, function Trig_Cleanse_Jass_Actions )
endfunction
 

XeNiM666

I lurk for pizza
Reaction score
138
Question:

what part of this trigger is wrong?:

Code:
    local unit cleansed = GetSpellTargetUnit()
    call PauseUnitBJ( true, udg_cleansed )
 

Flare

Stops copies me!
Reaction score
662
udg = user defined global
udg's are created in the variable editor

locals do not have any prefix
JASS:
local unit u = GetSpellTargetUnit ()
call KillUnit (u)


Also, if you are using locals, you should use
JASS:
call KillUnit (whichUnit)
call ShowUnit (whichUnit, false)

instead of call RemoveUnit (whichUnit). similar overall effect, but removing units can be bad, especially if they are still needed for some reason (if they have data attached to them)
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top