in: Difference between revisions
Jump to navigation
Jump to search
m (undo last changes due to broken syntax) Tag: Undo |
m (Replaced <code> with <sqf>) |
||
Line 81: | Line 81: | ||
|r5= [[Boolean]] | |r5= [[Boolean]] | ||
|x1= < | |x1= <sqf>1 in [0, 1, 2]; // true</sqf> | ||
|x2= < | |x2= <sqf>private _myArray = ["Aaa", "AAa", "AAA"]; | ||
"aaa" | "aaa" in _myArray; // false | ||
"AAa" | "AAa" in _myArray; // true | ||
// Case-insensitive alternatives: | |||
_myArray | _myArray findIf { _x == "aaa"; } != -1; // true | ||
({ | ({ | ||
if (_x == "aaa") exitWith { _forEachIndex }; | |||
-1 | -1 | ||
} | } forEach _myArray) != -1; // true, less performant but valid before the introduction of the findIf command | ||
{ | { if (_x == "aaa") exitWith { 1 } } count _myArray > 0; // true | ||
{ | { _x == "aaa"; } count _myArray > 0; // true, worst performance, only option available in OFP</sqf> | ||
|x3= < | |x3= <sqf>[1,2,3] in [[1,2,3], [4,5,6]]; // true - Arma 3 only</sqf> | ||
|x4= < | |x4= <sqf>private _isInCar = player in Car;</sqf> | ||
|x5= < | |x5= <sqf>private _isInside = [1000,2000,0] in MyLocation;</sqf> | ||
|x6= < | |x6= <sqf>private _isInString = "foo" in "foobar"; // true | ||
_isInString = "Foo" | _isInString = "Foo" in "foobar"; // false</sqf> | ||
|x7= < | |x7= <sqf>private _onFoot = _unit in _unit;</sqf> | ||
Other options: | |||
<sqf>private _onFoot = vehicle _unit == _unit;</sqf> | |||
<sqf>private _onFoot = isNull objectParent _unit;</sqf> | |||
|seealso= [[inPolygon]] [[inArea]] [[find]] [[findIf]] [[toArray]] [[forceUnicode]] | |seealso= [[inPolygon]] [[inArea]] [[find]] [[findIf]] [[toArray]] [[forceUnicode]] |
Revision as of 16:09, 14 May 2022
Description
- Description:
- Checks whether value is in array, unit is in vehicle, position is inside location or ANSI string is part of other ANSI string. If Unicode support is desired, see forceUnicode.
- Groups:
- StringsArraysLocationsHashMapUnit Control
Syntax 1
- Syntax:
- value in array
- Parameters:
- value: Anything - Any value (cannot match Array before Arma 3)
- array: Array - Array of values
- Return Value:
- Boolean
Syntax 2
- Syntax:
- unit in vehicle
- Parameters:
- unit: Object - Entity person
- vehicle: Object - Entity vehicle
- Return Value:
- Boolean
Syntax 3
- Syntax:
- position in location
- Parameters:
- position: Array - Format Position2D or Position3D
- location: Location
- Return Value:
- Boolean
Syntax 4
- Syntax:
- needle in haystack
- Parameters:
- needle: String - String to search for
- haystack: String - String to search in
- Return Value:
- Boolean
Syntax 5
- Syntax:
- key in hashMap
- Parameters:
- key: HashMapKey
- hashMap : HashMap
- Return Value:
- Boolean
Examples
- Example 1:
- 1 in [0, 1, 2]; // true
- Example 2:
- private _myArray = ["Aaa", "AAa", "AAA"]; "aaa" in _myArray; // false "AAa" in _myArray; // true // Case-insensitive alternatives: _myArray findIf { _x == "aaa"; } != -1; // true ({ if (_x == "aaa") exitWith { _forEachIndex }; -1 } forEach _myArray) != -1; // true, less performant but valid before the introduction of the findIf command { if (_x == "aaa") exitWith { 1 } } count _myArray > 0; // true { _x == "aaa"; } count _myArray > 0; // true, worst performance, only option available in OFP
- Example 3:
- [1,2,3] in [[1,2,3], [4,5,6]]; // true - Arma 3 only
- Example 4:
- Example 5:
- Example 6:
- Example 7:
-
Other options:
Additional Information
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
- Posted on October 8, 2019 - 21:08 (UTC)
- Lou Montana
- From a description note:
<unit> in <vehicle> literally does this: vehicle <unit> == <vehicle>. If <vehicle> is the same as <unit> the expression will return true for when the <unit> is on foot and false for when <unit> is in vehicle (see example 7 & 8).
Categories:
- Scripting Commands
- Introduced with Operation Flashpoint version 1.00
- Operation Flashpoint: New Scripting Commands
- Operation Flashpoint: Scripting Commands
- Operation Flashpoint: Elite: Scripting Commands
- ArmA: Armed Assault: Scripting Commands
- Arma 2: Scripting Commands
- Arma 2: Operation Arrowhead: Scripting Commands
- Take On Helicopters: Scripting Commands
- Arma 3: Scripting Commands
- Command Group: Strings
- Command Group: Arrays
- Command Group: Locations
- Command Group: HashMap
- Command Group: Unit Control