GetRandomSubGroup

Parameters
count integer
sourceGroup group
comment
bug

Not an even distribution. See http://www.hiveworkshop.com/forums/l-715/g-275344/.

bug

Leaks handle g: In Jass you must set local variables that hold agents (or any child type) to null at the end of functions to avoid reference counter leaks.

note

Creates a new group object and returns it. The caller must remove it on its own after use.

patch

1.07

Source
Blizzard.j
return type
group
Source code
function GetRandomSubGroup takes integer count, group sourceGroup returns group
local group g = CreateGroup()

set bj_randomSubGroupGroup = g
set bj_randomSubGroupWant = count
set bj_randomSubGroupTotal = CountUnitsInGroup(sourceGroup)

if (bj_randomSubGroupWant <= 0 or bj_randomSubGroupTotal <= 0) then
return g
endif

set bj_randomSubGroupChance = I2R(bj_randomSubGroupWant) / I2R(bj_randomSubGroupTotal)
call ForGroup(sourceGroup, function GetRandomSubGroupEnum)
return g
endfunction