BIS fnc param: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "\| *((\[\[[a-zA-Z0-9_ :\\\-\/|()]+\]\],? ?)+) * \}\}" to "|seealso= $1 }}") |
m (formatting) |
||
Line 1: | Line 1: | ||
{{RV|type=function | {{RV|type=function | ||
| | |game1= tkoh | ||
|0.50 | |version1= 1.00 | ||
|game2= arma3 | |||
|version2= 0.50 | |||
|gr1 = Arrays | |gr1 = Arrays | ||
| Load a script parameter. See [[ | |descr= Load a script parameter. See [[Arma 3: Functions Library#Loading Parameters|Arma 3: Functions Library]] for detailed description. | ||
{{Feature| | {{Feature|Arma3|Use [[param]] or [[params]] commands instead.}} | ||
| [input,index, | |s1= [input, index, defaultValue, dataTypes, requiredCount] call [[BIS_fnc_param]]; | ||
|p1= input: [[Array]] - | |p1= input: [[Array]] - List of params | ||
|p2= index: [[Number]] - | |p2= index: [[Number]] - Selected index | ||
|p3= defaultValue (Optional): [[Anything]] - | |p3= defaultValue (Optional, default [[Nothing]]): [[Anything]] - Default param (used when param is missing or of wrong type).<br>You can overload default value by declaring variable ''BIS_fnc_<functionName>_<index>'' in [[Namespace]] where BIS_fnc_param is called from.<br>[[BIS_fnc_paramIn]] is a variant of the function with overloading disabled. | ||
|p4= dataTypes (Optional): [[Array]] - | |p4= dataTypes (Optional, default [[Anything]]): [[Array]] - List of allowed type examples (e.g. ["",[],0,[[objNull]]<nowiki>]</nowiki>) | ||
|p5= requiredCount (Optional): [[Number]] or [[Array]] - If value is Array, checks if it has required number of elements | |p5= requiredCount (Optional): [[Number]] or [[Array]] - If value is Array, checks if it has required number of elements | ||
| [[Anything]] | |r1= [[Anything]] | ||
|x1= <code>_target <nowiki>=</nowiki> [_this, 0, [[objNull]], [<nowiki/>[[objNull]],[]], [2,3]] [[call]] [[BIS_fnc_param]];</code> | |x1= <code>_target <nowiki>=</nowiki> [_this, 0, [[objNull]], [<nowiki/>[[objNull]],[]], [2,3]] [[call]] [[BIS_fnc_param]];</code> | ||
Line 49: | Line 53: | ||
<!-- Note Section END --> | <!-- Note Section END --> | ||
</dl> | </dl> | ||
Revision as of 13:28, 26 March 2021
Description
- Description:
- Load a script parameter. See Arma 3: Functions Library for detailed description.
- Execution:
- call
- Groups:
- Arrays
Syntax
- Syntax:
- [input, index, defaultValue, dataTypes, requiredCount] call BIS_fnc_param;
- Parameters:
- input: Array - List of params
- index: Number - Selected index
- defaultValue (Optional, default Nothing): Anything - Default param (used when param is missing or of wrong type).
You can overload default value by declaring variable BIS_fnc_<functionName>_<index> in Namespace where BIS_fnc_param is called from.
BIS_fnc_paramIn is a variant of the function with overloading disabled. - dataTypes (Optional, default Anything): Array - List of allowed type examples (e.g. ["",[],0,objNull])
- requiredCount (Optional): Number or Array - If value is Array, checks if it has required number of elements
- Return Value:
- Anything
Examples
- Example 1:
_target = [_this, 0, objNull, [objNull,[]], [2,3]] call BIS_fnc_param;
- If (_this select 0) is not defined, default objnull is used.
- If (_this select 0) is defined, but is neither of type Object nor Array, error message is logged and default objNull is used.
- If (_this select 0) and is Array, but it is count is neither 2 nor 3, error message is logged and default objNull is used.
- Example 2:
_answer = [_this, 1, 42] call BIS_fnc_param;
- If (_this select 1) is not defined, default 42 is used.
- No limit for data types or number of elements exists.
Additional Information
- See also:
- BIS_fnc_paramIn param params
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: 21:55 Sep 6 2014
- ffur2007slx2_5
- 1.28 Use BIS_fnc_paramIn to load private path from parent parameters (loaded by BIS_fnc_param)
private ["_parent","_child0","_child1"]; _parent = [_this,0,[],[[]]] call BIS_fnc_param; _child0 = [_parent,0,missionNamespace,[ missionNamespace,grpNull,objNull ]] call BIS_fnc_paramIn; _child1 = [_parent,1,"",[""]] call BIS_fnc_paramIn;