BIS fnc error: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (template:command argument fix)
m (Some wiki formatting)
 
(54 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Function|= Comments
{{RV|type=function
____________________________________________________________________________________________


| arma3 |= Game name
|game1= arma3
|version1= 0.50


|0.50|= Game version
|gr1= Diagnostic
____________________________________________________________________________________________


| Log error message and display it (bottom of the UI). If it's called from a function, it'll include the function name before your content. 
|descr= [[File:BIS_fnc_error.png|300px|right]]
Logs an error message and shows an ingame error message. The message is shown when either of the following is true:


Output is: "''[[profileName]]/log: ERROR: <your content>''"|DESCRIPTION=
* In [[2D Editor]]
____________________________________________________________________________________________
* In [[Eden Editor]] via [[BIS_fnc_3DENNotification]]
* Display {{hl|313}} ([[Eden Editor]] display) is available
* <sqf inline>profileNamespace getVariable ["BIS_fnc_init_displayErrors", false]</sqf> is set to <sqf inline>true</sqf>.


| [param1,param2,...,param10] call [[BIS_fnc_error]]; |SYNTAX=
'''Output format:'''


|p1= param1: [[String]] - Logged message ([[format|formatted]]|= Parameter 1
* In multiplayer ([[isMultiplayer]]) the function will add the [[profileName]] in front of the message
* If <sqf inline>_fnc_error_exit</sqf> is set to <sqf inline>true</sqf> before the function call, the log message will display {{hl|HALT:}} instead of {{hl|ERROR:}}
* If function is called from within another function, the name of the parent function will be displayed. This can be overwritten by setting <sqf inline>_fnc_scriptName</sqf> to a custom value


|p2= param2 - param10: [[Anything]] |= Parameter 2
{{Feature|informative|{{hl|[[Description.ext#allowFunctionsLog|allowFunctionsLog]]}} has to be set to '''1''' in [[Description.ext]] for this function to have any effect.}}


| [[String]] - displayed message |RETURNVALUE=
|s1= [message, param1, ..., paramN] call [[BIS_fnc_error]]
____________________________________________________________________________________________
 
|x1= <code>["Player is too far away (%1)",[[player]] [[distance]] dude] [[call]] [[BIS_fnc_error]];</code> |= Example 1
____________________________________________________________________________________________


| |SEEALSO=
|p1= message: [[String]] - ([[format]]ted) logged message


}}
|p2= param1..paramN: [[Anything]] - (Optional) [[format]] arguments, if any
 
|r1= [[Array]] in format: [message, param1..paramN]


<h3 style="display:none">Notes</h3>
|x1= <sqf>["Player is too far away (%1 metres)", round (player distance [0, 0, 0])] call BIS_fnc_error;</sqf>
<dl class="command_description">
<!-- Note Section BEGIN -->
<dd class="notedate">Posted on Aug 27, 2013
<dt class="note">'''[[User:Kylania|Kylania]]'''<dd class="note">To allow this function to log to the RPT you need to include the following in your [[description.ext]]:


  allowFunctionsLog=1;
|x2= <sqf>
// some useful function cases
if (!isServer) exitWith { ["This function must run on the server"] call BIS_fnc_error };
if (!hasInterface) exitWith { ["This function must not run on a headless machine"] call BIS_fnc_error };
if (!local _vehicle) exitWith { ["This function must run on the vehicle owner's machine"] call BIS_fnc_error };
</sqf>


|x3= <sqf>
// Change rpt log to "HALT" indicating that function exited
private _fnc_error_exit = true;
if (exitHere) exitWith
{
"Some error message!" call BIS_fnc_error; // Output in rpt: "log: HALT: [BIS_fnc_debugConsoleExec] Some error message!"
};
</sqf>


<!-- Note Section END -->
|x4= <sqf>
</dl>
private _fnc_scriptName = "My_Awesome_Custom_Function";
"Some error message!" call BIS_fnc_error; // Output in rpt: "log: ERROR: [My_Awesome_Custom_Function] Some error message!"
</sqf>


<h3 style="display:none">Bottom Section</h3>
|seealso= [[BIS_fnc_errorMsg]] [[BIS_fnc_log]] [[BIS_fnc_logFormat]] [[BIS_fnc_logFormatServer]]
[[Category:Function Group: Debug|{{uc:error}}]]
}}
[[Category:Functions|{{uc:error}}]]
[[Category:{{Name|tkoh}}: Functions|{{uc:error}}]]
[[Category:{{Name|arma3}}: Functions|{{uc:error}}]]

Latest revision as of 00:23, 12 February 2024

Hover & click on the images for description

Description

Description:
BIS fnc error.png

Logs an error message and shows an ingame error message. The message is shown when either of the following is true:

Output format:

  • In multiplayer (isMultiplayer) the function will add the profileName in front of the message
  • If _fnc_error_exit is set to true before the function call, the log message will display HALT: instead of ERROR:
  • If function is called from within another function, the name of the parent function will be displayed. This can be overwritten by setting _fnc_scriptName to a custom value
allowFunctionsLog has to be set to 1 in Description.ext for this function to have any effect.
Execution:
call
Groups:
Diagnostic

Syntax

Syntax:
[message, param1, ..., paramN] call BIS_fnc_error
Parameters:
message: String - (formatted) logged message
param1..paramN: Anything - (Optional) format arguments, if any
Return Value:
Array in format: [message, param1..paramN]

Examples

Example 1:
["Player is too far away (%1 metres)", round (player distance [0, 0, 0])] call BIS_fnc_error;
Example 2:
// some useful function cases if (!isServer) exitWith { ["This function must run on the server"] call BIS_fnc_error }; if (!hasInterface) exitWith { ["This function must not run on a headless machine"] call BIS_fnc_error }; if (!local _vehicle) exitWith { ["This function must run on the vehicle owner's machine"] call BIS_fnc_error };
Example 3:
// Change rpt log to "HALT" indicating that function exited private _fnc_error_exit = true; if (exitHere) exitWith { "Some error message!" call BIS_fnc_error; // Output in rpt: "log: HALT: [BIS_fnc_debugConsoleExec] Some error message!" };
Example 4:
private _fnc_scriptName = "My_Awesome_Custom_Function"; "Some error message!" call BIS_fnc_error; // Output in rpt: "log: ERROR: [My_Awesome_Custom_Function] Some error message!"

Additional Information

See also:
BIS_fnc_errorMsg BIS_fnc_log BIS_fnc_logFormat BIS_fnc_logFormatServer

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