• Check out the results of the Techtree Contest #19!
  • 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.
  • Create a void inspired texture for Warcraft 3 and enter Hive's 34th Texturing Contest: Void! Click here to enter!
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!

[vJASS] Regions and Rects :/

Status
Not open for further replies.
It's quite simple, really.. Here:
JASS:
function Trig_Untitled_Trigger_001_Actions takes nothing returns nothing
    local unit u
    local location l

    set u = GetEnteringUnit()
    set l = GetRectCenter(gg_rct_Region_001)
    call IssuePointOrderLoc(u, "Move", l)
    call RemoveLocation(l)
endfunction

//===========================================================================
function InitTrig_Untitled_Trigger_001 takes nothing returns nothing
    set gg_trg_Untitled_Trigger_001 = CreateTrigger(  )
    call TriggerRegisterEnterRectSimple( gg_trg_Untitled_Trigger_001, gg_rct_Region_000 )
    call TriggerAddAction( gg_trg_Untitled_Trigger_001, function Trig_Untitled_Trigger_001_Actions )
endfunction
There may be better ways, though.
 
You could use it's native counterpart.
Just hold Ctrl and click the function in the code.
A window will pop-up containing what the BJ function actually is.

edit
JASS:
local region rectRegion = CreateRegion()
call RegionAddRect(rectRegion, r)
return TriggerRegisterEnterRegion(trig, rectRegion, null)

That's what TriggerRegisterEnterRectSimple does.
What you could do is declare 1 local region, set it to CreateRegion(), and add your rect to it using RegionAddRect, register the enter region event, then set the local region to CreateRegion(), add your other rect, and register another event, etc...
You would keep repeating this for as many rect-region enter events as you need.

JASS:
local region r = CreateRegion()
local trigger t = CreateTrigger()

call RegionAddRect(r, gg_rct_myRect1)
call TriggerRegisterEnterRegion(t, r, null)
call TriggerAddCondition(t, Condition(function myCondition))
call TriggerAddAction(t, function myAction)

set r = CreateRegion()
set t = CreateTrigger()

call RegionAddRect(r, gg_rct_myRect2)
call TriggerRegisterEnterRegion(t, r, null)
call TriggerAddCondition(t, Condition(function myCondition2))
call TriggerAddAction(t, function myAction2)

// etc...

set t = null
set r = null
 
Do this:
1.Open trigger editor
2.Make a new list
3.Make an event and do this:
Press unit then if unit enters region select your region and press ok
4.create a new condition and do this:Unit equal to player and select your creep player and press ok.
5.New trigger and do this:
press unit then issue order targeting a poin then on the first thing press it and press entering unit the press ok on that and on the second one make it where you want the unit to go!
 
Status
Not open for further replies.
Back
Top