Notification – Arma 3

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Lou Montana moved page Arma 3 Notification to Arma 3: Notification: Text replacement - "^Arma 3 " to "Arma 3: ")
m (Example at beginning of page used wrong parameters, leading to the description staying empty and param being ignored)
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
[[File:A3_notification.jpg|thumb|Notification preview]]
[[File:A3_notification.jpg|thumb|Notification preview]]


In Arma 3, you can show mission or system notification using [[BIS_fnc_showNotification]] function.
{{arma3}} allows to show mission or system notification using [[BIS_fnc_showNotification]] function:
["TaskSucceeded", ["Disable the nuke"]] [[call]] [[BIS_fnc_showNotification]];
<sqf>
["ScoreAdded", ["Disabled the nuke without triggering an alarm.", 5]] [[call]] [[BIS_fnc_showNotification]];
["TaskSucceeded", ["", "Disable the nuke"]] call BIS_fnc_showNotification;
["ScoreAdded", ["", "Disabled the nuke without triggering an alarm.", 5]] call BIS_fnc_showNotification;
</sqf>


Instead of defining every single param over and over again in multiple missions, you can simply point to a template defined in ''CfgNotifications'' class either in [[Description.ext|mission]] / [[Campaign Description.ext|campaign]] ''Description.ext'' or in global ''config.cpp''.
Instead of defining every single param over and over again in multiple missions, it is possible to reference a template defined in {{hl|CfgNotifications}} class either in [[Description.ext|mission]] / [[Campaign Description.ext|campaign]] ''Description.ext'' or in global ''config.cpp''.
 
{{Feature|informative|
[[BIS_fnc_showNotification]] only offers possibility to change:
* title
* description
* iconPicture
* iconText
* soundRadio
The rest is {{hl|CfgNotifications}}-dependent.
}}


You can send additional arguments into the template, where they are applied to title, icon or description using the [[format]] command.
<syntaxhighlight lang="cpp">
<syntaxhighlight lang="cpp">
class CfgNotifications
class CfgNotifications
Line 43: Line 54:
};
};
};
};
</syntaxhighlight>
{{GVI|arma3|2.06}} Default version:
<syntaxhighlight lang="cpp">
color[] = {
"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"
};
colorIconPicture[] = {
"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"
};
colorIconText[] = {
"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])",
"(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"
};
description = "";
difficulty[] = {};
duration = 3;
iconPicture = "";
iconText = "";
priority = 0;
sound = "defaultNotification"; // Sound to be played upon notification is created. (cfgSounds)
soundClose = "defaultNotificationClose"; // Sound to be played upon notification is collapsed. (cfgSounds)
soundRadio = ""; // Radio message to be played upon notification is created. HQ entity of player side is used. (cfgRadio)
title = "";
</syntaxhighlight>
</syntaxhighlight>




{{GameCategory|arma3|Editing}}
{{GameCategory|arma3|Editing}}

Latest revision as of 11:55, 10 March 2023

Notification preview

Arma 3 allows to show mission or system notification using BIS_fnc_showNotification function:

["TaskSucceeded", ["", "Disable the nuke"]] call BIS_fnc_showNotification; ["ScoreAdded", ["", "Disabled the nuke without triggering an alarm.", 5]] call BIS_fnc_showNotification;

Instead of defining every single param over and over again in multiple missions, it is possible to reference a template defined in CfgNotifications class either in mission / campaign Description.ext or in global config.cpp.

BIS_fnc_showNotification only offers possibility to change:
  • title
  • description
  • iconPicture
  • iconText
  • soundRadio
The rest is CfgNotifications-dependent.
class CfgNotifications
{
	class Default
	{
		title = "";				// Title displayed as text on black background. Filled by arguments.
		iconPicture = "";		// Small icon displayed in left part. Colored by "color", filled by arguments.
		iconText = "";			// Short text displayed over the icon. Colored by "color", filled by arguments.
		description = "";		// Brief description displayed as structured text. Colored by "color", filled by arguments.
		color[] = {1,1,1,1};	// Icon and text color
		duration = 5;			// How many seconds will the notification be displayed
		priority = 0;			// Priority; higher number = more important; tasks in queue are selected by priority
		difficulty[] = {};		// Required difficulty settings. All listed difficulties has to be enabled
	};

	// Example 1
	class TaskAssigned
	{
		title = "TASK ASSIGNED";
		iconPicture = "\A3\ui_f\data\map\mapcontrol\taskIcon_ca.paa";
		description = "%1";
		priority = 7;
	};

	// Example 2
	class ScoreAdded
	{
		title = "Score bonus";
		iconText = "+%2";
		description = "%1";
		color[] = {0.5,1,1,1};
		priority = 0;
		difficulty[] = {"netStats"};
	};
};

Arma 3 logo black.png2.06 Default version:

color[] = {
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"
};
colorIconPicture[] = {
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"
};
colorIconText[] = {
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])",
	"(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"
};
description = "";
difficulty[] = {};
duration = 3;
iconPicture = "";
iconText = "";
priority = 0;
sound = "defaultNotification";				// Sound to be played upon notification is created. (cfgSounds)
soundClose = "defaultNotificationClose";	// Sound to be played upon notification is collapsed. (cfgSounds)
soundRadio = ""; // Radio message to be played upon notification is created. HQ entity of player side is used. (cfgRadio)
title = "";