PMC websites shut down September 13th 2025 unless yearly web hosting fees are paid. Please Support PMC to help keep these websites online.

Enjoyed or found this pages content useful, please Support PMC to help me keep this web page online beyond september 13th 2025 when yearly web hosting fees are due.

User Tools

Site Tools


arma2:editor_modules:function

This is an old revision of the document!


Function Library

Functions Library

Function Library is pack of script functions available from anywhere in game.

Initialization

Paths

Editor: Units (F1) > Game Logic > Modules > Function Library

Data: ca\modules\functions

Startup

Place Function manager on map. No additional synchronizing needed.

Usage

First, you need to check if Functions were already initialized:

waituntil {!isnil "bis_fnc_init"};

Always check for 'BIS_fnc_init', not specific functions (e.g. 'BIS_fnc_setpitchbank')!
Never set value of 'BIS_fnc_init' in any part of mission! It may lead to breakdown of some modules!

After that, you can call any function using following syntax:

_fnc = [params] call TAG_fnc_functionName.

In-game functions viewer

See BIS_fnc_help (TODO)

Adding new functions

List of functions is defined in config - CfgFunctions. New ones can be also added in Description.ext file of mission or campaign.

class cfgFunctions
{
	class BIS
	{
		class category1
		{
			class Test1 		{ description = "Testing file 1"; };
		};
	};
 
	class CSLA
	{
		class category1
		{
			class Test2 		{ description = "Testing file 2"; file = "test.sqf"; };
		};
	};
};

If 'file' path is not set, system will search for file 'functions\category\fn_function.sqf“ (if function is defined in description.ext) or 'ca\modules\functions\category\fn_function.sqf” (if function is in config.cpp).

Result is:

  • BIS_fnc_Test1 - will load script \functions\category1\test1.sqf from mission or campaign directory
  • CSLA_fnc_Test2 - will load script \ca\modules\functions\category1\test2.sqf
arma2/editor_modules/function.1243788982.txt.gz · Last modified: 2009/05/31 16:56 by snakeman