Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Need help with rects/regions with jass

Discussion in 'Triggers & Scripts' started by enyeas, Feb 12, 2010.

  1. enyeas

    enyeas

    Joined:
    Jan 15, 2010
    Messages:
    47
    Resources:
    0
    Resources:
    0
    Hey all :)

    Does there happen to be a good tutorial on rects or regions with jass? I have been looking at all the main sites and can't find any :/

    Or perhaps someone could help me figure out what it is i need to be doing with my code. I don't exactly know how to use rects/regions with Jass. I am trying to add all the units with certain raw codes into a group but i'm not sure how to do this :/

    Any tips/advice would be greatly appreciated :)

    Thanks!
    -saeyne
     
  2. Maximilianx

    Maximilianx

    Joined:
    Oct 14, 2008
    Messages:
    334
    Resources:
    0
    Resources:
    0
    Does this help?
    Code (vJASS):

    globals
        region reg
    endglobals

    function filter takes nohthing returns boolean
        local real x = GetUnitX(GetFilterUnit())
        local real y = GetUnitY(GetFilterUnit())
        return IsPointInRect(reg, x, y) and GetUnitTypeId(GetFilterUnit()) == 'h000'
    endfunction

    function SomeFunction takes this returns that
        local rect array rct
        local group g = CreateGroup()
        set reg = CreateRegion()
        set rct[0] = YourRect
        call RegionAddRect(reg, rct[0])
        set rct[1] = YourOtherRect
        call RegionAddRect(reg, rct[1])
        call GroupEnumUnitsInRect(g, GetPlayableMapRect(), Condition(function filter))
        //insert group actions here
    endfunction
     
     
  3. enyeas

    enyeas

    Joined:
    Jan 15, 2010
    Messages:
    47
    Resources:
    0
    Resources:
    0
    this is very easy to read and understand :D ill toy with it tonight, thanks!