onPlayerDisconnected: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\[\[Category:[ _]?Scripting[ _]Commands[ _]Take[ _]On[ _]Helicopters(\|.*)?\]\]" to "{{GameCategory|tkoh|Scripting Commands}}")
m (Text replacement - "<sqf>([^↵][^\/]*↵[^\/]*)<\/sqf>" to "<sqf> $1 </sqf>")
 
(32 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Command|Comments=
{{RV|type=command
____________________________________________________________________________________________


| arma1 |Game name=
|game1= arma1
|1.00|Game version=
|version1= 1.00


|gr1 = Multiplayer |GROUP1=
|game2= arma2
|gr2= Event Handlers |GROUP2=
|version2= 1.00


|game3= arma2oa
|version3= 1.50


|serverExec= server |Exec=
|game4= tkoh
____________________________________________________________________________________________
|version4= 1.00


| This command will execute attached code whenever a player is leaving an MP session. The code will receive a number of special variables:
|game5= arma3
|version5= 0.50


* '''_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.
|gr1= Multiplayer
* '''_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 ('''J'''oined '''I'''n '''P'''rogress). [[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 <tt>_id</tt> but in string format, so could be exactly compared to [[allMapMarkers | user marker]] ids.<br><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.}}
|DESCRIPTION=
____________________________________________________________________________________________


| '''onPlayerDisconnected''' code |SYNTAX=
|gr2= Event Handlers


|p1=  code: [[String]] or [[Code]] |PARAMETER1=
|serverExec= server


| [[Nothing]] |RETURNVALUE=
|descr= This command will execute attached code whenever a player is leaving an MP session. The code will receive a number of special variables:
____________________________________________________________________________________________


|x1= <code>[[onPlayerDisconnected]] "[[diag_log]] [_id, _uid, _name]";</code> |EXAMPLE1=
|mp= In multiplayer [[onPlayerDisconnected]] is executed only on the server.
|x2= <code>[[onPlayerDisconnected]] {
[[if]] ([[count]] [[allPlayers]] == 0) [[then]] {
[[endMission]] "END1";
};
};</code> |EXAMPLE2=


{{Feature|arma3|Use [[Arma 3: Mission Event Handlers#PlayerDisconnected|playerDisconnected]] or [[Arma 3: Mission Event Handlers#HandleDisconnect|HandleDisconnect]] instead in {{arma3}}.}}


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


|mp= In MP [[onPlayerDisconnected]] is executed only on the server |=
|p1= code: [[String]] or [[Code]] - code executed. 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.
* {{GVI|arma3|1.50|size= 0.75}} _jip: [[Boolean]] - Is a flag that indicated whether or not the player joined after the mission has started ('''J'''oined '''I'''n '''P'''rogress). [[true]] - if the player was JIP, otherwise [[false]].
* {{GVI|arma3|1.50|size= 0.75}} _owner: [[Number]] - Is [[owner]] id of the leaving player. Can be used for kick or ban purposes or just for [[publicVariableClient]].
* {{GVI|arma3|1.96|size= 0.75}} _idstr:  [[String]] - Same as {{hl|_id}} but in string format, so could be exactly compared to [[allMapMarkers | user marker]] ids.


|r1= [[Nothing]]


<h3 style="display:none">Notes</h3>
|x1= <sqf>onPlayerDisconnected {diag_log [_id, _uid, _name]};</sqf>
<dl class="command_description">
<!-- Note Section BEGIN -->


<!-- Note Section END -->
|x2= <sqf>
</dl>
onPlayerDisconnected {
if (count allPlayers == 0) then {
endMission "END1";
};
};
</sqf>


<h3 style="display:none">Bottom Section</h3>
|seealso= [[onPlayerConnected]] [[didJIP]] [[didJIPOwner]] [[Arma 3: Mission Event Handlers#HandleDisconnect|HandleDisconnect]] [[Arma 3: Mission Event Handlers#playerDisconnected|playerDisconnected]]


[[Category:Scripting Commands|ONPLAYERDISCONNECTED]]
}}
[[Category:Scripting Commands OFP Elite |ONPLAYERDISCONNECTED]]
{{GameCategory|arma1|Scripting Commands}}
{{GameCategory|arma2|Scripting Commands}}
{{GameCategory|arma3|Scripting Commands}}
{{GameCategory|tkoh|Scripting Commands}}
 
<!-- CONTINUE Notes -->
<dl class="command_description">
<dd class="notedate">Posted on January 14, 2015 - 19:21 (UTC)</dd>
<dt class="note">[[User:AgentRevolution|AgentRev]]</dt>
<dd class="note">
For Arma 3 v1.32 and onward, one might want to consider using instead the [[Arma_3:_Event_Handlers/addMissionEventHandler#HandleDisconnect|HandleDisconnect]] mission event handler for greater flexibility.
</dd>
</dl>
<!-- DISCONTINUE Notes -->

Latest revision as of 11:34, 3 September 2024

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:
Multiplayer:
In multiplayer onPlayerDisconnected is executed only on the server.
Arma 3
Use playerDisconnected or HandleDisconnect instead in Arma 3.
Groups:
MultiplayerEvent Handlers

Syntax

Syntax:
onPlayerDisconnected code
Parameters:
code: String or Code - code executed. 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.
  • Arma 3 logo black.png1.50 _jip: 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.
  • Arma 3 logo black.png1.50 _owner: Number - Is owner id of the leaving player. Can be used for kick or ban purposes or just for publicVariableClient.
  • Arma 3 logo black.png1.96 _idstr: String - Same as _id but in string format, so could be exactly compared to user marker ids.
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:
onPlayerConnected didJIP didJIPOwner HandleDisconnect playerDisconnected

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