mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
Implement SET_GROUP:IsCompletelyInZone()
This commit is contained in:
parent
0b39e1a911
commit
56eaa16792
@ -961,10 +961,10 @@ function SET_GROUP:ForEachGroupNotInZone( ZoneObject, IteratorFunction, ... )
|
|||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Iterate the SET_GROUP and return false if at least one @{Wrapper.Group#GROUP} isn't in the @{Core.Zone#ZONE}
|
--- Iterate the SET_GROUP and return true if all the @{Wrapper.Group#GROUP} are completly in the @{Core.Zone#ZONE}
|
||||||
-- @param #SET_GROUP self
|
-- @param #SET_GROUP self
|
||||||
-- @param Core.Zone#ZONE ZoneObject The Zone to be tested for.
|
-- @param Core.Zone#ZONE ZoneObject The Zone to be tested for.
|
||||||
-- @return #boolean false if one of the @{Wrapper.Group#GROUP} is not in the @{Core.Zone#ZONE}, true otherwise.
|
-- @return #boolean true if all the @{Wrapper.Group#GROUP} are completly in the @{Core.Zone#ZONE}, false otherwise
|
||||||
-- @usage
|
-- @usage
|
||||||
-- local MyZone = ZONE:New("Zone1")
|
-- local MyZone = ZONE:New("Zone1")
|
||||||
-- local MySetGroup = SET_GROUP:New()
|
-- local MySetGroup = SET_GROUP:New()
|
||||||
@ -975,7 +975,7 @@ end
|
|||||||
-- else
|
-- else
|
||||||
-- MESSAGE:New("Some or all SET's GROUP are outside zone !", 10):ToAll()
|
-- MESSAGE:New("Some or all SET's GROUP are outside zone !", 10):ToAll()
|
||||||
-- end
|
-- end
|
||||||
function SET_GROUP:HasGroupCompletelyInZone(Zone)
|
function SET_GROUP:IsCompletelyInZone(Zone)
|
||||||
self:F2(Zone)
|
self:F2(Zone)
|
||||||
local Set = self:GetSet()
|
local Set = self:GetSet()
|
||||||
for GroupID, GroupData in pairs(Set) do -- For each GROUP in SET_GROUP
|
for GroupID, GroupData in pairs(Set) do -- For each GROUP in SET_GROUP
|
||||||
@ -986,6 +986,21 @@ function SET_GROUP:HasGroupCompletelyInZone(Zone)
|
|||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- Iterate the SET_GROUP and return true if at least one of the @{Wrapper.Group#GROUP} is completly inside the @{Core.Zone#ZONE}
|
||||||
|
-- @param #SET_GROUP self
|
||||||
|
-- @param Core.Zone#ZONE ZoneObject The Zone to be tested for.
|
||||||
|
-- @return #boolean true if at least one of the @{Wrapper.Group#GROUP} is completly inside the @{Core.Zone#ZONE}, false otherwise.
|
||||||
|
function SET_GROUP:HasGroupCompletelyInZone(Zone)
|
||||||
|
self:F2(Zone)
|
||||||
|
local Set = self:GetSet()
|
||||||
|
for GroupID, GroupData in pairs(Set) do -- For each GROUP in SET_GROUP
|
||||||
|
if GroupData:IsCompletlyInZone(Zone) then
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
|
||||||
----- Iterate the SET_GROUP and call an interator function for each **alive** player, providing the Group of the player and optional parameters.
|
----- Iterate the SET_GROUP and call an interator function for each **alive** player, providing the Group of the player and optional parameters.
|
||||||
---- @param #SET_GROUP self
|
---- @param #SET_GROUP self
|
||||||
---- @param #function IteratorFunction The function that will be called when there is an alive player in the SET_GROUP. The function needs to accept a GROUP parameter.
|
---- @param #function IteratorFunction The function that will be called when there is an alive player in the SET_GROUP. The function needs to accept a GROUP parameter.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user