<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.rage.mp/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Flow</id>
	<title>RAGE Multiplayer Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.rage.mp/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Flow"/>
	<link rel="alternate" type="text/html" href="https://wiki.rage.mp/wiki/Special:Contributions/Flow"/>
	<updated>2026-07-19T00:00:40Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Browser::url&amp;diff=16723</id>
		<title>Browser::url</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Browser::url&amp;diff=16723"/>
		<updated>2019-01-04T18:04:20Z</updated>

		<summary type="html">&lt;p&gt;Flow: getter added&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Function&#039;&#039;&#039;: Set or get the url of a browser&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
* &#039;&#039;&#039;URL&#039;&#039;&#039;: {{RageType|String}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
browser.url;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
Setter:&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
let browser = mp.browsers.new(&amp;quot;package://index.html&amp;quot;);&lt;br /&gt;
browser.url = &amp;quot;package://home.html&amp;quot;;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
Getter:&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
let url = browser.url;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
See [[Package Protocol]] for more info on the &amp;lt;code&amp;gt;package://&amp;lt;/code&amp;gt; url.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Browser_definition_c}}&lt;br /&gt;
[[Category:Clientside API]]&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=PlayerCreateWaypoint&amp;diff=16717</id>
		<title>PlayerCreateWaypoint</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=PlayerCreateWaypoint&amp;diff=16717"/>
		<updated>2018-12-31T12:37:03Z</updated>

		<summary type="html">&lt;p&gt;Flow: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;DOES NOT SEEM TO WORK IN CURRENT 0.3.7 VERSION&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Event triggered when a player creates a waypoint&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
* &#039;&#039;&#039;player&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;position&#039;&#039;&#039;, Vector3 position of the waypoint&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
mp.events.add(&amp;quot;playerCreateWaypoint&amp;quot;, (player, position) =&amp;gt; {&lt;br /&gt;
 // Do what you want.&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Object::slide&amp;diff=16702</id>
		<title>Object::slide</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Object::slide&amp;diff=16702"/>
		<updated>2018-12-21T22:48:10Z</updated>

		<summary type="html">&lt;p&gt;Flow: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Returns true if the object has finished moving. If false, moves the object towards the specified X, Y and Z coordinates with the specified X, Y and Z speed.&amp;lt;br&amp;gt;See also: gtag.gtagaming.com/opcode-database/opcode/034E/&amp;lt;br&amp;gt;&#039;&#039;&#039;Has to be called in a render or it will not slide but move some amount and stop.&#039;&#039;&#039;&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;object.slide(toX, toY, toZ, speedX, speedY, speedZ, collision);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Required Arguments ===&lt;br /&gt;
*&#039;&#039;&#039;toX:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;toY:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;toZ:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedX:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedY:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedZ:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;collision:&#039;&#039;&#039; Boolean&lt;br /&gt;
===Return value===&lt;br /&gt;
*&#039;&#039;&#039;Boolean&#039;&#039;&#039;&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
mp.events.add(&#039;render&#039;, () =&amp;gt; {&lt;br /&gt;
  object.slide(position.x, position.y, position.z, 1.0, 1.0, 1.0, false);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==See also==&lt;br /&gt;
{{Object_function_c}}&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
[[Category:TODO: Example]]&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Object::slide&amp;diff=16701</id>
		<title>Object::slide</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Object::slide&amp;diff=16701"/>
		<updated>2018-12-21T22:47:53Z</updated>

		<summary type="html">&lt;p&gt;Flow: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Returns true if the object has finished moving. If false, moves the object towards the specified X, Y and Z coordinates with the specified X, Y and Z speed.&amp;lt;br&amp;gt;See also: gtag.gtagaming.com/opcode-database/opcode/034E/&amp;lt;br&amp;gt;&#039;&#039;&#039;Has to be called in a render or it will not slide but move some amount up and stop.&#039;&#039;&#039;&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;object.slide(toX, toY, toZ, speedX, speedY, speedZ, collision);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Required Arguments ===&lt;br /&gt;
*&#039;&#039;&#039;toX:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;toY:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;toZ:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedX:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedY:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedZ:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;collision:&#039;&#039;&#039; Boolean&lt;br /&gt;
===Return value===&lt;br /&gt;
*&#039;&#039;&#039;Boolean&#039;&#039;&#039;&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
mp.events.add(&#039;render&#039;, () =&amp;gt; {&lt;br /&gt;
  object.slide(position.x, position.y, position.z, 1.0, 1.0, 1.0, false);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==See also==&lt;br /&gt;
{{Object_function_c}}&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
[[Category:TODO: Example]]&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Object::slide&amp;diff=16700</id>
		<title>Object::slide</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Object::slide&amp;diff=16700"/>
		<updated>2018-12-21T22:46:59Z</updated>

		<summary type="html">&lt;p&gt;Flow: has to be in render&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Returns true if the object has finished moving. If false, moves the object towards the specified X, Y and Z coordinates with the specified X, Y and Z speed.&amp;lt;br&amp;gt;See also: gtag.gtagaming.com/opcode-database/opcode/034E/&amp;lt;br&amp;gt;***Has to be called in a render or it will not slide but move some amount up and stop.***&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;object.slide(toX, toY, toZ, speedX, speedY, speedZ, collision);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Required Arguments ===&lt;br /&gt;
*&#039;&#039;&#039;toX:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;toY:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;toZ:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedX:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedY:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;speedZ:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;collision:&#039;&#039;&#039; Boolean&lt;br /&gt;
===Return value===&lt;br /&gt;
*&#039;&#039;&#039;Boolean&#039;&#039;&#039;&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
mp.events.add(&#039;render&#039;, () =&amp;gt; {&lt;br /&gt;
  object.slide(position.x, position.y, position.z, 1.0, 1.0, 1.0, false);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==See also==&lt;br /&gt;
{{Object_function_c}}&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
[[Category:TODO: Example]]&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Object::getClosestObjectOfType&amp;diff=16699</id>
		<title>Object::getClosestObjectOfType</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Object::getClosestObjectOfType&amp;diff=16699"/>
		<updated>2018-12-21T22:41:42Z</updated>

		<summary type="html">&lt;p&gt;Flow: returns object handle not object&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Has 8 params in the latest patches.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;isMission - if true doesn&#039;t return mission objects&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;mp.game.object.getClosestObjectOfType(x, y, z, radius, modelHash, isMission, p6, p7);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Required Arguments ===&lt;br /&gt;
*&#039;&#039;&#039;x:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;y:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;z:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;radius:&#039;&#039;&#039; float&lt;br /&gt;
*&#039;&#039;&#039;modelHash:&#039;&#039;&#039; Model hash or name&lt;br /&gt;
*&#039;&#039;&#039;isMission:&#039;&#039;&#039; Boolean&lt;br /&gt;
*&#039;&#039;&#039;p6:&#039;&#039;&#039; Boolean&lt;br /&gt;
*&#039;&#039;&#039;p7:&#039;&#039;&#039; Boolean&lt;br /&gt;
===Return value===&lt;br /&gt;
*&#039;&#039;&#039;Object handle&#039;&#039;&#039;&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// todo&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==See also==&lt;br /&gt;
{{Object_s_function_c}}&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
[[Category:TODO: Example]]&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Useful_clientside_snippets&amp;diff=16686</id>
		<title>Useful clientside snippets</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Useful_clientside_snippets&amp;diff=16686"/>
		<updated>2018-12-21T09:51:01Z</updated>

		<summary type="html">&lt;p&gt;Flow: added: disable health regenreation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Let&#039;s build a list with usesfull code snippets here.Remember: All of those are:&lt;br /&gt;
{{ClientSide}}&amp;lt;br&amp;gt;&lt;br /&gt;
==Get closest vehicle to your player==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
exports.closestVehicle= closestVehicle;&lt;br /&gt;
function closestVehicle(radius) {&lt;br /&gt;
   let inRange = [];&lt;br /&gt;
   let target = false;&lt;br /&gt;
   mp.vehicles.forEach((_veh) =&amp;gt; {&lt;br /&gt;
      if(!_veh.handle) return false;&lt;br /&gt;
      let distance = mp.game.gameplay.getDistanceBetweenCoords(_veh.position.x, _veh.position.y, _veh.position.z, mp.players.local.position.x, mp.players.local.position.y, mp.players.local.position.z, true);&lt;br /&gt;
      if(distance &amp;gt; parseFloat(radius)) return false;&lt;br /&gt;
      inRange.push({&amp;quot;remoteId&amp;quot;: _veh.remoteId, &amp;quot;distance&amp;quot;: distance});&lt;br /&gt;
   });&lt;br /&gt;
   if(inRange.length) {&lt;br /&gt;
      inRange.sort(function(a, b) {&lt;br /&gt;
      return a.distance-b.distance&lt;br /&gt;
   });&lt;br /&gt;
   target = mp.vehicles.atRemoteId(inRange[0].remoteId);&lt;br /&gt;
   }&lt;br /&gt;
   return target;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==Return closest player to your local player position==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
exports.closestPlayer = closestPlayer;&lt;br /&gt;
function closestPlayer(radius) {&lt;br /&gt;
   let inRange = [];&lt;br /&gt;
   let target = false;&lt;br /&gt;
   mp.players.forEach((_player) =&amp;gt; {&lt;br /&gt;
      if(_player == player) return false;&lt;br /&gt;
      if(!_player.handle) return false;&lt;br /&gt;
      let distance = mp.game.gameplay.getDistanceBetweenCoords(_player.position.x, _player.position.y, _player.position.z, mp.players.local.position.x, mp.players.local.position.y, mp.players.local.position.z, true);&lt;br /&gt;
      if(distance &amp;gt; parseFloat(radius)) return false;&lt;br /&gt;
      inRange.push({&amp;quot;remoteId&amp;quot;: _player.remoteId, &amp;quot;distance&amp;quot;: distance});&lt;br /&gt;
   });&lt;br /&gt;
   if(inRange.length) {&lt;br /&gt;
   inRange.sort(function(a, b) {&lt;br /&gt;
      return a.distance-b.distance&lt;br /&gt;
   });&lt;br /&gt;
   target = mp.players.atRemoteId(inRange[0].remoteId);&lt;br /&gt;
}&lt;br /&gt;
   return target;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
== Check if player is driver==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if (mp.players.local.vehicle &amp;amp;&amp;amp; mp.players.local.vehicle.getPedInSeat(-1) === mp.players.local.handle) {&lt;br /&gt;
// player is in vehicle and is driver&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
== Disable health regeneration==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.events.add(&#039;render&#039;, () =&amp;gt; {&lt;br /&gt;
  mp.game.player.setHealthRechargeMultiplier(0.0);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
__FORCETOC__&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Useful_clientside_snippets&amp;diff=16685</id>
		<title>Useful clientside snippets</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Useful_clientside_snippets&amp;diff=16685"/>
		<updated>2018-12-21T07:18:11Z</updated>

		<summary type="html">&lt;p&gt;Flow: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Let&#039;s build a list with usesfull code snippets here.&lt;br /&gt;
&lt;br /&gt;
==Get closest vehicle to your player==&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
exports.closestVehicle= closestVehicle;&lt;br /&gt;
function closestVehicle(radius) {&lt;br /&gt;
   let inRange = [];&lt;br /&gt;
   let target = false;&lt;br /&gt;
   mp.vehicles.forEach((_veh) =&amp;gt; {&lt;br /&gt;
      if(!_veh.handle) return false;&lt;br /&gt;
      let distance = mp.game.gameplay.getDistanceBetweenCoords(_veh.position.x, _veh.position.y, _veh.position.z, mp.players.local.position.x, mp.players.local.position.y, mp.players.local.position.z, true);&lt;br /&gt;
      if(distance &amp;gt; parseFloat(radius)) return false;&lt;br /&gt;
      inRange.push({&amp;quot;remoteId&amp;quot;: _veh.remoteId, &amp;quot;distance&amp;quot;: distance});&lt;br /&gt;
   });&lt;br /&gt;
   if(inRange.length) {&lt;br /&gt;
      inRange.sort(function(a, b) {&lt;br /&gt;
      return a.distance-b.distance&lt;br /&gt;
   });&lt;br /&gt;
   target = mp.vehicles.atRemoteId(inRange[0].remoteId);&lt;br /&gt;
   }&lt;br /&gt;
   return target;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==Return closest player to your local player position==&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
exports.closestPlayer = closestPlayer;&lt;br /&gt;
function closestPlayer(radius) {&lt;br /&gt;
   let inRange = [];&lt;br /&gt;
   let target = false;&lt;br /&gt;
   mp.players.forEach((_player) =&amp;gt; {&lt;br /&gt;
      if(_player == player) return false;&lt;br /&gt;
      if(!_player.handle) return false;&lt;br /&gt;
      let distance = mp.game.gameplay.getDistanceBetweenCoords(_player.position.x, _player.position.y, _player.position.z, mp.players.local.position.x, mp.players.local.position.y, mp.players.local.position.z, true);&lt;br /&gt;
      if(distance &amp;gt; parseFloat(radius)) return false;&lt;br /&gt;
      inRange.push({&amp;quot;remoteId&amp;quot;: _player.remoteId, &amp;quot;distance&amp;quot;: distance});&lt;br /&gt;
   });&lt;br /&gt;
   if(inRange.length) {&lt;br /&gt;
   inRange.sort(function(a, b) {&lt;br /&gt;
      return a.distance-b.distance&lt;br /&gt;
   });&lt;br /&gt;
   target = mp.players.atRemoteId(inRange[0].remoteId);&lt;br /&gt;
}&lt;br /&gt;
   return target;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
== Check if player is driver==&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if (mp.players.local.vehicle &amp;amp;&amp;amp; mp.players.local.vehicle.getPedInSeat(-1) === mp.players.local.handle) {&lt;br /&gt;
// player is in vehicle and is driver&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
__FORCETOC__&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Useful_clientside_snippets&amp;diff=16684</id>
		<title>Useful clientside snippets</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Useful_clientside_snippets&amp;diff=16684"/>
		<updated>2018-12-21T07:16:58Z</updated>

		<summary type="html">&lt;p&gt;Flow: first commit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Let&#039;s build a list with usesfull code snippets here.&lt;br /&gt;
&lt;br /&gt;
==Get closest vehicle to your player==&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
exports.closestVehicle= closestVehicle;&lt;br /&gt;
function closestVehicle(radius) {&lt;br /&gt;
   let inRange = [];&lt;br /&gt;
   let target = false;&lt;br /&gt;
   mp.vehicles.forEach((_veh) =&amp;gt; {&lt;br /&gt;
      if(!_veh.handle) return false;&lt;br /&gt;
      let distance = mp.game.gameplay.getDistanceBetweenCoords(_veh.position.x, _veh.position.y, _veh.position.z, mp.players.local.position.x, mp.players.local.position.y, mp.players.local.position.z, true);&lt;br /&gt;
      if(distance &amp;gt; parseFloat(radius)) return false;&lt;br /&gt;
      inRange.push({&amp;quot;remoteId&amp;quot;: _veh.remoteId, &amp;quot;distance&amp;quot;: distance});&lt;br /&gt;
   });&lt;br /&gt;
   if(inRange.length) {&lt;br /&gt;
      inRange.sort(function(a, b) {&lt;br /&gt;
      return a.distance-b.distance&lt;br /&gt;
   });&lt;br /&gt;
   target = mp.vehicles.atRemoteId(inRange[0].remoteId);&lt;br /&gt;
   }&lt;br /&gt;
   return target;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==Return closest player to your local player position==&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
exports.closestPlayer = closestPlayer;&lt;br /&gt;
function closestPlayer(radius) {&lt;br /&gt;
   let inRange = [];&lt;br /&gt;
   let target = false;&lt;br /&gt;
   mp.players.forEach((_player) =&amp;gt; {&lt;br /&gt;
      if(_player == player) return false;&lt;br /&gt;
      if(!_player.handle) return false;&lt;br /&gt;
      let distance = mp.game.gameplay.getDistanceBetweenCoords(_player.position.x, _player.position.y, _player.position.z, mp.players.local.position.x, mp.players.local.position.y, mp.players.local.position.z, true);&lt;br /&gt;
      if(distance &amp;gt; parseFloat(radius)) return false;&lt;br /&gt;
      inRange.push({&amp;quot;remoteId&amp;quot;: _player.remoteId, &amp;quot;distance&amp;quot;: distance});&lt;br /&gt;
   });&lt;br /&gt;
   if(inRange.length) {&lt;br /&gt;
   inRange.sort(function(a, b) {&lt;br /&gt;
      return a.distance-b.distance&lt;br /&gt;
   });&lt;br /&gt;
   target = mp.players.atRemoteId(inRange[0].remoteId);&lt;br /&gt;
}&lt;br /&gt;
   return target;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
== Check if player is driver==&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
if (mp.players.local.vehicle &amp;amp;&amp;amp; mp.players.local.vehicle.getPedInSeat(-1) === mp.players.local.handle) {&lt;br /&gt;
// player is in vehicle and is driver&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Category:Clientside API]]&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Vehicle::Vehicle&amp;diff=16683</id>
		<title>Vehicle::Vehicle</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Vehicle::Vehicle&amp;diff=16683"/>
		<updated>2018-12-21T06:58:26Z</updated>

		<summary type="html">&lt;p&gt;Flow: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{sharedFunctionJS}}&lt;br /&gt;
&lt;br /&gt;
Creates a vehicle.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Notes:&#039;&#039;&#039; Colors don&#039;t always work as expected if you use them inside the function. Also plate won&#039;t work propperly. Better set those after vehicle is created. &lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.vehicles.new(model, position,&lt;br /&gt;
{&lt;br /&gt;
    heading: heading,&lt;br /&gt;
    numberPlate: numberPlate,&lt;br /&gt;
    alpha: alpha,&lt;br /&gt;
    color: color,&lt;br /&gt;
    locked: locked,&lt;br /&gt;
    engine: engine,&lt;br /&gt;
    dimension: dimension&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
*&#039;&#039;&#039;model&#039;&#039;&#039;: {{RageType|Hash}} (use [[Globals::joaat|mp.joaat]]) or {{RageType|String}}&lt;br /&gt;
*&#039;&#039;&#039;position&#039;&#039;&#039;: {{RageType|Vector3}}&lt;br /&gt;
*&#039;&#039;&#039;heading&#039;&#039;&#039;: {{RageType|Number}} [-180:180]&lt;br /&gt;
*&#039;&#039;&#039;numberPlate&#039;&#039;&#039;: {{RageType|String}}&lt;br /&gt;
*&#039;&#039;&#039;alpha&#039;&#039;&#039;: {{RageType|Number}}&lt;br /&gt;
*&#039;&#039;&#039;color&#039;&#039;&#039;: {{RageType|[[Number, Number, Number], [Number, Number, Number]]}}&lt;br /&gt;
*&#039;&#039;&#039;locked&#039;&#039;&#039;: {{RageType|Boolean}}&lt;br /&gt;
*&#039;&#039;&#039;engine&#039;&#039;&#039;: {{RageType|Boolean}}&lt;br /&gt;
*&#039;&#039;&#039;dimension&#039;&#039;&#039;: {{RageType|Number}}&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
An example of creating a red Turismo with the license plate ADMIN&lt;br /&gt;
&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.vehicles.new(mp.game.joaat(&amp;quot;turismor&amp;quot;), new mp.Vector3(-421.88, 1136.86, 326),&lt;br /&gt;
    {&lt;br /&gt;
        numberPlate: &amp;quot;ADMIN&amp;quot;,&lt;br /&gt;
        color: [[255, 0, 0],[255,0,0]]&lt;br /&gt;
    });&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Same example but creating a blue Turismo and using it server-side&lt;br /&gt;
{{ServersideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.vehicles.new(mp.joaat(&amp;quot;turismor&amp;quot;), new mp.Vector3(-441.88, 1156.86, 326),&lt;br /&gt;
    {&lt;br /&gt;
        numberPlate: &amp;quot;ADMIN&amp;quot;,&lt;br /&gt;
        color: [[0, 255, 0],[0, 255, 0]]&lt;br /&gt;
    });&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Vehicle::Vehicle&amp;diff=16682</id>
		<title>Vehicle::Vehicle</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Vehicle::Vehicle&amp;diff=16682"/>
		<updated>2018-12-21T06:56:52Z</updated>

		<summary type="html">&lt;p&gt;Flow: Hint for plate and color&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{sharedFunctionJS}}&lt;br /&gt;
&lt;br /&gt;
Creates a vehicle.&lt;br /&gt;
&#039;&#039;&#039;Notes:&#039;&#039;&#039; Colors don&#039;t always work as expected if you use them inside the function. Also plate won&#039;t work propperly. Better set those after vehicle is created. &lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.vehicles.new(model, position,&lt;br /&gt;
{&lt;br /&gt;
    heading: heading,&lt;br /&gt;
    numberPlate: numberPlate,&lt;br /&gt;
    alpha: alpha,&lt;br /&gt;
    color: color,&lt;br /&gt;
    locked: locked,&lt;br /&gt;
    engine: engine,&lt;br /&gt;
    dimension: dimension&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
*&#039;&#039;&#039;model&#039;&#039;&#039;: {{RageType|Hash}} (use [[Globals::joaat|mp.joaat]]) or {{RageType|String}}&lt;br /&gt;
*&#039;&#039;&#039;position&#039;&#039;&#039;: {{RageType|Vector3}}&lt;br /&gt;
*&#039;&#039;&#039;heading&#039;&#039;&#039;: {{RageType|Number}} [-180:180]&lt;br /&gt;
*&#039;&#039;&#039;numberPlate&#039;&#039;&#039;: {{RageType|String}}&lt;br /&gt;
*&#039;&#039;&#039;alpha&#039;&#039;&#039;: {{RageType|Number}}&lt;br /&gt;
*&#039;&#039;&#039;color&#039;&#039;&#039;: {{RageType|[[Number, Number, Number], [Number, Number, Number]]}}&lt;br /&gt;
*&#039;&#039;&#039;locked&#039;&#039;&#039;: {{RageType|Boolean}}&lt;br /&gt;
*&#039;&#039;&#039;engine&#039;&#039;&#039;: {{RageType|Boolean}}&lt;br /&gt;
*&#039;&#039;&#039;dimension&#039;&#039;&#039;: {{RageType|Number}}&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
An example of creating a red Turismo with the license plate ADMIN&lt;br /&gt;
&lt;br /&gt;
{{ClientsideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.vehicles.new(mp.game.joaat(&amp;quot;turismor&amp;quot;), new mp.Vector3(-421.88, 1136.86, 326),&lt;br /&gt;
    {&lt;br /&gt;
        numberPlate: &amp;quot;ADMIN&amp;quot;,&lt;br /&gt;
        color: [[255, 0, 0],[255,0,0]]&lt;br /&gt;
    });&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Same example but creating a blue Turismo and using it server-side&lt;br /&gt;
{{ServersideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mp.vehicles.new(mp.joaat(&amp;quot;turismor&amp;quot;), new mp.Vector3(-441.88, 1156.86, 326),&lt;br /&gt;
    {&lt;br /&gt;
        numberPlate: &amp;quot;ADMIN&amp;quot;,&lt;br /&gt;
        color: [[0, 255, 0],[0, 255, 0]]&lt;br /&gt;
    });&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Entity::setVariable&amp;diff=16681</id>
		<title>Entity::setVariable</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Entity::setVariable&amp;diff=16681"/>
		<updated>2018-12-21T06:52:26Z</updated>

		<summary type="html">&lt;p&gt;Flow: mass setting not working - clarified&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
Set custom data to an entity.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// To set one variable at a time&lt;br /&gt;
entity.setVariable(name, value);&lt;br /&gt;
&lt;br /&gt;
// To set multiple variables at a time.&lt;br /&gt;
entity.setVariable({name1: value1, name2: value2});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This binds the vehicle to the player&lt;br /&gt;
{{ServersideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
let veh = mp.vehicles.new(vehName, player.position);&lt;br /&gt;
player.setVariable(&#039;veh&#039;, veh);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
This is an example of setting multiple variables to a player which is &#039;&#039;&#039;not implemented and does not work (yet)&#039;&#039;&#039;&lt;br /&gt;
{{ServersideCode|&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
player.setVariable({&lt;br /&gt;
  name: &#039;Player&#039;,&lt;br /&gt;
  age: 20&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== See More ==&lt;br /&gt;
{{Entity_functions}}&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Entity::data&amp;diff=16680</id>
		<title>Entity::data</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Entity::data&amp;diff=16680"/>
		<updated>2018-12-21T06:51:30Z</updated>

		<summary type="html">&lt;p&gt;Flow: Clearification about setVariable and entity.data&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This property is used to get or set entity data.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;del&amp;gt;&#039;&#039;&#039;FALSE&#039;&#039;&#039;: Changing this property has the same effect as using [[Entity::setVariable|entity.setVariable]] function.&amp;lt;br&amp;gt;&amp;lt;/del&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;TRUE&#039;&#039;&#039;: if you use setVariable you have to use getVariable to get results. e.g. you can&#039;t do entity.setVariable(&#039;foo&#039;,&#039;bar&#039;) and get the result with entity.data.foo as getter. You can do so clientside, but not serverside.&lt;br /&gt;
&lt;br /&gt;
== Property Type(s) &amp;amp; Attribute(s) ==&lt;br /&gt;
* Getter - attribute should be in &#039;&#039;&#039;any&#039;&#039;&#039; format.&lt;br /&gt;
* Setter - attribute should be in &#039;&#039;&#039;any&#039;&#039;&#039; format.&lt;br /&gt;
&lt;br /&gt;
== Example(s) ==&lt;br /&gt;
{{ServerSide}}&lt;br /&gt;
&lt;br /&gt;
The code below is an example about how to set a entity data by directly manipulating its &amp;quot;data&amp;quot; attribute.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
entity.data.foo = bar;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=16670</id>
		<title>Key::bind</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=16670"/>
		<updated>2018-12-18T07:02:19Z</updated>

		<summary type="html">&lt;p&gt;Flow: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function binds the key .&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
* &#039;&#039;&#039;keycode&#039;&#039;&#039; - hexadecimal code of [https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 key].&lt;br /&gt;
* &#039;&#039;&#039;keydown/keyup&#039;&#039;&#039; - true trigges on keydown, false triggers on keyup (bool)&lt;br /&gt;
* &#039;&#039;&#039;handler&#039;&#039;&#039; - function-handler.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example calling server event.&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// 0x71 is the F2 key code&lt;br /&gt;
mp.keys.bind(0x71, true, function() {&lt;br /&gt;
    mp.events.callRemote(&#039;keypress:F2&#039;); // Calling server event &amp;quot;keypress:F2&amp;quot;&lt;br /&gt;
    mp.gui.chat.push(&#039;F2 key is pressed.&#039;);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Keys_functions_c}}&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=16669</id>
		<title>Key::bind</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=16669"/>
		<updated>2018-12-18T07:01:54Z</updated>

		<summary type="html">&lt;p&gt;Flow: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function binds the key .&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
* &#039;&#039;&#039;keycode&#039;&#039;&#039; - hexadecimal code of [https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 key].&lt;br /&gt;
* &#039;&#039;&#039;keydown/keyup&#039;&#039;&#039; - true trigges on keydown, false triggers on keyup (bool)&lt;br /&gt;
* &#039;&#039;&#039;handler&#039;&#039;&#039; - function-handler.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example calling server event.&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// 0x71 is the F2 key code&lt;br /&gt;
mp.keys.bind(0x71, true, function() {&lt;br /&gt;
    mp.events.callRemote(&#039;keypress:F2&#039;); // Calling server event &amp;quot;keypress:F2&amp;quot;&lt;br /&gt;
    mp.gui.chat.push(&#039;F2 key is pressed. This message will be shown until you release the key, because &amp;quot;keyhold&amp;quot; is true.&#039;);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Keys_functions_c}}&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=16668</id>
		<title>Key::bind</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=16668"/>
		<updated>2018-12-18T07:00:35Z</updated>

		<summary type="html">&lt;p&gt;Flow: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function binds the key .&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
* &#039;&#039;&#039;keycode&#039;&#039;&#039; - hexadecimal code of [https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 key].&lt;br /&gt;
* &#039;&#039;&#039;keydown/keyup&#039;&#039;&#039; - true trigges on key down, false triggers on key up (bool)&lt;br /&gt;
* &#039;&#039;&#039;handler&#039;&#039;&#039; - function-handler.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example calling server event.&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// 0x71 is the F2 key code&lt;br /&gt;
mp.keys.bind(0x71, true, function() {&lt;br /&gt;
    mp.events.callRemote(&#039;keypress:F2&#039;); // Calling server event &amp;quot;keypress:F2&amp;quot;&lt;br /&gt;
    mp.gui.chat.push(&#039;F2 key is pressed. This message will be shown until you release the key, because &amp;quot;keyhold&amp;quot; is true.&#039;);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Keys_functions_c}}&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=16667</id>
		<title>Key::bind</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Key::bind&amp;diff=16667"/>
		<updated>2018-12-18T07:00:24Z</updated>

		<summary type="html">&lt;p&gt;Flow: Clearified that it&amp;#039;s not keyhold but keyup and keydown&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function binds the key .&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
* &#039;&#039;&#039;keycode&#039;&#039;&#039; - hexadecimal code of [https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731 key].&lt;br /&gt;
* &#039;&#039;&#039;keydown/keyup&#039;&#039;&#039; - truetrigges on key down, false- triggers on key up (bool)&lt;br /&gt;
* &#039;&#039;&#039;handler&#039;&#039;&#039; - function-handler.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example calling server event.&lt;br /&gt;
{{ClientSide}}&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// 0x71 is the F2 key code&lt;br /&gt;
mp.keys.bind(0x71, true, function() {&lt;br /&gt;
    mp.events.callRemote(&#039;keypress:F2&#039;); // Calling server event &amp;quot;keypress:F2&amp;quot;&lt;br /&gt;
    mp.gui.chat.push(&#039;F2 key is pressed. This message will be shown until you release the key, because &amp;quot;keyhold&amp;quot; is true.&#039;);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Keys_functions_c}}&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Blip::setDisplay&amp;diff=16658</id>
		<title>Blip::setDisplay</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Blip::setDisplay&amp;diff=16658"/>
		<updated>2018-12-17T19:45:38Z</updated>

		<summary type="html">&lt;p&gt;Flow: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;displayId: 8 = shows on radar&amp;lt;br&amp;gt;displayId: 3 = Shows on Main map but not Radar (not selectable on map)&amp;lt;br&amp;gt;displayId: 2 = (Shows on Main map + Radar + selectable)&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;blip.setDisplay(p1);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Required Arguments ===&lt;br /&gt;
*&#039;&#039;&#039;p1:&#039;&#039;&#039; int&lt;br /&gt;
===Return value===&lt;br /&gt;
*&#039;&#039;&#039;Undefined&#039;&#039;&#039;&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// todo&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==See also==&lt;br /&gt;
{{Blip_s_function_c}}&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
[[Category:Blip API]]&lt;br /&gt;
[[Category:TODO: Example]]&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
	<entry>
		<id>https://wiki.rage.mp/w/index.php?title=Player::setComponentVariation&amp;diff=16657</id>
		<title>Player::setComponentVariation</title>
		<link rel="alternate" type="text/html" href="https://wiki.rage.mp/w/index.php?title=Player::setComponentVariation&amp;diff=16657"/>
		<updated>2018-12-17T18:40:47Z</updated>

		<summary type="html">&lt;p&gt;Flow: Added example and wiki link to clothes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;paletteId/palletColor -  0 to 3. &amp;lt;br&amp;gt;enum PedVariationData&amp;lt;br&amp;gt;{&amp;lt;br&amp;gt;	Player_VARIATION_FACE = 0,&amp;lt;br&amp;gt;	Player_VARIATION_HEAD = 1,&amp;lt;br&amp;gt;	Player_VARIATION_HAIR = 2,&amp;lt;br&amp;gt;	Player_VARIATION_TORSO = 3,&amp;lt;br&amp;gt;	Player_VARIATION_LEGS = 4,&amp;lt;br&amp;gt;	Player_VARIATION_HANDS = 5,&amp;lt;br&amp;gt;	Player_VARIATION_FEET = 6,&amp;lt;br&amp;gt;	Player_VARIATION_EYES = 7,&amp;lt;br&amp;gt;	Player_VARIATION_ACCESSORIES = 8,&amp;lt;br&amp;gt;	Player_VARIATION_TASKS = 9,&amp;lt;br&amp;gt;	Player_VARIATION_TEXTURES = 10,&amp;lt;br&amp;gt;	Player_VARIATION_TORSO2 = 11&amp;lt;br&amp;gt;};&amp;lt;br&amp;gt;Usage: &amp;lt;br&amp;gt;SET_Player_COMPONENT_VARIATION(playerPed, Player_VARIATION_FACE, GET_NUMBER_OF_Player_DRAWABLE_VARIATIONS(playerPed, Player_VARIATION_FACE), GET_NUMBER_OF_Player_TEXTURE_VARIATIONS(playerPed, Player_VARIATION_FACE, 0), 2);&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;List of component/props ID&amp;lt;br&amp;gt;gtaxscripting.blogspot.com/2016/04/gta-v-peds-component-and-props.html&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;See player clothes: https://wiki.rage.mp/index.php?title=Clothes&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;player.setComponentVariation(componentId, drawableId, textureId, paletteId);&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
=== Required Arguments ===&lt;br /&gt;
*&#039;&#039;&#039;componentId:&#039;&#039;&#039; int&lt;br /&gt;
*&#039;&#039;&#039;drawableId:&#039;&#039;&#039; int&lt;br /&gt;
*&#039;&#039;&#039;textureId:&#039;&#039;&#039; int&lt;br /&gt;
*&#039;&#039;&#039;paletteId:&#039;&#039;&#039; int&lt;br /&gt;
===Return value===&lt;br /&gt;
*&#039;&#039;&#039;Undefined&#039;&#039;&#039;&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// set shirt on player&lt;br /&gt;
 player.setComponentVariation(11, 4, 0, 2);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==See also==&lt;br /&gt;
{{Player_function_c}}&lt;br /&gt;
[[Category:Clientside API]]&lt;br /&gt;
[[Category:TODO: Example]]&lt;/div&gt;</summary>
		<author><name>Flow</name></author>
	</entry>
</feed>