local: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
m (Text replacement - "// since Arma 3" to "// since {{arma3}}")
 
(86 intermediate revisions by 17 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| ofp |= Game name
|game1= ofp
|version1= 1.00


|1.00|= Game version
|game2= ofpe
____________________________________________________________________________________________
|version2= 1.00


| MP: Check if given unit is local on the computer. (See [[Locality in Multiplayer]] for general concepts.) This can be used when some activation fields or scripts need to be performed only on one computer. In SP all objects are local. Note: All static objects are local everywhere. |= Description
|game3= arma1
____________________________________________________________________________________________
|version3= 1.00


| '''local''' |= Syntax
|game4= arma2
|version4= 1.00


|p1= obj: [[Object]] |= Parameter 1
|game5= arma2oa
|version5= 1.50


| [[Boolean]] |= Return value
|game6= tkoh
____________________________________________________________________________________________
|version6= 1.00
 
|x1= <pre>local unitName</pre> |= Example 1
____________________________________________________________________________________________


| |= See also
|game7= arma3
|version7= 0.50


}}
|gr1= Multiplayer
 
|arg= global
 
|descr= Check if given unit is local on the computer in multiplayer games - see {{Link|Multiplayer Scripting#Locality}}.<br>
This can be used to determine on which computer some code must be run. In single player all objects are local.
 
|mp= A few things to note [[Multiplayer Scripting#General information about locality|amongst others]]:
* A game logic / module is always local to the server
* Terrain objects are local to every machine
 
|s1= [[local]] object
 
|p1= object: [[Object]] or [[Group]] (since {{GVI|arma3|1.32|size= 0.75}})
 
|r1= [[Boolean]]
 
|s2= [[local]] variable = value <span style="margin-left: 7em">'''{{Color|red|From {{arma2}} v1.00 until {{arma3}} v1.54}}''' - see '''[[private]]''' for later versions</span>
 
|s2since= arma2 1.00
 
|r2= [[Nothing]]
 
|x1= <sqf>
if (not local _unit) then
{
hint format ["%1 is remote", name _unit];
};
</sqf>


<h3 style="display:none">Notes</h3>
|x2= <sqf>_isLocalGroup = local group _unit;</sqf>
<dl class="command_description">
<!-- Note Section BEGIN -->


<!-- Note Section END -->
|x3= Sets variable's [[Variables#Scopes|scope]]:
</dl>
<sqf>
// from Arma 2 v1.00 until Arma 3v1.54
local _myVariable = 42;


<h3 style="display:none">Bottom Section</h3>
// since {{arma3}} v1.54
Old Notes (temporary):
private _myVariable = 42;
</sqf>


In multiplayer, a game logic will always be local to the host computer. This works on both dedicated and player-hosted servers.
|seealso= [[Arma 3: Event Handlers#Local|"Local" Event Handler]] [[owner]] [[setOwner]]
[[Category:Scripting Commands|LOCAL]]
}}
[[Category:Scripting Commands OFP 1.96|LOCAL]]
[[Category:Scripting Commands OFP 1.46|LOCAL]]
[[Category:Scripting Commands ArmA|LOCAL]]

Latest revision as of 19:02, 18 November 2023

Hover & click on the images for description

Description

Description:
Check if given unit is local on the computer in multiplayer games - see Multiplayer Scripting - Locality.
This can be used to determine on which computer some code must be run. In single player all objects are local.
Multiplayer:
A few things to note amongst others:
  • A game logic / module is always local to the server
  • Terrain objects are local to every machine
Groups:
Multiplayer

Syntax

Syntax:
local object
Parameters:
object: Object or Group (since Arma 3 logo black.png1.32)
Return Value:
Boolean

Alternative Syntax

Syntax:
local variable = value From Arma 2 v1.00 until Arma 3 v1.54 - see private for later versions
Return Value:
Nothing

Examples

Example 1:
if (not local _unit) then { hint format ["%1 is remote", name _unit]; };
Example 2:
_isLocalGroup = local group _unit;
Example 3:
Sets variable's scope:
// from Arma 2 v1.00 until Arma 3v1.54 local _myVariable = 42; // since Arma 3 v1.54 private _myVariable = 42;

Additional Information

See also:
"Local" Event Handler owner setOwner

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