/* DMS_fnc_BroadcastMissionStatus Created by eraser1 Usage: _message call DMS_fnc_BroadcastMissionStatus; Requires "DMS_PlayerNotificationTypes". Notification type "dynamicTextRequest" requires "DMS_dynamicText_Size" and "DMS_dynamicText_Color". */ private ["_missionName", "_messageInfo", "_titleColor", "_message"]; _OK = params [ ["_missionName","",[""]], ["_messageInfo",[],[[]],[2]] ]; if (!_OK) exitWith { diag_log format ["DMS ERROR :: Calling DMS_fnc_BroadcastMissionStatus with invalid parameters: %1",_this]; }; _messageInfo params [ ["_titleColor","#FFFF00",[""]], ["_message","",[""]] ]; if (DMS_DEBUG) then { diag_log format["DMS_DEBUG BroadcastMissionStatus :: Notification types: |%1| for broadcasting mission status: %2",DMS_PlayerNotificationTypes,_message]; }; if ((typeName _message) != "STRING") then { _message = str _message; }; { private "_args"; switch (toLower _x) do { case "systemchatrequest": { [_x, [format ["%1: %2",toUpper _missionName,_message]]] call ExileServer_system_network_send_broadcast; }; case "standardhintrequest": { [_x, [format ["%2
%3",_titleColor,_missionName,_message]]] call ExileServer_system_network_send_broadcast; }; case "dynamictextrequest": { //Unfortunately that doesn't work, so I have to do some funky stuff... //[_x, [format ["%1
%2",toUpper _missionName,_message], 0, DMS_dynamicText_Size, DMS_dynamicText_Color]] call ExileServer_system_network_send_broadcast; [ format ['%2
%5',_titleColor,_missionName,DMS_dynamicText_Color,DMS_dynamicText_Size,_message], 0, 0, 10, 1 ] remoteExec ["BIS_fnc_dynamicText", -2]; }; default { diag_log format ["DMS ERROR :: Unsupported Notification Type in DMS_PlayerNotificationTypes: %1 | Calling parameters: %2",_x,_this]; }; }; } forEach DMS_PlayerNotificationTypes;