onPlayerDisconnected: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " *\|= * " to " ")
m (Text replacement - " *\| *([Cc]omments|COMMENTS|Game|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments( \("local" or "global"\))?|Effects|Multiplayer Effects( \("local" or "global"\))?|Multiplayer Exe...)
Line 1: Line 1:
{{Command|Comments=
{{Command


| arma1 |Game name=
| arma1
|1.00|Game version=
|1.00


|gr1 = Multiplayer |GROUP1=
|gr1 = Multiplayer
|gr2= Event Handlers |GROUP2=
|gr2= Event Handlers




Line 20: Line 20:
{{Informative|Since '''Arma 3''' ''v1.57'' a stackable version of this EH is available: [[Arma_3:_Event_Handlers/addMissionEventHandler#PlayerDisconnected|PlayerDisconnected]]}}<br>
{{Informative|Since '''Arma 3''' ''v1.57'' a stackable version of this EH is available: [[Arma_3:_Event_Handlers/addMissionEventHandler#PlayerDisconnected|PlayerDisconnected]]}}<br>
{{Feature|arma3|In order to keep compatibility between official and community content the functions [[BIS_fnc_addStackedEventHandler]] and [[BIS_fnc_removeStackedEventHandler]] should be used instead.}}
{{Feature|arma3|In order to keep compatibility between official and community content the functions [[BIS_fnc_addStackedEventHandler]] and [[BIS_fnc_removeStackedEventHandler]] should be used instead.}}
|DESCRIPTION=


| '''onPlayerDisconnected''' code |SYNTAX=


|p1=  code: [[String]] or [[Code]] |PARAMETER1=
| '''onPlayerDisconnected''' code


| [[Nothing]] |RETURNVALUE=
|p1=  code: [[String]] or [[Code]]


|x1= <code>[[onPlayerDisconnected]] "[[diag_log]] [_id, _uid, _name]";</code> |EXAMPLE1=
| [[Nothing]]
 
|x1= <code>[[onPlayerDisconnected]] "[[diag_log]] [_id, _uid, _name]";</code>
|x2= <code>[[onPlayerDisconnected]] {
|x2= <code>[[onPlayerDisconnected]] {
[[if]] ([[count]] [[allPlayers]] == 0) [[then]] {
[[if]] ([[count]] [[allPlayers]] == 0) [[then]] {
[[endMission]] "END1";
[[endMission]] "END1";
};
};
};</code> |EXAMPLE2=
};</code>




| [[onPlayerConnected]], [[didJIP]], [[didJIPOwner]], [[Arma_3:_Event_Handlers/addMissionEventHandler#HandleDisconnect|HandleDisconnect]] |SEEALSO=
| [[onPlayerConnected]], [[didJIP]], [[didJIPOwner]], [[Arma_3:_Event_Handlers/addMissionEventHandler#HandleDisconnect|HandleDisconnect]]


|mp= In MP [[onPlayerDisconnected]] is executed only on the server
|mp= In MP [[onPlayerDisconnected]] is executed only on the server

Revision as of 01:18, 18 January 2021

Hover & click on the images for description

Description

Description:
This command will execute attached code whenever a player is leaving an MP session. The code will receive a number of special variables:
  • _id: Number - is the unique DirectPlay ID. Quite useless as the number is too big for in-built string representation and gets rounded. It is also the same id used for user placed markers.
  • _uid: String - is getPlayerUID of the leaving player. In Arma 3 it is also the same as Steam ID.
  • _name: String - is profileName of the leaving player.
  • _jip: (since Arma 3 v1.49) Boolean - is a flag that indicated whether or not the player joined after the mission has started (Joined In Progress). true - if the player was JIP, otherwise false.
  • _owner: (since Arma 3 v1.49) Number - is owner id of the leaving player. Can be used for kick or ban purposes or just for publicVariableClient.
  • _idstr: (since Arma 3 v1.95) String - same as _id but in string format, so could be exactly compared to user marker ids.

Since Arma 3 v1.57 a stackable version of this EH is available: PlayerDisconnected

Arma 3
In order to keep compatibility between official and community content the functions BIS_fnc_addStackedEventHandler and BIS_fnc_removeStackedEventHandler should be used instead.
Multiplayer:
In MP onPlayerDisconnected is executed only on the server
Groups:
MultiplayerEvent Handlers

Syntax

Syntax:
onPlayerDisconnected code
Parameters:
code: String or Code
Return Value:
Nothing

Examples

Example 1:
onPlayerDisconnected "diag_log [_id, _uid, _name]";
Example 2:
onPlayerDisconnected { if (count allPlayers == 0) then { endMission "END1"; }; };

Additional Information

See also:
onPlayerConnecteddidJIPdidJIPOwnerHandleDisconnect

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


Bottom Section

Posted on January 14, 2015 - 19:21 (UTC)
AgentRev
For Arma 3 v1.32 and onward, one might want to consider using instead the HandleDisconnect mission event handler for greater flexibility.