getMissionConfigValue: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(1st tier)
m (Some wiki formatting)
 
(49 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| arma3dev |= Game name
|game1= arma3
|version1= 1.56


|1.52|= Game version
|gr1= Config
____________________________________________________________________________________________


| Returns value of given scenario attribute from the 1st tier. The attribute can be defined on multiple places, the commands checks them in the following order:
|gr2= Mission Information
# External ''[[Description.ext]]'' file
# [[Eden_Editor:_Scenario_Atttributes|Eden Editor]] scenario attribute
So if attribute exists in both places, attribute from [[description.ext]] is used. Previously, scenario attributes were extracted from ''Description.ext'' using [[missionConfigFile]]. That still works, but it ignores attributes set directly in the editor and it should not be used anymore.
  |= Description
____________________________________________________________________________________________


| '''getMissionConfigValue''' attribute |= Syntax
|descr= Returns value of the given scenario attribute from the 1st tier. Since only config properties have values, the attribute should be config property.
|p1= attribute: [[String]] - attribute name |= PARAMETER1
If it is not found or config class is given, the return is [[nil]]. If the attribute defined in multiple places, the command checks them in the following order:
| [[Number]], [[String]] or [[Array]], depending on the attribute value type. [[nil|Nil]] when the attribute is undefined. |= RETURNVALUE
# [[Description.ext]] entry
# [[Eden Editor: Scenario Attributes|Eden Editor]] scenario attribute


|s2= '''getMissionConfigValue''' [attribute, defaultValue] |= Syntax
So if an attribute exists in both places, the [[Description.ext]] value is used.
|p21=  attribute: [[String]] - attribute name |= PARAMETER1
Previously, scenario attributes were extracted from Description.ext using [[missionConfigFile]].
|p22=  defaultValue: [[Any]] - value used when the attribute is undefined |= PARAMETER2
That still works, but it ignores attributes set directly in the editor and should not be used anymore.
|r2= [[Number]], [[String]] or [[Array]], depending on the attribute value type. Default value when the attribute is undefined. |= RETURNVALUE


|x1= <code>_respawnDelay = getMissionConfigValue ["respawnDelay",0]</code>
{{Feature|important|This command cannot force return type, it will return the value of the type given in config. Use [[isEqualType]] to additionally reaffirm the correct type if necessary to account for human error.}}
Returns respawn delay value. Replaces the previous approach which would scan only the external ''Description.ext file'', but ignore the value set in the Eden Editor:
<code>_respawnDelay = getNumber ([[missionConfigFile]] >> "respawnDelay"); // Old approach</code>
|= EXAMPLE1
____________________________________________________________________________________________


|  
|s1= [[getMissionConfigValue]] attribute
[[getMissionConfig]]
 
[[missionConfigFile]]
|p1= attribute: [[String]] - attribute name
|= SEEALSO
 
| |= MPBEHAVIOUR
|r1= [[Number]], [[String]], [[Boolean]] or [[Array]], depending on the attribute value type. [[nil|Nil]] when the attribute is undefined.
____________________________________________________________________________________________
 
}}
|s2= [[getMissionConfigValue]] [attribute, defaultValue]
 
|p21= attribute: [[String]] - attribute name
 
|p22= defaultValue: [[Anything]] - value used when the attribute is undefined


<h3 style='display:none'>Notes</h3>
|r2= [[Number]], [[String]], [[Boolean]] or [[Array]], depending on the attribute value type. Default value when the attribute is undefined.
<dl class='command_description'>
<!-- Note Section BEGIN -->
<!-- Note Section END -->
</dl>
<!-- DISCONTINUE Notes -->


|x1= <sqf>
private _respawnDelay = getMissionConfigValue ["respawnDelay", 0]; // returns the real, defined respawn delay value
private _respawnDelay = getNumber (missionConfigFile >> "respawnDelay"); // old approach, ignoring the Eden Editor-set value
</sqf>


<h3 style='display:none'>Bottom Section</h3>
|seealso= [[getMissionConfig]] [[missionConfigFile]] [[BIS_fnc_getParamValue]] [[Mission_Parameters]]
[[Category:Arma_3:_New_Scripting_Commands_List|{{uc:{{PAGENAME}}}}]]
}}
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
[[Category:Command_Group:_Mission_Information|{{uc:{{PAGENAME}}}}]]

Latest revision as of 22:48, 22 February 2024

Hover & click on the images for description

Description

Description:
Returns value of the given scenario attribute from the 1st tier. Since only config properties have values, the attribute should be config property. If it is not found or config class is given, the return is nil. If the attribute defined in multiple places, the command checks them in the following order:
  1. Description.ext entry
  2. Eden Editor scenario attribute
So if an attribute exists in both places, the Description.ext value is used. Previously, scenario attributes were extracted from Description.ext using missionConfigFile. That still works, but it ignores attributes set directly in the editor and should not be used anymore.
This command cannot force return type, it will return the value of the type given in config. Use isEqualType to additionally reaffirm the correct type if necessary to account for human error.
Groups:
ConfigMission Information

Syntax

Syntax:
getMissionConfigValue attribute
Parameters:
attribute: String - attribute name
Return Value:
Number, String, Boolean or Array, depending on the attribute value type. Nil when the attribute is undefined.

Alternative Syntax

Syntax:
getMissionConfigValue [attribute, defaultValue]
Parameters:
attribute: String - attribute name
defaultValue: Anything - value used when the attribute is undefined
Return Value:
Number, String, Boolean or Array, depending on the attribute value type. Default value when the attribute is undefined.

Examples

Example 1:
private _respawnDelay = getMissionConfigValue ["respawnDelay", 0]; // returns the real, defined respawn delay value private _respawnDelay = getNumber (missionConfigFile >> "respawnDelay"); // old approach, ignoring the Eden Editor-set value

Additional Information

See also:
getMissionConfig missionConfigFile BIS_fnc_getParamValue Mission_Parameters

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