Intel Framework

From Arma Projects
Jump to: navigation, search

Summary

The intel system allows the ability to create objects that allows a player to interact in order to receive intel. The player can interact by "Downloading", "Picking Up" or by receiving intel from an NPC as part of a conversation. Each type of intel, when interacted with, triggers global events that are then broadcast to other players and the server allowing customer event handlers to be executed on demand.

Configuration

Intel Drop Types

Used to identify accurately objects that players can pick up objects to receive intel.
intelDropTypes[] = {<object_classnames>};

Intel Download Types

Used to identify accurately objects that players can initiate downloads to receive intel.
intelDownloadTypes[] = {<object_classnames>};

Mission Configuration Example

class CfgMission {
	intelDropTypes[] = {"Land_Suitcase_F"};
	intelDownloadTypes[] = {
		"Land_Laptop_F","Land_Laptop_unfolded_F","Land_Laptop_device_F","Land_SatellitePhone_F"
		,"Land_DataTerminal_01_F","Land_Device_assembled_F","Land_Device_disassembled_F"
		,"O_UAV_02_F","O_UAV_02_CAS_F"
		,"B_UAV_02_F","B_UAV_02_CAS_F"
		,"I_UAV_02_F","I_UAV_02_CAS_F"
	};
};

Code

Create Intel

MPSF_fnc_createIntel
Description
When an Object is passed to the function, depending on the object type configured in CfgMission, it will be turned into a piece of intel that can interacted with by the player to either download or pick up the intel.

When a position or marker is passed, a piece of Intel is spawned and can be picked up by the player.
When intel is a download, the player will begin a sequence that connects them to the intel. Depending on their proximity to the object will determine the rate at which the intel is downloaded.
If intel is a pick up, the object will be deleted after the event has triggered a global pick up.

Syntax
[<object:object/string:marker/array:position>,<array:arguments>,<number:size>] call MPSF_fnc_createIntel
Parameters
1 - <variable>
Object - object to add intel functionality
String - marker name of where to spawn a dropped intel
Array - position [x,y,z] of where to spawn a dropped intel
2 - <array> : Arguments that are to be passed when the events are triggered
3 - <number> (optional) : time to pick up (min 5) or download size in KB (min 1024)
Example
[position player,["Task1"]] call MPSF_fnc_createIntel;

Triggered Events

Event Description
onIntelCreated Triggered when an item is turned into a piece of Intel
onIntelDownloadStart Triggered when a player initiates the download of Intel
onIntelDownloadStop Triggered when a player aborts the download of Intel
onIntelDownloadComplete Triggered when a player completed the download of Intel
onIntelDropped Triggered when a unit is killed and intel is dropped near their body
onIntelPickup Triggered when a player picks up Intel that was dropped
onIntelRecieve Triggered when a player received intel as part of an NPC conversation