Difference between revisions of "onPlayerConnected"

From Bohemia Interactive Community
Jump to navigation Jump to search
(idstr)
m
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Command|= Comments
+
{{Command|Comments=
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| arma |= Game name
+
| arma |Game name=
  
|1.00|= Game version
+
|1.00|Game version=
|exec= server|= Exec
+
 
 +
|gr1 = Multiplayer |GROUP1=
 +
 
 +
|gr2= Event Handlers |GROUP2=
 +
 
 +
 
 +
|serverExec= server |Exec=
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
 
| This command will execute attached code whenever a player is connected to a MP session. The code will receive a number of special variables:
 
| This command will execute attached code whenever a player is connected to a 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.
 
* '''_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 joining player. In Arma 3 it is also the same as Steam ID.
 
* '''_uid''': [[String]] - is [[getPlayerUID]] of the joining player. In Arma 3 it is also the same as Steam ID.
 
* '''_name''': [[String]] - is [[profileName]] of the joining player.
 
* '''_name''': [[String]] - is [[profileName]] of the joining player.
* '''_jip''': (''since Arma 3 v1.49'') [[Boolean]] - is a flag that indicates whether or not the player joined after the mission has started ('''J'''oined '''I'''n '''P'''rogress). [[true]] - when the player is JIP, otherwise [[false]].
+
* '''_jip''': (''since Arma 3 v1.49'') [[Boolean]] - is a flag that indicates whether or not the player joined after the mission has started ('''J'''oined '''I'''n '''P'''rogress). [[true]] when the player is [[JIP]], otherwise [[false]].
 
* '''_owner''': (''since Arma 3 v1.49'') [[Number]] - is [[owner]] id of the joining player. Can be used for kick or ban purposes or just for [[publicVariableClient]].
 
* '''_owner''': (''since Arma 3 v1.49'') [[Number]] - is [[owner]] id of the joining 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>
 
* '''_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#PlayerConnected|PlayerConnected]]}}<br>
+
{{Feature arma3 | Since '''Arma 3''' ''v1.57'' a stackable MissionEventHandler is available and should be used: [[Arma_3:_Event_Handlers/addMissionEventHandler#PlayerConnected|PlayerConnected]].<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.}}
+
Before that, the functions [[BIS_fnc_addStackedEventHandler]] and [[BIS_fnc_removeStackedEventHandler]] should be used instead in order to keep compatibility between official and community content.}}|DESCRIPTION=
|DESCRIPTION=
 
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| '''onPlayerConnected''' code |SYNTAX=
+
| [[onPlayerConnected]] code |SYNTAX=
  
 
|p1= code: [[String]] or [[Code]] |PARAMETER1=
 
|p1= code: [[String]] or [[Code]] |PARAMETER1=
  
 
| [[Nothing]] |RETURNVALUE=
 
| [[Nothing]] |RETURNVALUE=
 +
____________________________________________________________________________________________
  
____________________________________________________________________________________________
+
|x1= <code>[[onPlayerConnected]] "[_id, _name] [[execVM]] ""PlayerConnected.sqf""";</code> |EXAMPLE1=
|x1= <code>[[onPlayerConnected]] "[_id, _name] [[execVM]] ""PlayerConnected.sqf""";</code> |EXAMPLE1=  
+
 
|x2= <code>[[onPlayerConnected]] {[[diag_log]] [_id, _uid, _name]};</code> |EXAMPLE2=  
+
|x2= <code>[[onPlayerConnected]] { [[diag_log]] [_id, _uid, _name] };</code> |EXAMPLE2=  
|x3= From Arma 3 v1.49: <code>[[onPlayerConnected]] {
+
 
 +
|x3= From '''{{arma3}}''' v1.49:
 +
<code>[[onPlayerConnected]] {
 
somevar = [[random]] 123;
 
somevar = [[random]] 123;
 
_owner [[publicVariableClient]] "somevar";
 
_owner [[publicVariableClient]] "somevar";
//this will set somevar on
+
{{cc|this will set somevar}}
//joining player PC to a random value  
+
{{cc|joining player PC to a random value}}
};</code>|EXAMPLE2=
+
};</code>|EXAMPLE3=
  
|x4= From Arma 3 v1.49: <code>[[onPlayerConnected]] {isJip = _jip; _owner [[publicVariableClient]] "isJip"};
+
|x4= From '''{{arma3}}''' v1.49:
//Each player will now have variable isJip containing individual JIP info</code>|EXAMPLE2=
+
<code>[[onPlayerConnected]] { isJip = _jip; _owner [[publicVariableClient]] "isJip" };
 +
{{cc|Each player will now have variable isJip containing individual JIP info}}</code> |EXAMPLE4=
  
 
|mp= The ''statement'' is executed only on the server, not on the joining player's computer, nor on any other client.<br>
 
|mp= The ''statement'' is executed only on the server, not on the joining player's computer, nor on any other client.<br>
 
This happens even if '''onPlayerConnected''' was issued on all machines. <br>
 
This happens even if '''onPlayerConnected''' was issued on all machines. <br>
Note that there is a player with the '''_name''' called __SERVER__ which will also connect to a multiplayer game, executing ''code''. |=
+
Note that there is a player with the '''_name''' called __SERVER__ which will also connect to a multiplayer game, executing ''code''. |Multiplayer=
  
 
| [[onPlayerDisconnected]], [[didJIP]], [[didJIPOwner]]|SEEALSO=
 
| [[onPlayerDisconnected]], [[didJIP]], [[didJIPOwner]]|SEEALSO=
 
 
}}
 
}}
  
Line 57: Line 64:
 
<h3 style="display:none">Bottom Section</h3>
 
<h3 style="display:none">Bottom Section</h3>
  
[[Category:Scripting Commands|ONPLAYERCONNECTED]]
+
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP Elite |ONPLAYERCONNECTED]]
+
[[Category:Scripting Commands OFP Elite |{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands ArmA|ONPLAYERCONNECTED]]
+
[[Category:Scripting Commands Armed Assault|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
+
[[Category:Scripting Commands Arma 2|{{uc:{{PAGENAME}}}}]]
 
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
 
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
+
[[Category:Scripting Commands Take On Helicopters|{{uc:{{PAGENAME}}}}]]
 
[[Category:Command_Group:_Multiplayer|{{uc:{{PAGENAME}}}}]]
 
[[Category:Command_Group:_Multiplayer|{{uc:{{PAGENAME}}}}]]

Revision as of 13:14, 25 September 2020

Template:Command

Notes

Bottom Section