BIS fnc initIntelObject: Difference between revisions
Jump to navigation
Jump to search
m (Text replacement - "\[\[[cC]ategory:\{\{Name\|arma3\}\}: [fF]unctions\|\{\{uc:[a-z A-Z_]*\}\}\]\]" to "") |
Lou Montana (talk | contribs) m (Text replacement - "\{\{( *)Informative( *)\|" to "{{$1Feature$2|$2Informative$2|") |
||
Line 33: | Line 33: | ||
| [[true]] | | [[true]] | ||
{{Informative|}} | {{Feature|Informative|}} | ||
|x1= Setup an object as intel from its init attribute in the editor.<br> | |x1= Setup an object as intel from its init attribute in the editor.<br> | ||
Basic version including ''picture'', ''title'', ''description'', ''recipients'' and ''sides that can interact with it'':<br> | Basic version including ''picture'', ''title'', ''description'', ''recipients'' and ''sides that can interact with it'':<br> |
Revision as of 00:00, 7 February 2021
Description
- Description:
- Description needed
- Execution:
- call
- Groups:
- Interaction
Syntax
- Syntax:
- Syntax needed
- Parameters:
- object: Object - Object to place intel action on
- Return Value:
- Return value needed
Examples
- Example 1:
- Setup an object as intel from its init attribute in the editor.
Basic version including picture, title, description, recipients and sides that can interact with it:
[this] call BIS_fnc_initIntelObject; if (isServer) then { // Diary picture: this setVariable [ "RscAttributeDiaryRecord_texture", "a3\structures_f_epc\Items\Documents\Data\document_secret_01_co.paa", // Path to picture true ]; // Diary Title and Description: [ this, "RscAttributeDiaryRecord", ["New Intel", "The enemies have a cave troll!"] // Array in format [Title, Description] ] call BIS_fnc_setServerVariable; // Diary entry shared with (follows BIS_fnc_MP target rules): this setVariable ["recipients", west, true]; // Sides that can interact with the intel object: this setVariable ["RscAttributeOwners", [west], true]; };
- Example 2:
- To set up an object as intel from its init attribute in the editor with a custom addAction title, replace the first line of Example 1 with the following:
if (hasInterface) then { this addAction [ // Custom addAction Title: "Pick up laptop", {[_this, "action"] spawn BIS_fnc_initIntelObject;}, [], 10, true, true, "", "isPlayer _this && {_this distance _target < 2} && {(side group _this) in (_target getVariable ['RscAttributeOwners', [west, east, resistance, civilian]])}" ]; };
- Example 3:
- Set up an object as intel from its init attribute in the editor.
Basic version plus curator and scripted event handlers:[this] call BIS_fnc_initIntelObject; if (isServer) then { // Diary picture: this setVariable [ "RscAttributeDiaryRecord_texture", "a3\structures_f_epc\Items\Documents\Data\document_secret_01_co.paa", // Path to picture true ]; // Diary Title and Description: [ this, "RscAttributeDiaryRecord", ["New Intel", "The enemies have a cave troll!"] // Array in format [Title, Description] ] call BIS_fnc_setServerVariable; // Diary entry shared with (follows BIS_fnc_MP target rules): this setVariable ["recipients", west, true]; // Sides that can interact with the intel object: this setVariable ["RscAttributeOwners", [west], true]; // Register intel object with Zeus as curator editable (_zeus is the curator module): _zeus addCuratorEditableObjects [[this], false]; // Add Zeus scripted event: [_zeus, "IntelObjectFound", {hint "Intel found"}] call BIS_fnc_addScriptedEventHandler; // Add a scripted event that notifies all clients via systemChat when the intel is found: [ this, "IntelObjectFound", { params ["", "_foundBy"]; private _msg = format ["Intel found by %1", name _foundBy]; _msg remoteExec ["systemChat", 0]; } ] call BIS_fnc_addScriptedEventHandler; };
Although both scripted event handlers supply a reference to the intel object, it is deleted from the mission almost immediately, so it could already be null when queried.
Additional Information
- See also:
- See also needed
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