targetsAggregate: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - " \| ?\[\[([a-zA-Z0-9]+)\]\] *\|x1=" to " |r1= $1 |x1=") |
(Updated SEE ALSO) |
||
(7 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{RV|type=command | {{RV|type=command | ||
| arma2 | |game1= arma2 | ||
|1.00 | |version1= 1.00 | ||
|game2= arma2oa | |game2= arma2oa | ||
Line 13: | Line 13: | ||
|version4= 0.50 | |version4= 0.50 | ||
| Aggregate candidates. | |descr= Aggregate candidates. | ||
|gr1= Object Manipulation | |gr1= Object Manipulation | ||
| [speaker, side, | |s1= [speaker, side, classname, position, timeMax] [[targetsAggregate]] candidates | ||
|p1= | |p1= speaker: [[Object]] | ||
|p2= candidates: [[Array]] - array of targets in | |p2= side: [[Side]] - if provided, a target with a side matching ''side'' will see it replaced by {{hl|"$"}} | ||
<nowiki | |||
* accuracy: [[Number]] - a coefficient, which reflects how close the returned result to the query filter. Range: 0 | |p3= classname: [[String]] - {{hl|CfgVehicles}} classname - if provided, a target with a type matching ''classname'' will see it replaced by {{hl|"$"}} | ||
|p4= position: [[Array]] format [[Position]] (Z-value is ignored) - centre of a hardcoded 200m radius | |||
|p5= timeMax: [[Number]] - max age of the target | |||
|p6= candidates: [[Array]] - array of targets in format [<nowiki/>[accuracy, target, targetSide, targetType, targetPosition, targetAge], ...] where: | |||
* accuracy: [[Number]] - a coefficient, which reflects how close the returned result to the query filter. Range: 0..1, 1 being the best match | |||
* target: [[Object]] - the actual target object | * target: [[Object]] - the actual target object | ||
* targetSide: [[Side]] - side of the target | * targetSide: [[Side]] - side of the target | ||
* targetType: [[String]] - target [[typeOf]] | * targetType: [[String]] - target [[typeOf]] | ||
* targetPosition: [[Array]] - [x,y] of the target | * targetPosition: [[Array]] format [[Position#Introduction|Position2D]] - [x,y] of the target | ||
* targetAge: [[Number]] - the actual target age in seconds (can be negative) | * targetAge: [[Number]] - the actual target age in seconds (can be negative) | ||
{{Feature|informative|See [[targetsQuery]] format.}} | |||
|r1= [[Array]] | |r1= [[Array]] format [countInfo, sideInfo, unitInfo, placeInfo, timeInfo, uCountInfo, uTypeInfo]: | ||
* countInfo: [[Array]] - [<nowiki/>[[format]] ["COUNT%1", index], count on index] | |||
* sideInfo: [[Array]] - [<nowiki/>[[format]] ["SIDE%1", index], side or string] if string then $ == "equal to queried" | |||
* unitInfo: [[Array]] - [<nowiki/>[[format]] ["UNIT%1", index], string] $ == "equal to queried", otherwise the "type" of the unit? Should be CfgVehicles config type I think | |||
* placeInfo: [[Array]] - [<nowiki/>[[format]] ["PLACE%1", index], [[centerX, centerY], radius]] | |||
* timeInfo: [[Array]] - [<nowiki/>[[format]] ["TIME%1", index], string or array] if string then $ == "equal to queried", otherwise [timeMin, timeMax] | |||
* uCountInfo: [[Array]] - [<nowiki/>[[format]] ["UCOUNT%1", index], scalar count] | |||
* uTypeInfo: [[Array]] - [<nowiki/>[[format]] ["UTYPE%1", index], string name] a classname? Will be format ["*%1", classname] if count > 1 | |||
|x1= < | |x1= <sqf>_aggregation = [player, sideEnemy, "", [], 0] targetsAggregate (player targetsQuery [objNull, sideUnknown, "", [], 0]); | ||
< | /* | ||
returns e.g | |||
[ | |||
[ | |||
["COUNT0", 1], | |||
["SIDE0", WEST], | |||
["UNIT0", "B_Soldier_F"], | |||
["PLACE0", [[<null>,<null>], 0, <null>]], | |||
["TIME0", [-0.9, -0.9]], | |||
["UCOUNT0", 1], | |||
["UTYPE0", ... | |||
] | |||
] | |||
*/ | |||
</sqf> | |||
with e.g | |||
* one Orca Helicopter | |||
* one T-100 Varsuk tank | |||
* one T-140K Angara tank | |||
* one MBT-52 Kuma tank (independent, set as enemy to blufor) | |||
<sqf> | |||
/* | |||
[ | |||
[["COUNT0",1],["SIDE0",EAST],["UNIT0","O_Heli_Light_02_dynamicLoadout_F"],["PLACE0",[[<null>,<null>],0,<null>]],["TIME0",[-0.982,-0.982]],["UCOUNT0",1],["UTYPE0","O_Heli_Light_02_dynamicLoadout_F"]], | |||
[["COUNT1",1],["SIDE1",GUER],["UNIT1","I_MBT_03_cannon_F"],["PLACE1",[[<null>,<null>],0,<null>]],["TIME1",[-0.982,-0.982]],["UCOUNT1",1],["UTYPE1","I_MBT_03_cannon_F"]], | |||
[["COUNT2",2],["SIDE2",EAST],["UNIT2","*Tank_F"],["PLACE2",[[<null>,<null>],4.34554,<null>]],["TIME2",[-0.982,-0.982]],["UCOUNT2",2],["UTYPE2","*O_MBT_02_cannon_F"]]] | |||
[ | |||
[["COUNT0",1],["SIDE0",EAST],["UNIT0","O_Heli_Light_02_dynamicLoadout_F"],["PLACE0",[[<null>,<null>],0,<null>]],["TIME0",[-1,-1]],["UCOUNT0",1],["UTYPE0","O_Heli_Light_02_dynamicLoadout_F"]], | |||
[["COUNT1",1],["SIDE1",GUER],["UNIT1","I_MBT_03_cannon_F"],["PLACE1",[[<null>,<null>],0,<null>]],["TIME1",[-1,-1]],["UCOUNT1",1],["UTYPE1","I_MBT_03_cannon_F"]], | |||
[["COUNT2",2],["SIDE2",EAST],["UNIT2","*Tank_F"],["PLACE2",[[<null>,<null>],4.34565,<null>]],["TIME2",[-1,-1]],["UCOUNT2",2],["UTYPE2","*O_MBT_02_cannon_F"]] | |||
] | |||
*/ | |||
</sqf> | |||
|seealso= [[targetsQuery]] | |seealso= [[targets]] [[targetsQuery]] [[nearTargets]] [[targetKnowledge]] [[knowsAbout]] [[reveal]] [[forgetTarget]] [[setTargetAge]] [[getHideFrom]] | ||
}} | }} | ||
Latest revision as of 12:37, 7 September 2022
Description
- Description:
- Aggregate candidates.
- Groups:
- Object Manipulation
Syntax
- Syntax:
- [speaker, side, classname, position, timeMax] targetsAggregate candidates
- Parameters:
- speaker: Object
- side: Side - if provided, a target with a side matching side will see it replaced by "$"
- classname: String - CfgVehicles classname - if provided, a target with a type matching classname will see it replaced by "$"
- position: Array format Position (Z-value is ignored) - centre of a hardcoded 200m radius
- timeMax: Number - max age of the target
- candidates: Array - array of targets in format [[accuracy, target, targetSide, targetType, targetPosition, targetAge], ...] where:
- accuracy: Number - a coefficient, which reflects how close the returned result to the query filter. Range: 0..1, 1 being the best match
- target: Object - the actual target object
- targetSide: Side - side of the target
- targetType: String - target typeOf
- targetPosition: Array format Position2D - [x,y] of the target
- targetAge: Number - the actual target age in seconds (can be negative)
- Return Value:
- Array format [countInfo, sideInfo, unitInfo, placeInfo, timeInfo, uCountInfo, uTypeInfo]:
- countInfo: Array - [format ["COUNT%1", index], count on index]
- sideInfo: Array - [format ["SIDE%1", index], side or string] if string then $ == "equal to queried"
- unitInfo: Array - [format ["UNIT%1", index], string] $ == "equal to queried", otherwise the "type" of the unit? Should be CfgVehicles config type I think
- placeInfo: Array - [format ["PLACE%1", index], [[centerX, centerY], radius]]
- timeInfo: Array - [format ["TIME%1", index], string or array] if string then $ == "equal to queried", otherwise [timeMin, timeMax]
- uCountInfo: Array - [format ["UCOUNT%1", index], scalar count]
- uTypeInfo: Array - [format ["UTYPE%1", index], string name] a classname? Will be format ["*%1", classname] if count > 1
Examples
- Example 1:
- with e.g_aggregation = [player, sideEnemy, "", [], 0] targetsAggregate (player targetsQuery [objNull, sideUnknown, "", [], 0]); /* returns e.g [ [ ["COUNT0", 1], ["SIDE0", WEST], ["UNIT0", "B_Soldier_F"], ["PLACE0", [[<null>,<null>], 0, <null>]], ["TIME0", [-0.9, -0.9]], ["UCOUNT0", 1], ["UTYPE0", ... ] ] */
- one Orca Helicopter
- one T-100 Varsuk tank
- one T-140K Angara tank
- one MBT-52 Kuma tank (independent, set as enemy to blufor)
/* [ [["COUNT0",1],["SIDE0",EAST],["UNIT0","O_Heli_Light_02_dynamicLoadout_F"],["PLACE0",[[<null>,<null>],0,<null>]],["TIME0",[-0.982,-0.982]],["UCOUNT0",1],["UTYPE0","O_Heli_Light_02_dynamicLoadout_F"]], [["COUNT1",1],["SIDE1",GUER],["UNIT1","I_MBT_03_cannon_F"],["PLACE1",[[<null>,<null>],0,<null>]],["TIME1",[-0.982,-0.982]],["UCOUNT1",1],["UTYPE1","I_MBT_03_cannon_F"]], [["COUNT2",2],["SIDE2",EAST],["UNIT2","*Tank_F"],["PLACE2",[[<null>,<null>],4.34554,<null>]],["TIME2",[-0.982,-0.982]],["UCOUNT2",2],["UTYPE2","*O_MBT_02_cannon_F"]]] [ [["COUNT0",1],["SIDE0",EAST],["UNIT0","O_Heli_Light_02_dynamicLoadout_F"],["PLACE0",[[<null>,<null>],0,<null>]],["TIME0",[-1,-1]],["UCOUNT0",1],["UTYPE0","O_Heli_Light_02_dynamicLoadout_F"]], [["COUNT1",1],["SIDE1",GUER],["UNIT1","I_MBT_03_cannon_F"],["PLACE1",[[<null>,<null>],0,<null>]],["TIME1",[-1,-1]],["UCOUNT1",1],["UTYPE1","I_MBT_03_cannon_F"]], [["COUNT2",2],["SIDE2",EAST],["UNIT2","*Tank_F"],["PLACE2",[[<null>,<null>],4.34565,<null>]],["TIME2",[-1,-1]],["UCOUNT2",2],["UTYPE2","*O_MBT_02_cannon_F"]] ] */
Additional Information
- See also:
- targets targetsQuery nearTargets targetKnowledge knowsAbout reveal forgetTarget setTargetAge getHideFrom
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note