BIS fnc MP: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
mNo edit summary
Line 30: Line 30:
Logs a message for every player who's currently joined.|=
Logs a message for every player who's currently joined.|=


|x2= <code><nowiki>[</nowiki>["Hello World"],"[[BIS_fnc_guiMessage]]",nil,true] spawn BIS_fnc_MP;</code>
|x2= <code><nowiki>[</nowiki>["Hello World"],"[[BIS_fnc_guiMessage]]",[[nil]],true] spawn BIS_fnc_MP;</code>
Send a message containing "Hello World" to every player, including the ones who joins later using JIP.|=
Send a message containing "Hello World" to every player, including the ones who joins later using JIP.|=
|x3= <code><nowiki>[[[]</nowiki>,"playerConnected.sqf"],"BIS_fnc_execVM",false,true] spawn BIS_fnc_MP;</code>
Executes ''playerConnected.sqf'' script on server every time a player joins the game. |=
____________________________________________________________________________________________
____________________________________________________________________________________________



Revision as of 08:11, 30 April 2013

Function syntax in Take On Helicopters differs, see BIS_fnc_MP (Take On Helicopters) for details.


Hover & click on the images for description

Description

Description:
Send function for remote execution (and executes locally if conditions are met) .
Execution:
call
Groups:
Uncategorised

Syntax

Syntax:
[params, functionName, target, isPersistent] spawn BIS_fnc_MP;
Parameters:
params: Anything - function arguments
functionName: String - function name
target:
Object - function will be executed only where unit is local [default: everyone]
Array - array of objects
Boolean - true to execute on every client, false to execute it on server only
Number - function will be executed only on client with the given ID
isPersistent: Boolean - true for persistent call (will be called now and for every JIP client) [default: false]
Return Value:
Array - sent packet

Examples

Example 1:
["Imma spamming your log!","BIS_fnc_log"] spawn BIS_fnc_MP; Logs a message for every player who's currently joined.
Example 2:
[["Hello World"],"BIS_fnc_guiMessage",nil,true] spawn BIS_fnc_MP; Send a message containing "Hello World" to every player, including the ones who joins later using JIP.
Example 3:
[[[],"playerConnected.sqf"],"BIS_fnc_execVM",false,true] spawn BIS_fnc_MP; Executes playerConnected.sqf script on server every time a player joins the game.

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

Notes

Posted on 2 April, 2013
Fireball
Note that the function you provide as argument is *not* transferred to the remote client or server. You will have to use either
  1. functions defined in global namespace
  2. functions defined depending on where you want to execute them; in server or/and client code if you separate it using conditions on isServer or local player
  3. pre-defined BIS functions
You can also execute scripts remotely like this: ["myScript.sqf","BIS_fnc_execVM",true,true] spawn BIS_fnc_MP; Or transfer code as parameter (not recommended) like that: ["{hint "Hello World!";}","BIS_fnc_spawn",true,true] spawn BIS_fnc_MP;

Bottom Section