<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Fernando187</id>
	<title>Multi Theft Auto: Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Fernando187"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/wiki/Special:Contributions/Fernando187"/>
	<updated>2026-04-17T15:54:29Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Shared_Scripting_Functions&amp;diff=82617</id>
		<title>Shared Scripting Functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Shared_Scripting_Functions&amp;diff=82617"/>
		<updated>2025-11-12T13:31:36Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Sound functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;both&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
{{Adding_Pages_to_Categories_and_Templates}}&lt;br /&gt;
This page lists all the '''shared''' scripting functions that have been implemented and are available as native functions from the Deathmatch mod. To request a function or event, use [[Requested Functions and Events]]&lt;br /&gt;
&lt;br /&gt;
For more functions, check the [[Useful_Functions|useful functions page]].&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Element functions==&lt;br /&gt;
{{Element_functions}}&lt;br /&gt;
&lt;br /&gt;
==Ped functions==&lt;br /&gt;
{{Ped_functions}}&lt;br /&gt;
&lt;br /&gt;
==Player functions==&lt;br /&gt;
{{Player_functions}}&lt;br /&gt;
&lt;br /&gt;
==Weapon functions==&lt;br /&gt;
{{Weapon_functions}}&lt;br /&gt;
&lt;br /&gt;
==Audio functions==&lt;br /&gt;
{{Audio functions}}&lt;br /&gt;
&lt;br /&gt;
==Blip functions==&lt;br /&gt;
{{Blip_functions}}&lt;br /&gt;
&lt;br /&gt;
==Camera functions==&lt;br /&gt;
{{Shared_camera_functions}}&lt;br /&gt;
&lt;br /&gt;
==Clothes and body functions==&lt;br /&gt;
{{Clothes_and_body_functions}}&lt;br /&gt;
&lt;br /&gt;
==Collision shape functions==&lt;br /&gt;
{{Collision_shape_functions}}&lt;br /&gt;
&lt;br /&gt;
==Cursor functions==&lt;br /&gt;
{{Cursor_functions}}&lt;br /&gt;
&lt;br /&gt;
==Event functions==&lt;br /&gt;
{{Event_functions}}&lt;br /&gt;
&lt;br /&gt;
==Explosion functions==&lt;br /&gt;
{{Explosion_functions}}&lt;br /&gt;
&lt;br /&gt;
==File functions==&lt;br /&gt;
{{Shared_file_functions}}&lt;br /&gt;
&lt;br /&gt;
==Input functions==&lt;br /&gt;
{{Input_functions}}&lt;br /&gt;
&lt;br /&gt;
==Marker functions==&lt;br /&gt;
{{Marker_functions}}&lt;br /&gt;
&lt;br /&gt;
==Matrix functions==&lt;br /&gt;
{{Matrix_functions}}&lt;br /&gt;
&lt;br /&gt;
==Object functions==&lt;br /&gt;
{{Object_functions}}&lt;br /&gt;
&lt;br /&gt;
==Output functions==&lt;br /&gt;
{{Output_functions}}&lt;br /&gt;
&lt;br /&gt;
==Path functions==&lt;br /&gt;
{{Shared_path_functions}}&lt;br /&gt;
&lt;br /&gt;
==Pickup functions==&lt;br /&gt;
{{Pickup_functions}}&lt;br /&gt;
&lt;br /&gt;
==Projectile functions==&lt;br /&gt;
{{Projectile_functions}}&lt;br /&gt;
&lt;br /&gt;
==Radar area functions==&lt;br /&gt;
{{Radar_area_functions}}&lt;br /&gt;
&lt;br /&gt;
==Resource functions==&lt;br /&gt;
{{Resource_functions}}&lt;br /&gt;
&lt;br /&gt;
==Team functions==&lt;br /&gt;
{{Team_functions}}&lt;br /&gt;
&lt;br /&gt;
==Utility functions==&lt;br /&gt;
{{Utility_functions}}&lt;br /&gt;
&lt;br /&gt;
==UTF8 Library==&lt;br /&gt;
{{UTF8_functions}}&lt;br /&gt;
&lt;br /&gt;
==Vehicle functions==&lt;br /&gt;
{{Vehicle_functions}}&lt;br /&gt;
&lt;br /&gt;
==Water functions==&lt;br /&gt;
{{Water_functions}}&lt;br /&gt;
&lt;br /&gt;
==World functions==&lt;br /&gt;
{{World_functions}}&lt;br /&gt;
&lt;br /&gt;
==XML functions==&lt;br /&gt;
{{XML functions}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[pl:Shared Scripting Functions]]&lt;br /&gt;
[[ru:Shared Scripting Functions]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Audio_functions&amp;diff=82616</id>
		<title>Template:Audio functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Audio_functions&amp;diff=82616"/>
		<updated>2025-11-12T13:23:53Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Undo revision 82615 by Fernando187 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRadioChannel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRadioChannelName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSFXStatus]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundBPM]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundBufferLength]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundEffectParameters]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundEffects]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundFFTData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundLength]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundLevelData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundMaxDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundMetaTags]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundMinDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundPan]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundProperties]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundVolume]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundWaveData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isSoundLooped]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isSoundPanningEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isSoundPaused]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playSFX3D]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playSFX]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playSound3D]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playSound]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setRadioChannel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundEffectEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundEffectParameter]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundLooped]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundMaxDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundMinDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundPan]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundPanningEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundPaused]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundProperties]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundVolume]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[stopSound]]&amp;lt;/li&amp;gt;&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[playSoundFrontEnd]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Audio_functions&amp;diff=82615</id>
		<title>Template:Audio functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Audio_functions&amp;diff=82615"/>
		<updated>2025-11-12T13:22:41Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRadioChannel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRadioChannelName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSFXStatus]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundBPM]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundBufferLength]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundEffectParameters]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundEffects]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundFFTData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundLength]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundLevelData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundMaxDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundMetaTags]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundMinDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundPan]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundProperties]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundVolume]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getSoundWaveData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isSoundLooped]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isSoundPanningEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isSoundPaused]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playSFX3D]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playSFX]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playSound3D]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playSound]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setRadioChannel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundEffectEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundEffectParameter]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundLooped]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundMaxDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundMinDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundPan]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundPanningEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundPaused]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundProperties]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setSoundVolume]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[stopSound]]&amp;lt;/li&amp;gt;&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Shared_Scripting_Functions&amp;diff=82614</id>
		<title>Shared Scripting Functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Shared_Scripting_Functions&amp;diff=82614"/>
		<updated>2025-11-12T13:20:04Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Radar functions */  FIX&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;both&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
{{Adding_Pages_to_Categories_and_Templates}}&lt;br /&gt;
This page lists all the '''shared''' scripting functions that have been implemented and are available as native functions from the Deathmatch mod. To request a function or event, use [[Requested Functions and Events]]&lt;br /&gt;
&lt;br /&gt;
For more functions, check the [[Useful_Functions|useful functions page]].&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Element functions==&lt;br /&gt;
{{Element_functions}}&lt;br /&gt;
&lt;br /&gt;
==Ped functions==&lt;br /&gt;
{{Ped_functions}}&lt;br /&gt;
&lt;br /&gt;
==Player functions==&lt;br /&gt;
{{Player_functions}}&lt;br /&gt;
&lt;br /&gt;
==Weapon functions==&lt;br /&gt;
{{Weapon_functions}}&lt;br /&gt;
&lt;br /&gt;
==Sound functions==&lt;br /&gt;
{{Audio functions}}&lt;br /&gt;
&lt;br /&gt;
==Blip functions==&lt;br /&gt;
{{Blip_functions}}&lt;br /&gt;
&lt;br /&gt;
==Camera functions==&lt;br /&gt;
{{Shared_camera_functions}}&lt;br /&gt;
&lt;br /&gt;
==Clothes and body functions==&lt;br /&gt;
{{Clothes_and_body_functions}}&lt;br /&gt;
&lt;br /&gt;
==Collision shape functions==&lt;br /&gt;
{{Collision_shape_functions}}&lt;br /&gt;
&lt;br /&gt;
==Cursor functions==&lt;br /&gt;
{{Cursor_functions}}&lt;br /&gt;
&lt;br /&gt;
==Event functions==&lt;br /&gt;
{{Event_functions}}&lt;br /&gt;
&lt;br /&gt;
==Explosion functions==&lt;br /&gt;
{{Explosion_functions}}&lt;br /&gt;
&lt;br /&gt;
==File functions==&lt;br /&gt;
{{Shared_file_functions}}&lt;br /&gt;
&lt;br /&gt;
==Input functions==&lt;br /&gt;
{{Input_functions}}&lt;br /&gt;
&lt;br /&gt;
==Marker functions==&lt;br /&gt;
{{Marker_functions}}&lt;br /&gt;
&lt;br /&gt;
==Matrix functions==&lt;br /&gt;
{{Matrix_functions}}&lt;br /&gt;
&lt;br /&gt;
==Object functions==&lt;br /&gt;
{{Object_functions}}&lt;br /&gt;
&lt;br /&gt;
==Output functions==&lt;br /&gt;
{{Output_functions}}&lt;br /&gt;
&lt;br /&gt;
==Path functions==&lt;br /&gt;
{{Shared_path_functions}}&lt;br /&gt;
&lt;br /&gt;
==Pickup functions==&lt;br /&gt;
{{Pickup_functions}}&lt;br /&gt;
&lt;br /&gt;
==Projectile functions==&lt;br /&gt;
{{Projectile_functions}}&lt;br /&gt;
&lt;br /&gt;
==Radar area functions==&lt;br /&gt;
{{Radar_area_functions}}&lt;br /&gt;
&lt;br /&gt;
==Resource functions==&lt;br /&gt;
{{Resource_functions}}&lt;br /&gt;
&lt;br /&gt;
==Team functions==&lt;br /&gt;
{{Team_functions}}&lt;br /&gt;
&lt;br /&gt;
==Utility functions==&lt;br /&gt;
{{Utility_functions}}&lt;br /&gt;
&lt;br /&gt;
==UTF8 Library==&lt;br /&gt;
{{UTF8_functions}}&lt;br /&gt;
&lt;br /&gt;
==Vehicle functions==&lt;br /&gt;
{{Vehicle_functions}}&lt;br /&gt;
&lt;br /&gt;
==Water functions==&lt;br /&gt;
{{Water_functions}}&lt;br /&gt;
&lt;br /&gt;
==World functions==&lt;br /&gt;
{{World_functions}}&lt;br /&gt;
&lt;br /&gt;
==XML functions==&lt;br /&gt;
{{XML functions}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[pl:Shared Scripting Functions]]&lt;br /&gt;
[[ru:Shared Scripting Functions]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Radar_functions&amp;diff=82613</id>
		<title>Template:Radar functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Radar_functions&amp;diff=82613"/>
		<updated>2025-11-12T13:19:16Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix duplicate template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Radar area_functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82612</id>
		<title>Template:Player functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82612"/>
		<updated>2025-11-12T12:45:20Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Undo revision 82611 by Fernando187 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getLocalPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapOpacity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMapVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerCrosshairVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22751}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getAlivePlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getDeadPlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIdleTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIP]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerVersion]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRandomPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[redirectPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerACInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerModInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceBroadcastTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceIgnoreFrom]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[spawnPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[takePlayerScreenShot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerSerial]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[forcePlayerMap]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerFromName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerPing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[givePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerMapForced]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[takePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[countPlayersInTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayersInTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVoiceEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82611</id>
		<title>Template:Player functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82611"/>
		<updated>2025-11-12T12:45:09Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getLocalPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapOpacity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMapVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerCrosshairVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22751}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getAlivePlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getDeadPlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIdleTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIP]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerVersion]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRandomPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[redirectPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerACInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerModInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceBroadcastTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceIgnoreFrom]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[spawnPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[takePlayerScreenShot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerSerial]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[forcePlayerMap]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerFromName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerPing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[givePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerMapForced]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[takePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayersInTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVoiceEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=CountPlayersInTeam&amp;diff=82610</id>
		<title>CountPlayersInTeam</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=CountPlayersInTeam&amp;diff=82610"/>
		<updated>2025-11-12T12:44:48Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Undo revision 82609 by Fernando187 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server client function}}&lt;br /&gt;
This function is for returning the number of players in the specified team.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
int countPlayersInTeam ( team theTeam )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
{{OOP||[[team]]:countPlayers|playerCount|}}&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
*'''theTeam:''' The team you wish to retrieve the player count of.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns an integer containing the number of players in the team, ''false'' if it could not be retrieved.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 1&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt; &lt;br /&gt;
This example adds a command in the console to find out how many players are on your team.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function outputTeamSize ( source, commandName )&lt;br /&gt;
	-- Get player's team&lt;br /&gt;
	local theTeam = getPlayerTeam ( source )&lt;br /&gt;
	-- If the player is in any team&lt;br /&gt;
	if theTeam then&lt;br /&gt;
		-- Tell the player how big his team is&lt;br /&gt;
		outputChatBox ( &amp;quot;Your team has &amp;quot; .. countPlayersInTeam ( theTeam ) .. &amp;quot; players.&amp;quot;, source )&lt;br /&gt;
	else&lt;br /&gt;
		outputChatBox ( &amp;quot;You're not in a team.&amp;quot;, source )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;teamsize&amp;quot;, outputTeamSize )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 2&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt; &lt;br /&gt;
This example adds a command in the console to find out how many players are on your team, clientside&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function outputTeamSize ( commandName )&lt;br /&gt;
	-- Get player's team&lt;br /&gt;
	local theTeam = getPlayerTeam ( getLocalPlayer() )&lt;br /&gt;
	-- If the player is in any team&lt;br /&gt;
	if team then&lt;br /&gt;
		-- Tell the player how big his team is&lt;br /&gt;
		outputChatBox ( &amp;quot;Your team has &amp;quot; .. countPlayersInTeam ( theTeam ) .. &amp;quot; players.&amp;quot; )&lt;br /&gt;
	else&lt;br /&gt;
		outputChatBox ( &amp;quot;You're not in a team.&amp;quot; )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;teamsize&amp;quot;, outputTeamSize )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 3&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt; &lt;br /&gt;
This example balances a gamemode, to ensure equal number of players between the &amp;quot;grove&amp;quot; and &amp;quot;ballas&amp;quot; teams.  This could be triggered when a player joins the server, or for all players currently in the server when the gamemode starts.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function balanceTeams ( thePlayer )&lt;br /&gt;
	--get the team pointers from their names&lt;br /&gt;
	local groveTeam = getTeamFromName ( &amp;quot;grove&amp;quot; )&lt;br /&gt;
	local ballasTeam = getTeamFromName ( &amp;quot;ballas&amp;quot; )&lt;br /&gt;
	--count the number of players in each team, and store them&lt;br /&gt;
	local groveCount = countPlayersInTeam ( groveTeam )&lt;br /&gt;
	local ballasCount = countPlayersInTeam ( ballasTeam )&lt;br /&gt;
	if groveCount == ballasCount then --if the teams are equal&lt;br /&gt;
		setPlayerTeam ( thePlayer , groveTeam ) --place the player in grove&lt;br /&gt;
	elseif groveCount &amp;gt; ballasCount then --if there are more in grove&lt;br /&gt;
		setPlayerTeam ( thePlayer , ballasTeam ) --place him in ballas&lt;br /&gt;
	elseif groveCount &amp;lt; ballasCount then --if there are more in ballas&lt;br /&gt;
		setPlayerTeam ( thePlayer , groveTeam ) --place him in grove.&lt;br /&gt;
	end&lt;br /&gt;
end&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Team functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=CountPlayersInTeam&amp;diff=82609</id>
		<title>CountPlayersInTeam</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=CountPlayersInTeam&amp;diff=82609"/>
		<updated>2025-11-12T12:44:28Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* See Also */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server client function}}&lt;br /&gt;
This function is for returning the number of players in the specified team.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
int countPlayersInTeam ( team theTeam )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
{{OOP||[[team]]:countPlayers|playerCount|}}&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
*'''theTeam:''' The team you wish to retrieve the player count of.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns an integer containing the number of players in the team, ''false'' if it could not be retrieved.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 1&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt; &lt;br /&gt;
This example adds a command in the console to find out how many players are on your team.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function outputTeamSize ( source, commandName )&lt;br /&gt;
	-- Get player's team&lt;br /&gt;
	local theTeam = getPlayerTeam ( source )&lt;br /&gt;
	-- If the player is in any team&lt;br /&gt;
	if theTeam then&lt;br /&gt;
		-- Tell the player how big his team is&lt;br /&gt;
		outputChatBox ( &amp;quot;Your team has &amp;quot; .. countPlayersInTeam ( theTeam ) .. &amp;quot; players.&amp;quot;, source )&lt;br /&gt;
	else&lt;br /&gt;
		outputChatBox ( &amp;quot;You're not in a team.&amp;quot;, source )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;teamsize&amp;quot;, outputTeamSize )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 2&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt; &lt;br /&gt;
This example adds a command in the console to find out how many players are on your team, clientside&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function outputTeamSize ( commandName )&lt;br /&gt;
	-- Get player's team&lt;br /&gt;
	local theTeam = getPlayerTeam ( getLocalPlayer() )&lt;br /&gt;
	-- If the player is in any team&lt;br /&gt;
	if team then&lt;br /&gt;
		-- Tell the player how big his team is&lt;br /&gt;
		outputChatBox ( &amp;quot;Your team has &amp;quot; .. countPlayersInTeam ( theTeam ) .. &amp;quot; players.&amp;quot; )&lt;br /&gt;
	else&lt;br /&gt;
		outputChatBox ( &amp;quot;You're not in a team.&amp;quot; )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;teamsize&amp;quot;, outputTeamSize )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 3&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt; &lt;br /&gt;
This example balances a gamemode, to ensure equal number of players between the &amp;quot;grove&amp;quot; and &amp;quot;ballas&amp;quot; teams.  This could be triggered when a player joins the server, or for all players currently in the server when the gamemode starts.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function balanceTeams ( thePlayer )&lt;br /&gt;
	--get the team pointers from their names&lt;br /&gt;
	local groveTeam = getTeamFromName ( &amp;quot;grove&amp;quot; )&lt;br /&gt;
	local ballasTeam = getTeamFromName ( &amp;quot;ballas&amp;quot; )&lt;br /&gt;
	--count the number of players in each team, and store them&lt;br /&gt;
	local groveCount = countPlayersInTeam ( groveTeam )&lt;br /&gt;
	local ballasCount = countPlayersInTeam ( ballasTeam )&lt;br /&gt;
	if groveCount == ballasCount then --if the teams are equal&lt;br /&gt;
		setPlayerTeam ( thePlayer , groveTeam ) --place the player in grove&lt;br /&gt;
	elseif groveCount &amp;gt; ballasCount then --if there are more in grove&lt;br /&gt;
		setPlayerTeam ( thePlayer , ballasTeam ) --place him in ballas&lt;br /&gt;
	elseif groveCount &amp;lt; ballasCount then --if there are more in ballas&lt;br /&gt;
		setPlayerTeam ( thePlayer , groveTeam ) --place him in grove.&lt;br /&gt;
	end&lt;br /&gt;
end&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Team functions}}&lt;br /&gt;
{{Player functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ResetWorldProperties&amp;diff=82608</id>
		<title>ResetWorldProperties</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ResetWorldProperties&amp;diff=82608"/>
		<updated>2025-11-11T17:12:21Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Move unnecessary note section to desc&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Shared function}}&lt;br /&gt;
{{New feature/item|3.0161|1.6.0|22741|This function resets all world properties to default.&lt;br /&gt;
&lt;br /&gt;
Regardless of the value of the arguments, the following properties are reset:&lt;br /&gt;
* Far clip distance&lt;br /&gt;
* Near clip distance&lt;br /&gt;
* Clouds (enabled)&lt;br /&gt;
* Birds (enabled)&lt;br /&gt;
* Occlusions (enabled)&lt;br /&gt;
* Gravity&lt;br /&gt;
* Game speed&lt;br /&gt;
* Aircraft max height &amp;amp; velocity&lt;br /&gt;
* Jetpack max height&lt;br /&gt;
* Interior furnitures (enabled)&lt;br /&gt;
* Minute duration&lt;br /&gt;
* Blur level&lt;br /&gt;
* Corona reflections&lt;br /&gt;
* Traffic lights locked state&lt;br /&gt;
* Water level and color&lt;br /&gt;
* Wave height&lt;br /&gt;
* Volumetric shadows&lt;br /&gt;
* Game time freeze&lt;br /&gt;
* Dynamic ped shadows&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;nil resetWorldProperties( [ bool resetSpecialProperties = true, bool resetWorldProperties = true, bool resetWeatherProperties = true, bool resetLODs = true, bool resetSounds = true, bool resetGlitches = true, bool resetJetpackWeapons = true ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
===Optional arguments===&lt;br /&gt;
{{OptionalArg}}&lt;br /&gt;
* '''resetSpecialProperties:''' Restores all special world properties changed by [[setWorldSpecialPropertyEnabled]] to default.&lt;br /&gt;
* '''resetWorldProperties:''' Reset all world properties changed by [[setWorldProperty]].&lt;br /&gt;
* '''resetWeatherProperties:''' Reset all weather properties like heat haze, rain level, sun color etc.&lt;br /&gt;
* '''resetLODs:''' Reset vehicles and peds lod distance.&lt;br /&gt;
* '''resetSounds:''' Restore interior sounds, world sounds and ambient sounds.&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
* '''resetGlitches:''' Disable all glitches enabled by [[setGlitchEnabled]].&lt;br /&gt;
* '''resetJetpackWeapons:''' Reset jetpack weapons changes by [[setJetpackWeaponEnabled]] to default (uzi, pistol, tec9).&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
This function returns nothing (''nil'').&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
resetWorldProperties()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{World functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GuiGetInputMode&amp;diff=82607</id>
		<title>GuiGetInputMode</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GuiGetInputMode&amp;diff=82607"/>
		<updated>2025-11-11T17:11:21Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Move unnecessary note section to desc&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function returns the current input mode as set by [[guiSetInputMode]].&lt;br /&gt;
Default mode is ''&amp;quot;allow_binds&amp;quot;''.&lt;br /&gt;
&lt;br /&gt;
This function is '''not''' a replacement of [[guiGetInputEnabled]], indeed for the mode ''&amp;quot;no_binds_when_editing&amp;quot;'' the actual state of binds depends on the currently focused GUI widget. However:&lt;br /&gt;
* when ''guiGetInputMode ( )'' returns ''&amp;quot;allow_binds&amp;quot;'' you can be sure that ''guiGetInputEnabled ()'' will return ''false''&lt;br /&gt;
* when ''guiGetInputMode ( )'' returns ''&amp;quot;no_binds&amp;quot;'' you can be sure that ''guiGetInputEnabled ()'' will return ''true''&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
string guiGetInputMode ( )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{OOP||[[GUI widgets|GuiElement]].getInputMode|inputMode|guiSetInputMode}}&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a string defining the current input mode, potential values are:&lt;br /&gt;
* '''&amp;quot;allow_binds&amp;quot;:''' binds are enabled, hence using a key such as t in an editbox will still activate the chatbox&lt;br /&gt;
* '''&amp;quot;no_binds&amp;quot;:''' binds are disabled, hence using a key such as t in an editbox will not activate the chatbox&lt;br /&gt;
* '''&amp;quot;no_binds_when_editing&amp;quot;:''' binds are always enabled except when an editable editbox or memo has input focus&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
addCommandHandler( &amp;quot;checkmode&amp;quot;, &lt;br /&gt;
function ()&lt;br /&gt;
    outputChatBox( string.format( &amp;quot;The current input mode is: '%s'&amp;quot;, guiGetInputMode () ) )&lt;br /&gt;
end )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{GUI_functions}}&lt;br /&gt;
{{GUI_events}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GuiSetInputMode&amp;diff=82606</id>
		<title>GuiSetInputMode</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GuiSetInputMode&amp;diff=82606"/>
		<updated>2025-11-11T17:10:23Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Move unncessary note section to desc&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function controls the input mode to define whether or not (and when) keybinds or MTA binds are overridden (disabled) so that text can be input into an editbox, for example.&lt;br /&gt;
Available input modes are:&lt;br /&gt;
* '''allow_binds:''' never disabled (hence using a key such as t in an editbox will still open the chatbox)&lt;br /&gt;
* '''no_binds:''' always disabled (hence using a key such as t will never open the chatbox)&lt;br /&gt;
* '''no_binds_when_editing:''' only disabled when editing an editbox or a memo (binds are enabled except when an editbox or memo has input focus)&lt;br /&gt;
&lt;br /&gt;
This function can be used as a replacement of [[guiSetInputEnabled]] since it provides the same functionality with one added feature.&lt;br /&gt;
* ''guiSetInputEnabled ( false )'' is the same as ''guiSetInputMode ( &amp;quot;allow_binds&amp;quot; )''&lt;br /&gt;
* ''guiSetInputEnabled ( true )'' is the same as ''guiSetInputMode ( &amp;quot;no_binds&amp;quot; )''&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool guiSetInputMode ( string mode )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{OOP||[[GUI widgets|GuiElement]].setInputMode|inputMode|guiGetInputMode}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
* '''mode:''' a string representing the desired input mode. Accepted values are:&lt;br /&gt;
** '''&amp;quot;allow_binds&amp;quot;:''' binds are enabled, hence using a key such as t in an editbox will still open the chatbox (default)&lt;br /&gt;
** '''&amp;quot;no_binds&amp;quot;:''' binds are disabled, hence using a key such as t will never open the chatbox&lt;br /&gt;
** '''&amp;quot;no_binds_when_editing&amp;quot;:''' binds are enabled except when an editbox or memo has input focus&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if input mode could be changed, ''false'' if invalid parameters are passed.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function onClientResourceStartSetGUIInputMode()&lt;br /&gt;
	guiSetInputMode(&amp;quot;no_binds_when_editing&amp;quot;) -- Calls guiSetInputMode once and for all to not have to handle binds state dynamically&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onClientResourceStart&amp;quot;, resourceRoot, onClientResourceStartSetGUIInputMode)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{GUI_functions}}&lt;br /&gt;
{{GUI_events}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Utility_functions&amp;diff=82603</id>
		<title>Template:Utility functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Utility_functions&amp;diff=82603"/>
		<updated>2025-11-10T15:03:30Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[createTrayNotification]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[downloadFile]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getKeyboardLayout]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getLocalization]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getServerIp]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22890}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isShowCollisionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isShowSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isTransferBoxAlwaysVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isTrayNotificationEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setClipboard]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setWindowFlashing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[showCol]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[showSound]]&amp;lt;/li&amp;gt;&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[addDebugHook]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[debugSleep]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[decodeString]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[encodeString]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[fromJSON]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[generateKeyPair]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getColorFromString]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getDevelopmentMode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getDistanceBetweenPoints2D]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getDistanceBetweenPoints3D]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getEasingValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getNetworkStats]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getNetworkUsageData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPerformanceStats]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getRealTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTickCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTimerDetails]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTimers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getFPSLimit]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getUserdataType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVersion]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[gettok]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isTransferBoxVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTransferBoxVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[hash]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[inspect]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[interpolateBetween]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[iprint]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isOOPEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isTimer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[isTimerPaused]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTimerPaused]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22701}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[killTimer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[md5]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[passwordHash]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[passwordVerify]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[pregFind]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[pregMatch]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[pregReplace]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeDebugHook]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetTimer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setDevelopmentMode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setFPSLimit]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTimer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[ref]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[deref]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[sha256]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[split]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[teaDecode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[teaEncode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[toJSON]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[tocolor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getProcessMemoryStats]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfChar]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfCode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfLen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfSeek]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfSub]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
{{Bit_functions}}&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:World_functions&amp;diff=82602</id>
		<title>Template:World functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:World_functions&amp;diff=82602"/>
		<updated>2025-11-10T15:02:51Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[createSWATRope]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getBirdsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22188|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getColorFilter]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getCoronaReflectionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getGarageBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getGaragePosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getGarageSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getGroundPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getInteriorFurnitureEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getNearClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedsLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRoofPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getScreenFromWorldPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehiclesLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getWorldFromScreenPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22592|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getWorldProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isAmbientSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isLineOfSightClear]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22676|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isTimeFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22721|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isVolumetricShadowsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isWorldSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22219|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[processLineAgainstMesh]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[processLineOfSight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetAmbientSounds]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetColorFilter]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetCoronaReflectionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetNearClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetPedsLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22676|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetTimeFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22721|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVolumetricShadows]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVehiclesLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22592|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetWorldProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetWorldSounds]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setAmbientSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setBirdsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setColorFilter]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setCoronaReflectionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setInteriorFurnitureEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setNearClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedsLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22676|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setTimeFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehiclesLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22592|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setWorldProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setWorldSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|21902|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setGrainLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|21902|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setGrainMultiplier]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[testLineAgainstWater]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22721|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVolumetricShadowsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[testSphereAgainstWorld]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22837}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getJetpackWeaponEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setJetpackWeaponEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[areTrafficLightsLocked]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getAircraftMaxHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getAircraftMaxVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getCloudsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getFarClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getFogDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getGameSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getGravity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getHeatHaze]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getInteriorSoundsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getJetpackMaxHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMinuteDuration]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMoonSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getOcclusionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getRainLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getSunColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getSunSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTrafficLightState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getWeather]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getWindVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getSkyGradient]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[isWorldSpecialPropertyEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22195}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[getZoneName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isGarageOpen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeWorldModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetFarClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetFogDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetHeatHaze]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetMoonSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetRainLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetSkyGradient]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetSunColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetSunSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetWindVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[restoreAllWorldModels]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[restoreWorldModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setAircraftMaxHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setAircraftMaxVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setCloudsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setFarClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setFogDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setGameSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setGarageOpen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setGravity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setHeatHaze]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setInteriorSoundsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMinuteDuration]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMoonSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setOcclusionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setRainLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setSkyGradient]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setSunColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setSunSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrafficLightState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrafficLightsLocked]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWeather]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWeatherBlended]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWindVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setJetpackMaxHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWorldSpecialPropertyEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22195}}&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetWorldProperties]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22741}}&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeGameWorld]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[restoreGameWorld]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22909}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82601</id>
		<title>Template:Player functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82601"/>
		<updated>2025-11-10T15:02:30Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getLocalPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapOpacity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMapVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerCrosshairVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22751}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getAlivePlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getDeadPlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIdleTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIP]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerVersion]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRandomPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[redirectPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerACInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerModInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceBroadcastTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceIgnoreFrom]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[spawnPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[takePlayerScreenShot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerSerial]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[forcePlayerMap]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerFromName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerPing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[givePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerMapForced]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[takePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[countPlayersInTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayersInTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVoiceEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Vehicle_functions&amp;diff=82600</id>
		<title>Template:Vehicle functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Vehicle_functions&amp;diff=82600"/>
		<updated>2025-11-10T15:02:01Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[areVehicleLightsOn]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getHeliBladeCollisionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22344|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleRotorSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleRotorState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22862}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleAdjustableProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleComponentPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleComponentRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleComponents]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleComponentScale]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleCurrentGear]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleDummyPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleEntryPoints]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22649}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleGravity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleModelDummyDefaultPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleModelDummyPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleModelExhaustFumesPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleModelWheelSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleNitroCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleNitroLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleWheelFrictionState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleWheelScale]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isTrainChainEngine]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isVehicleNitroActivated]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isVehicleNitroRecharging]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isVehicleWheelOnGround]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isVehicleWindowOpen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVehicleComponentPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVehicleComponentRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVehicleComponentScale]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVehicleDummyPositions]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setHeliBladeCollisionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleRotorSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22344}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleRotorState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22862}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleAdjustableProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleComponentPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleComponentRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleComponentScale]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleDummyPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleGravity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleModelDummyPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleModelExhaustFumesPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleModelWheelSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleNitroCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleNitroLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleWheelScale]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleWindowOpen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleWheelsRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22592}}&lt;br /&gt;
 {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleSmokeTrailEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22815}}&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isVehicleSmokeTrailEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22815}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getModelHandling]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleIdleRespawnDelay]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleRespawnDelay]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleRespawnPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehicleRespawnRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehiclesOfType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isVehicleRespawnable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVehicleExplosionTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVehicleIdleTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[respawnVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setModelHandling]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleIdleRespawnDelay]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleRespawnDelay]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleRespawnPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehicleRespawnRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[spawnVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[toggleVehicleRespawn]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[addVehicleUpgrade]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[addVehicleSirens]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[attachTrailerToVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[blowVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[detachTrailerFromVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[fixVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getOriginalHandling]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTrainDirection]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTrainPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTrainSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleCompatibleUpgrades]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleController]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleDoorOpenRatio]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleDoorState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleEngineState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleHandling]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleHeadLightColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleLandingGearDown]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleLightState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleMaxPassengers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleModelFromName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleNameFromModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleNitroActivated]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleOccupant]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleOccupants]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleOverrideLights]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehiclePaintjob]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehiclePanelState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehiclePlateText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleSirenParams]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleSirens]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleSirensOn]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleTowedByVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleTowingVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleTurretPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleUpgradeOnSlot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleUpgradeSlotName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleUpgrades]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleVariant]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVehicleWheelStates]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isTrainDerailable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isTrainDerailed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVehicleBlown]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVehicleDamageProof]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVehicleFuelTankExplodable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVehicleLocked]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVehicleOnGround]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVehicleTaxiLightOn]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeVehicleUpgrade]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeVehicleSirens]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrainDerailable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrainDerailed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrainDirection]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrainPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrainSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleDamageProof]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleDoorOpenRatio]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleDoorState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleDoorsUndamageable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleEngineState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleFuelTankExplodable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[spawnVehicleFlyingComponent]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22771}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleHandling]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleHeadLightColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleLandingGearDown]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleLightState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleLocked]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleOverrideLights]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehiclePaintjob]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehiclePanelState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehiclePlateText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleSirens]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleSirensOn]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleTaxiLightOn]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleTurretPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleVariant]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setVehicleWheelStates]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Utility_functions&amp;diff=82599</id>
		<title>Template:Utility functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Utility_functions&amp;diff=82599"/>
		<updated>2025-11-10T15:00:26Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[createTrayNotification]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[downloadFile]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getKeyboardLayout]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getLocalization]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getServerIp]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22890}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isShowCollisionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isShowSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isTransferBoxAlwaysVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isTrayNotificationEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setClipboard]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setWindowFlashing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[showCol]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[showSound]]&amp;lt;/li&amp;gt;&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setServerConfigSetting]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getServerConfigSetting]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[addDebugHook]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[debugSleep]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[decodeString]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[encodeString]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[fromJSON]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[generateKeyPair]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getColorFromString]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getDevelopmentMode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getDistanceBetweenPoints2D]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getDistanceBetweenPoints3D]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getEasingValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getNetworkStats]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getNetworkUsageData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPerformanceStats]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getRealTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTickCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTimerDetails]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTimers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getFPSLimit]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getUserdataType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getVersion]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[gettok]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isTransferBoxVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTransferBoxVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[hash]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[inspect]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[interpolateBetween]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[iprint]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isOOPEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isTimer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[isTimerPaused]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTimerPaused]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22701}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[killTimer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[md5]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[passwordHash]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[passwordVerify]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[pregFind]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[pregMatch]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[pregReplace]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeDebugHook]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetTimer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setDevelopmentMode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setFPSLimit]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTimer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[ref]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[deref]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[sha256]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[split]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[teaDecode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[teaEncode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[toJSON]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[tocolor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getProcessMemoryStats]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfChar]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfCode]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfLen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfSeek]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[utfSub]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
{{Bit_functions}}&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Ped_functions&amp;diff=82598</id>
		<title>Template:Ped functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Ped_functions&amp;diff=82598"/>
		<updated>2025-11-10T14:58:41Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[canPedBeKnockedOffBike]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedAnalogControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedAnimation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedBonePosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedCameraRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedMoveState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedOxygenLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedSimplestTask]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedTargetCollision]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedTargetEnd]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedTargetStart]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedTask]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedVoice]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedWeaponMuzzlePosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[givePedWeapon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPedBleeding]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPedDoingTask]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPedTargetingMarkerEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetPedVoice]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |21874}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedAimTarget]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedAnalogControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedBleeding]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedCameraRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedCanBeKnockedOffBike]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedEnterVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedExitVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[IsPedFootBloodEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedFootBloodEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedLookAt]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedOxygenLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedTargetingMarkerEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedVoice]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[playPedVoiceLine]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22997}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedGravity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[reloadPedWeapon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedChoking]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedGravity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedWearingJetpack]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[addPedClothes]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedClothes]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removePedClothes]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createPed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedAmmoInClip]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedArmor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedFightingStyle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedOccupiedVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedOccupiedVehicleSeat]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedStat]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedTarget]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedTotalAmmo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedWalkingStyle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedWeapon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedWeaponSlot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPedContactElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getValidPedModels]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedChoking]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedDead]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedDoingGangDriveby]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedDucked]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedHeadless]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedInVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedOnGround]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedReloadingWeapon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPedWearingJetpack]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[killPed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removePedFromVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedAnimation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedAnimationProgress]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedAnimationSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedArmor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedDoingGangDriveby]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedFightingStyle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedHeadless]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedStat]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedWalkingStyle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPedWeaponSlot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[warpPedIntoVehicle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Clothes_and_body_functions&amp;diff=82597</id>
		<title>Template:Clothes and body functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Clothes_and_body_functions&amp;diff=82597"/>
		<updated>2025-11-10T14:57:56Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getBodyPartName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getClothesByTypeIndex]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getClothesTypeName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTypeIndexFromClothes]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{Added feature/item|1.6.1|1.6.0|23124|&lt;br /&gt;
&amp;lt;li&amp;gt;[[addClothingModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:World_functions&amp;diff=82596</id>
		<title>Template:World functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:World_functions&amp;diff=82596"/>
		<updated>2025-11-10T14:54:41Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[createSWATRope]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getBirdsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22188|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getColorFilter]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getCoronaReflectionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getGarageBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getGaragePosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getGarageSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getGroundPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getInteriorFurnitureEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getNearClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPedsLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRoofPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getScreenFromWorldPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getVehiclesLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getWorldFromScreenPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22592|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getWorldProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isAmbientSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isLineOfSightClear]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22676|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isTimeFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22721|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isVolumetricShadowsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isWorldSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22219|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[processLineAgainstMesh]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[processLineOfSight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetAmbientSounds]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetColorFilter]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetCoronaReflectionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetNearClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetPedsLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22676|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetTimeFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22721|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVolumetricShadows]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetVehiclesLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22592|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetWorldProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetWorldSounds]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setAmbientSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setBirdsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setColorFilter]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setCoronaReflectionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setInteriorFurnitureEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setInteriorSoundsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setNearClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPedsLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22676|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setTimeFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVehiclesLODDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22592|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setWorldProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setWorldSoundEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|21902|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setGrainLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|21902|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setGrainMultiplier]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[testLineAgainstWater]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22721|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setVolumetricShadowsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[testSphereAgainstWorld]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22837}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getJetpackWeaponEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setJetpackWeaponEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[areTrafficLightsLocked]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getAircraftMaxHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getAircraftMaxVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getCloudsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getFarClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getFogDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getGameSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getGravity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getHeatHaze]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getInteriorSoundsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getJetpackMaxHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMinuteDuration]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMoonSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getOcclusionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getRainLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getSunColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getSunSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTrafficLightState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getWeather]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getWindVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getSkyGradient]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[isWorldSpecialPropertyEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22195}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[getZoneName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isGarageOpen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeWorldModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetFarClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetFogDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetHeatHaze]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetMoonSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetRainLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetSkyGradient]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetSunColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetSunSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetWindVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[restoreAllWorldModels]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[restoreWorldModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setAircraftMaxHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setAircraftMaxVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setCloudsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setFarClipDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setFogDistance]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setGameSpeed]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setGarageOpen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setGravity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setHeatHaze]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setInteriorSoundsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMinuteDuration]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMoonSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setOcclusionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setRainLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setSkyGradient]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setSunColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setSunSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrafficLightState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setTrafficLightsLocked]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWeather]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWeatherBlended]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWindVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setJetpackMaxHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWorldSpecialPropertyEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22195}}&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[resetWorldProperties]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22741}}&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeGameWorld]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[restoreGameWorld]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22909}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Team_functions&amp;diff=82595</id>
		<title>Template:Team functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Team_functions&amp;diff=82595"/>
		<updated>2025-11-10T14:54:14Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[createTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setTeamColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setTeamFriendlyFire]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setTeamName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTeamColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTeamFriendlyFire]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTeamFromName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTeamName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82594</id>
		<title>Template:Player functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82594"/>
		<updated>2025-11-10T14:54:00Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Undo revision 82593 by Fernando187 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getLocalPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapOpacity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMapVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerCrosshairVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22751}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getAlivePlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getDeadPlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIdleTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIP]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerVersion]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRandomPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[redirectPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerACInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerModInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceBroadcastTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceIgnoreFrom]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[spawnPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[takePlayerScreenShot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerSerial]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[forcePlayerMap]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerFromName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerPing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[givePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerMapForced]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[takePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[countPlayersInTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayersInTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVoiceEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82593</id>
		<title>Template:Player functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Player_functions&amp;diff=82593"/>
		<updated>2025-11-10T14:53:08Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getLocalPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerMapOpacity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMapVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerCrosshairVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22751}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resetPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerHudComponentProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22868}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getAlivePlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getDeadPlayers]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIdleTime]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerIP]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getPlayerVersion]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getRandomPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[redirectPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerACInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[resendPlayerModInfo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerAnnounceValue]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerMuted]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceBroadcastTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerVoiceIgnoreFrom]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[spawnPlayer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[takePlayerScreenShot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerBlurLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerSerial]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[forcePlayerMap]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerScriptDebugLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerFromName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerPing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayerWantedLevel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[givePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerMapForced]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerHudComponentVisible]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagShowing]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setPlayerNametagText]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[takePlayerMoney]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getPlayersInTeam]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isVoiceEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getControlState]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Element_functions&amp;diff=82592</id>
		<title>Template:Element functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Element_functions&amp;diff=82592"/>
		<updated>2025-11-10T14:52:41Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementBoneMatrix]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementBonePosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementBoneRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22741|&amp;lt;li&amp;gt;[[getElementBoneQuaternion]]&amp;lt;/li&amp;gt;}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementDistanceFromCentreOfMassToBaseOfModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementLighting]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementRadius]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementCollidableWith]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementLocal]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementLighting]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22862}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementOnScreen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementStreamable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementStreamedIn]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementSyncer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementWaitingForGroundToLoad]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementBoneMatrix]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementBonePosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementBoneRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22741|&amp;lt;li&amp;gt;[[setElementBoneQuaternion]]&amp;lt;/li&amp;gt;}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementCollidableWith]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementStreamable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[updateElementRpHAnim]]&amp;lt;/li&amp;gt;&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[addElementDataSubscriber]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[clearElementVisibleTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[cloneElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementSyncer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementZoneName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[hasElementDataSubscriber]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementVisibleTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[removeElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[removeElementDataSubscriber]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementSyncer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementVisibleTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[attachElements]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[destroyElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[detachElements]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getAttachedElements]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementAlpha]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementAttachedOffsets]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementAttachedTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementByIndex]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementByID]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementChild]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementChildren]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementChildrenCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementCollisionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementColShape]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getAllElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[hasElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementDimension]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementHealth]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementID]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementInterior]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementMatrix]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementParent]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementsByType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementsWithinColShape]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementsWithinRange]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getLowLODElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getRootElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementAttached]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementCallPropagationEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementDoubleSided]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementInWater]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementLowLOD]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementOnFire]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22864}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementWithinColShape]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementWithinMarker]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementAlpha]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementAngularVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementAngularVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementAttachedOffsets]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementCallPropagationEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementCollisionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementDimension]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementDoubleSided]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementHealth]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementID]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementInterior]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementOnFire]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22864}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementParent]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setLowLODElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Weapon_functions&amp;diff=82591</id>
		<title>Template:Weapon functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Weapon_functions&amp;diff=82591"/>
		<updated>2025-11-10T14:49:50Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setWeaponRenderEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isWeaponRenderEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22880}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[giveWeapon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[takeAllWeapons]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[takeWeapon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getWeaponProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getOriginalWeaponProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getSlotFromWeapon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getWeaponIDFromName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getWeaponNameFromID]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWeaponAmmo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setWeaponProperty]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Marker_functions&amp;diff=82590</id>
		<title>Template:Marker functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Marker_functions&amp;diff=82590"/>
		<updated>2025-11-10T14:49:30Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isCoronaReflectionEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setCoronaReflectionEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createMarker]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMarkerColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMarkerCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMarkerIcon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMarkerSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMarkerTarget]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMarkerTargetArrowProperties]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22620}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[getMarkerType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMarkerColor]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMarkerIcon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMarkerSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMarkerTarget]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMarkerTargetArrowProperties]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22620}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[setMarkerType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Collision_shape_functions&amp;diff=82589</id>
		<title>Template:Collision shape functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Collision_shape_functions&amp;diff=82589"/>
		<updated>2025-11-10T14:45:54Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[addColPolygonPoint]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createColCircle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createColCuboid]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createColPolygon]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createColRectangle]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createColSphere]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createColTube]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getColPolygonHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getColPolygonPoints]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getColPolygonPointPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getColShapeType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getColShapeRadius]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getColShapeSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isInsideColShape]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removeColPolygonPoint]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setColPolygonHeight]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setColPolygonPointPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setColShapeRadius]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setColShapeSize]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Clothes_and_body_functions&amp;diff=82588</id>
		<title>Template:Clothes and body functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Clothes_and_body_functions&amp;diff=82588"/>
		<updated>2025-11-10T14:44:03Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getBodyPartName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getClothesByTypeIndex]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getClothesTypeName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getTypeIndexFromClothes]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[removePedClothes]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{Added feature/item|1.6.1|1.6.0|23124|&lt;br /&gt;
&amp;lt;li&amp;gt;[[addClothingModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Element_functions&amp;diff=82587</id>
		<title>Template:Element functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Element_functions&amp;diff=82587"/>
		<updated>2025-11-10T14:42:48Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix function in wrong category (wiki cleaning)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
{{#if: {{{1|}}}&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | client&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- CLIENT functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementBoneMatrix]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementBonePosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementBoneRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22741|&amp;lt;li&amp;gt;[[getElementBoneQuaternion]]&amp;lt;/li&amp;gt;}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementBoundingBox]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementDistanceFromCentreOfMassToBaseOfModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementLighting]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementRadius]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementCollidableWith]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementLocal]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New items|3.0161|1.6.0|&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementLighting]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    |22862}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementOnScreen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementStreamable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementStreamedIn]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementSyncer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementWaitingForGroundToLoad]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementBoneMatrix]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementBonePosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementBoneRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    {{New feature/item|3.0161|1.6.0|22741|&amp;lt;li&amp;gt;[[setElementBoneQuaternion]]&amp;lt;/li&amp;gt;}}&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementCollidableWith]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementStreamable]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[updateElementRpHAnim]]&amp;lt;/li&amp;gt;&lt;br /&gt;
 | {{#ifeq: {{lc:{{{1}}}}} | server&lt;br /&gt;
 |&lt;br /&gt;
    &amp;lt;!-- SERVER functions --&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[addElementDataSubscriber]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[clearElementVisibleTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[cloneElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementSyncer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[getElementZoneName]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[hasElementDataSubscriber]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[isElementVisibleTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[removeElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[removeElementDataSubscriber]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementSyncer]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;[[setElementVisibleTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
    }}&lt;br /&gt;
  }}&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
&amp;lt;li style=&amp;quot;list-style: none; margin-left: -1.6em;&amp;quot;&amp;gt;'''Shared'''&amp;lt;/li&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- SHARED functions--&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[attachElements]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[createElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[destroyElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[detachElements]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getAttachedElements]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementAlpha]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementAttachedOffsets]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementAttachedTo]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementByIndex]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementByID]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementChild]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementChildren]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementChildrenCount]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementCollisionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementColShape]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getAllElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[hasElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementDimension]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementHealth]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementID]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementInterior]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementMatrix]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementParent]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementsByType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementsWithinColShape]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementsWithinRange]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementType]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getLowLODElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getRootElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementAttached]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementCallPropagationEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementDoubleSided]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementInWater]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementLowLOD]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementOnFire]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22864}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementWithinColShape]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[isElementWithinMarker]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementAlpha]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementAngularVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getElementAngularVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementAttachedOffsets]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementCallPropagationEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementCollisionsEnabled]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementData]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementDimension]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementDoubleSided]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementFrozen]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementHealth]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementID]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementInterior]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementModel]]&amp;lt;/li&amp;gt;&lt;br /&gt;
{{New items|3.0161|1.6.0|&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementOnFire]]&amp;lt;/li&amp;gt;&lt;br /&gt;
|22864}}&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementParent]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementPosition]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementRotation]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setElementVelocity]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[setLowLODElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getResourceDynamicElementRoot]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[getResourceRootElement]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Functions list info}}&lt;br /&gt;
[[Category:Functions templates]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DxDrawModel3D&amp;diff=82586</id>
		<title>DxDrawModel3D</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DxDrawModel3D&amp;diff=82586"/>
		<updated>2025-11-10T10:13:05Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Example */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}} &lt;br /&gt;
{{Important Note|You can not use this function to draw vehicles and ped}}&lt;br /&gt;
{{Important Note|This function doesn't obey any streaming limits, you can draw as many models as you want}}&lt;br /&gt;
{{Important Note|You can not render model to render target.}}&lt;br /&gt;
{{New feature/item|3.0161|1.6.0|22708|&lt;br /&gt;
This function draws a 3D model - rendered for '''one''' frame. Drawn models are indistinguishable from this one created by [[createObject]] function. This should be used in conjunction with [[onClientRender]] or [[onClientPreRender]] in order to display continuously. Note that a model must be loaded at the time this function is called. A model can be loaded and unloaded with the help of [[engineStreamingRequestModel]] and [[engineStreamingReleaseModel]] functions.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool dxDrawModel3D( int modelId, float positionX, float positionY, float positionZ, float rotationX, float rotationY, float rotationZ [, float scaleX = 1, float scaleY = 1, float scaleZ = 1, float lighting = 0 ])&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:DxDrawModel3D_at_day.png|thumb|Model during day]]&lt;br /&gt;
[[Image:DxDrawModel3D_at_night.png|thumb|Model during night]]&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
* '''modelId:''' [[object]] you want to draw, must be regular object, you can not draw vehicles and peds. See [[Object_IDs|Object IDs]] for a list of model IDs.&lt;br /&gt;
*'''positionX:''' A floating point number representing the X coordinate on the map.&lt;br /&gt;
*'''positionY:''' A floating point number representing the Y coordinate on the map.&lt;br /&gt;
*'''positionZ:''' A floating point number representing the Z coordinate on the map.&lt;br /&gt;
*'''rotationX:''' A floating point number representing the rotation about the X axis in degrees.&lt;br /&gt;
*'''rotationY:''' A floating point number representing the rotation about the Y axis in degrees.&lt;br /&gt;
*'''rotationZ:''' A floating point number representing the rotation about the Z axis in degrees.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''scaleX''': a float containing the new scale on the X axis&lt;br /&gt;
*'''scaleY''': a float containing the new scale on the Y axis&lt;br /&gt;
*'''scaleZ''': a float containing the new scale on the Z axis&lt;br /&gt;
&lt;br /&gt;
{{New feature/item|3.0161|1.6.0|22862|&lt;br /&gt;
*'''lighting:''' Lighting of model. Allowed range is [0, 1].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns true if the operation was successful, false otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Simple example&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
This example draws a model&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local modelId = 1337&lt;br /&gt;
&lt;br /&gt;
local function drawMyModel()&lt;br /&gt;
    dxDrawModel3D(modelId, 0, 0, 4, 0, 0, 0)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function startDraw()&lt;br /&gt;
    engineStreamingRequestModel(modelId, true, true)&lt;br /&gt;
    addEventHandler(&amp;quot;onClientPreRender&amp;quot;, root, drawMyModel)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function stopDraw()&lt;br /&gt;
    engineStreamingReleaseModel(modelId, true)&lt;br /&gt;
    removeEventHandler(&amp;quot;onClientPreRender&amp;quot;, root, drawMyModel)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Drawing_functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Client_on_Linux_Manual&amp;diff=82477</id>
		<title>Client on Linux Manual</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Client_on_Linux_Manual&amp;diff=82477"/>
		<updated>2025-09-16T12:36:00Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: other methods&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Needs Checking|MTA:SA support on Linux is on a best-effort basis, and you can run into a long list of issues. Also see &amp;quot;Known issues&amp;quot; paragraph}}&lt;br /&gt;
{{Warning|This page is for Linux players '''ONLY''', for Windows go [[Client Manual|here]].|true}}&lt;br /&gt;
&lt;br /&gt;
==Other Methods==&lt;br /&gt;
These are related Client on Linux methods for other setups:&lt;br /&gt;
&lt;br /&gt;
===Lutris===&lt;br /&gt;
&lt;br /&gt;
Lutris can be used instead for easier Prefix management, see&lt;br /&gt;
[[Client on Linux using Lutris Manual]]&lt;br /&gt;
&lt;br /&gt;
===Bottles/Soda===&lt;br /&gt;
&lt;br /&gt;
Bottles can also be used in conjunction with the Soda runner, see&lt;br /&gt;
[[Client on Linux using Bottles/Soda Manual]]&lt;br /&gt;
&lt;br /&gt;
===Steam Deck===&lt;br /&gt;
Steam Deck mobile device can also be used to play MTA, see&lt;br /&gt;
[[Client on Steam Deck Manual]]&lt;br /&gt;
&lt;br /&gt;
==Before you start==&lt;br /&gt;
&lt;br /&gt;
First of all, please ensure your computer fits the requirements needed.&lt;br /&gt;
Read the [[Client_Manual|Client Manual]] page for further informations, or join us on [https://mtasa.com/discord Discord].&lt;br /&gt;
&lt;br /&gt;
It is recommended to use '''32-bit Wine prefix'''. But if you do not want to install 32-bit libs, or your distro ships with enforced WoW64 Wine mode, use 64-bit Wine prefix instead, although 64-bit Wine prefix introduces some instability, bugs and potential performance issues, but it's still very playable.&lt;br /&gt;
&lt;br /&gt;
===Requirements===&lt;br /&gt;
The hardware requirements for Multi Theft Auto: San Andreas are the same as on Windows.&lt;br /&gt;
For software requirements, you need:&lt;br /&gt;
* Wine (get it on your package manager (synaptic, apt, pacman, yum, etc.); follow instructions [https://www.winehq.org/download/ubuntu here] if you're using Ubuntu; (Install Wine Staging if you want better audio quality (experimental))&lt;br /&gt;
* Winetricks (same as wine, get it on your package manager, or follow instructions [https://wiki.winehq.org/Winetricks here])&lt;br /&gt;
* '''(for 32-bit wine bottle only)''' 32-bit GPU mesa drivers for your GPU (for arch, use package lib32-mesa)&lt;br /&gt;
* '''(for 32-bit wine bottle only)''' 32-bit Audio drivers (for arch, follow instructions [https://wiki.archlinux.org/title/wine#Sound here]&lt;br /&gt;
* TLS libraries (for arch, use packages gnutls and '''(lib32-gnutls for 32-bit wine bottle only)''')&lt;br /&gt;
* MTA:SA version 1.6 or newer (1.6 contains many improvements for Wine)&lt;br /&gt;
* Windows fonts:&lt;br /&gt;
** tahoma.ttf&lt;br /&gt;
** tahomabd.ttf&lt;br /&gt;
** verdana.ttf&lt;br /&gt;
&lt;br /&gt;
You can download them from following places:&lt;br /&gt;
* Get them on the Internet, e.g. [http://fontonic.com/ fontonic.com]&lt;br /&gt;
* Get the zip archive with the 3 fonts {{WineFonts}}.&lt;br /&gt;
* Get them via your package manager (apt, pacman (ttf-tahoma and ttf-ms-fonts from AUR))&lt;br /&gt;
&lt;br /&gt;
==Create new prefix==&lt;br /&gt;
&lt;br /&gt;
Firstly, we need to create a new prefix:&lt;br /&gt;
&lt;br /&gt;
# Start Winetricks&lt;br /&gt;
# Select '''Create new prefix'''&lt;br /&gt;
# If you can, select '''32-bit prefix'''. If you did not installed 32-bit libraries, or you have enforced WoW64, create '''64-bit prefix'''.&lt;br /&gt;
# Write name of prefix, we will use '''mtasa'''&lt;br /&gt;
&lt;br /&gt;
==Installing the game==&lt;br /&gt;
(You can skip this if you installed the game via Steam or other supported Games Store)&lt;br /&gt;
Install the game from DVD or ISO into our prefix, by executing following command:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
WINEPREFIX=~/.local/share/wineprefixes/mtasa wine /mnt/setup.exe&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Replace /mnt/setup.exe with path to installer's setup.exe)&lt;br /&gt;
&lt;br /&gt;
Complete the installation as usual, you can keep installation path as is.&amp;lt;br/&amp;gt;&lt;br /&gt;
Afterwards, download the MTA installer from [http://www.mtasa.com mtasa.com], and execute it inside our prefix with following command:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
WINEPREFIX=~/.local/share/wineprefixes/mtasa wine ~/Downloads/mtasa-1.6.exe&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(As previously, change path to the installer)&amp;lt;br/&amp;gt;&lt;br /&gt;
Keep the options as is, only change is required if installation path of GTA is different from default, in that case, browse the path to the game.&lt;br /&gt;
&lt;br /&gt;
==Configuring prefix==&lt;br /&gt;
&lt;br /&gt;
Firstly, we need to assure that our prefix have required fonts, mentioned in Requirements part. If you installed those fonts via package manager or into your Linux system, Wine should be able to pick them up automatically.&amp;lt;br/&amp;gt;&lt;br /&gt;
If that doesn't work, manually install them in &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;~/.local/share/wineprefixes/mtasa/drive_c/windows/Fonts&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you installed Wine Staging, we can enable '''Environmental Audio Extensions (EAX)''', which is experimental feature, although I didn't encountered any issues with it.&lt;br /&gt;
You can enable it as follows:&lt;br /&gt;
&lt;br /&gt;
# Open Winetricks&lt;br /&gt;
# Select '''mtasa prefix'''&lt;br /&gt;
# Select '''Run winecfg'''&lt;br /&gt;
# Go to '''Staging''' tab&lt;br /&gt;
# Enable Environmental Audio Extensions (EAX)&lt;br /&gt;
&lt;br /&gt;
===For 64-bit prefix===&lt;br /&gt;
&lt;br /&gt;
Normally for DirectX games, DirectX to OpenGL shim is used. Wine WoW64 have significant performance issues in games using OpenGL.&lt;br /&gt;
Because of this, it is recommended to install DXVK through WineTricks. In the past, DXVK did not worked with MTA, although, so far it works quite nicely, although it's less stable as on 32-bit bottle with internal DirectX to OpenGL shim.&lt;br /&gt;
&lt;br /&gt;
# Open Winetricks&lt;br /&gt;
# Select '''mtasa prefix'''&lt;br /&gt;
# Select '''Install a Windows DLL or component'''&lt;br /&gt;
# Select '''dxvk'''&lt;br /&gt;
&lt;br /&gt;
==Running the game==&lt;br /&gt;
Once installed, double-clicking on the Desktop shortcut or menu item should work. If not, try in a terminal the following command:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
WINEPREFIX=~/.local/share/wineprefixes/mtasa wine ~/.local/share/wineprefixes/mtasa/drive_c/Program\ Files/MTA\ San\ Andreas\ 1.6\Multi\ Theft\ Auto.exe&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Known issues===&lt;br /&gt;
* MTA isn't starting (even with fonts installed)&lt;br /&gt;
#Try to start MTA:SA in a virtual desktop&lt;br /&gt;
#:Go to WineConfig, choose the tab &amp;quot;Graphics&amp;quot; and select &amp;quot;Emulate a virtual desktop&amp;quot;.&amp;lt;br&amp;gt;&lt;br /&gt;
#Try to delete your gta_sa.set file&lt;br /&gt;
#:which is located in the &amp;quot;GTA San Andreas User Files&amp;quot; folder, which can be found in your home directory.&amp;lt;br&amp;gt;'''(Remember to create a copy, if you're playing San Andreas in singleplayer)'''&lt;br /&gt;
#Try to delete your MTA config file&lt;br /&gt;
#:which is: &amp;quot;MTA San Andreas 1.6/MTA/coreconfig.xml&amp;quot;&amp;lt;br&amp;gt;'''(Also remember to create a copy, if you don't want to lose your edited MTA configuration)'''&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;SD #16 Error&amp;quot; when connecting to a server&lt;br /&gt;
* &amp;quot;No audio card detected&amp;quot; when launching either GTA:SA or MTA&lt;br /&gt;
* Using standard Full-screen mode on MTA might cause some occasional artifacts&lt;br /&gt;
* Enabling DXVK might not break GTA:SA, but it breaks MTA (NOTE: DXVK seems to work on latest versions of Wine, DXVK and MTA)&lt;br /&gt;
* Using Linux brings a higher-than-usual chance for game crashes due to various reasons (sometimes to do with resources &amp;amp; mods on individual servers)&lt;br /&gt;
* CEF crashes with some wine versions. Use [https://github.com/multitheftauto/mtasa-blue/issues/1000 workaround] for this issue&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''* Making the mistake of using a 64-bit prefix may ''specifically'' result in:'''&lt;br /&gt;
* &amp;quot;SD #16 Error&amp;quot; when connecting to a server&lt;br /&gt;
* &amp;quot;libcef.dll&amp;quot; MTA crash upon joining servers, or during gameplay (when server uses CEF and your CEF web browser is enabled)&lt;br /&gt;
* Even higher chance for instability, lag issues and game crashes&lt;br /&gt;
.. and much more&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Specific issues with workarounds===&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Crash when connecting'''&amp;lt;br&amp;gt;&lt;br /&gt;
Sometimes the audio-server makes problems (could be related to PulseAudio), in this case, you've to go to WineConfig and choose the tab Audio, then deselect &amp;quot;ALSA&amp;quot; and select &amp;quot;EsoundD&amp;quot;. Save the settings and restart MTA.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Crash in basswma.dll module while streaming audio'''&amp;lt;br&amp;gt;&lt;br /&gt;
Workaround: Install Windows Media Player 11&amp;lt;br&amp;gt;&lt;br /&gt;
Before carrying this out, [https://wiki.winehq.org/Winetricks install Winetricks]&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
winetricks -q wmp11&lt;br /&gt;
&lt;br /&gt;
If that doesnt solve the issue, try an older version:&lt;br /&gt;
winetricks -q wmp10&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Special Detections (SD)'''&amp;lt;br&amp;gt;&lt;br /&gt;
This was already described above in general terms, of possible issues if you're not using 32-bit prefix as is recommended. But for this &amp;quot;Specific issues&amp;quot; section we will go in-depth more regarding '''SD #21''' kick from AC that commonly affects Linux/Wine users:&amp;lt;br&amp;gt;&lt;br /&gt;
If you are using a 64-bit wine version/prefix you may have problems with [http://wiki.multitheftauto.com/wiki/Anti-cheat_guide#.3Cenablesd.3E.3C.2Fenablesd.3E Special Detections]. If the server you are trying to connect keeps showing something like [http://i.imgur.com/33T8a82.jpg this], then you should make a [https://wiki.archlinux.org/title/Wine#WINEARCH 32 bit wine prefix] (or bottle).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;export WINEARCH=win32 WINEPREFIX=~/.winegta&lt;br /&gt;
winecfg&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Look at your Windows version and press OK to create the prefix. Now you have a 32-bit wine prefix on ~/.winegta.&lt;br /&gt;
Install GTA:SA and them MTA.&lt;br /&gt;
After this, MTA and GTA have been installed within ~/.winegta prefix which is a 32-bit wine environment.&lt;br /&gt;
&lt;br /&gt;
'''Note''': In some scenario's, while creating your 32-bit prefix, it may be needed to change Windows version on the bottom to Windows 7. But avoid it whenever possible.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
'''Font Artifacts'''&amp;lt;br&amp;gt;&lt;br /&gt;
If you see weird fonts artifacts [https://media.discordapp.net/attachments/278521065435824128/1000827089022373978/unknown.png like this] then you need to add a new DLL override to your prefix/bottle. &amp;lt;br&amp;gt;&lt;br /&gt;
#Open '''Wine configuration''' for your prefix/bottle, go to the Libraries tab&lt;br /&gt;
#Click on the ''''New override for library''':' dropdown and select ''''d3dx9_42''''&lt;br /&gt;
#Click on ''''Edit...'''' and select ''''Builtin (Wine)'''' then 'OK'&lt;br /&gt;
Apply all the changes and you're good to go.&amp;lt;br&amp;gt;&lt;br /&gt;
(Make sure you have ''''d3dx9_42'''' installed in your prefix)&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt; winetricks d3dx9_42&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
(NOTE: This does not work anymore, MTA stops due integrity check failure.)&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Closing words'''&amp;lt;br&amp;gt;&lt;br /&gt;
To avoid many of the roadblocks when it comes to Linux/Wine issues in general, just use 32-bit Prefix as suggested. However, if you still run into issues, you can inform yourself better about MTA's Linux/Mac support levels and background by joining the [https://discord.gg/mtasa MTA discord] and going to #help-support channel, to specifically read information at this pinned message: https://discord.com/channels/278474088903606273/278521065435824128/894932698269900830&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We realize that the wiki pages &amp;amp; documentation regarding Linux, macOS support (such as: through Wine, Lutris, PlayOnLinux, Parallels Desktop etc) is far from perfect, and that the list of potential issues you can run into isn't complete. As the MTA discord linked post tries to explain, these platforms are supported on a best-effort basis (in a technical sense, not an user support sense) and even then you'll find others on the MTA discord that are Linux users &amp;amp; play MTA after performing some workarounds, that may be willing to help you. These people are also advised to add any known issue (and workaround for it) to the wiki documentations, so if that sounds like you then feel free to edit this page for instance, and help future users that find themselves in the same situation as you were. Linux/Wine just gives really obscure, hard to fix issues with MTA and other applications/games, including niche ones that individual users happen to resolve somehow.. that's the point.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [http://nightly.mtasa.com/ nightly.mtasa.com] - For nightly builds.&lt;br /&gt;
* https://bugs.mtasa.com/view.php?id=8895 - a bug report containing useful info for running MTA in Wine&lt;br /&gt;
[[Category:Support]]&lt;br /&gt;
[[ru:Client on Linux Manual]]&lt;br /&gt;
[[hu:Client on Linux Manual]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=TakePlayerScreenShot&amp;diff=82148</id>
		<title>TakePlayerScreenShot</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=TakePlayerScreenShot&amp;diff=82148"/>
		<updated>2025-06-08T13:51:43Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Example */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function forces a client to capture the current screen output and send it back to the server. The image will contain the GTA HUD and the output of any dxDraw functions that are not flagged as 'post GUI'. The image specifically excludes the chat box and all GUI (including the client console). The result is received with the event [[onPlayerScreenShot]].&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool takePlayerScreenShot ( player thePlayer, int width, int height [, string tag = &amp;quot;&amp;quot;, int quality = 30, int maxBandwidth = 5000, int maxPacketSize = 500 ] )         &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
{{OOP||[[player]]:takeScreenShot||}}&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''thePlayer:''' the player to get the screen capture from.&lt;br /&gt;
*'''width:''' the width of the capture image.&lt;br /&gt;
*'''height:''' the height of the capture image.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
*'''tag:''' A string to help identify the screen capture. The string is passed to the matching [[onPlayerScreenShot]] event for your personal convenience.&lt;br /&gt;
*'''quality:''' Quality of the final JPEG image from 0 to 100. A lower value can reduce the memory used by the image considerably which will result in faster and less intrusive uploads.&lt;br /&gt;
*'''maxBandwidth:''' The amount of client upload bandwidth to use (in bytes per second) when sending the image.&lt;br /&gt;
*'''maxPacketSize: ''' The maximum size of one packet.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the function was successfully, ''false'' if invalid arguments are specified.&lt;br /&gt;
&lt;br /&gt;
==Examples==  &lt;br /&gt;
This example will take a player screenshot whenever a player takes a picture with the camera weapon and then send the picture to all clients, which will render the latest screenshot in the bottom right corner of their screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local screenSizeX,screenSizeY = guiGetScreenSize() -- save the current screen dimensions&lt;br /&gt;
local imgtexture&lt;br /&gt;
local takenBy&lt;br /&gt;
&lt;br /&gt;
function wepFire(weapon)&lt;br /&gt;
	if weapon == 43 then -- if the weapon the player just fired is the camera&lt;br /&gt;
		triggerServerEvent(&amp;quot;onPlayerTakesPhoto&amp;quot;,localPlayer)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onClientPlayerWeaponFire&amp;quot;,localPlayer,wepFire)&lt;br /&gt;
&lt;br /&gt;
function updateLatestPhoto(img)&lt;br /&gt;
	if imgtexture then -- clean up the old dxTextrue if there is one&lt;br /&gt;
		destroyElement(imgtexture)&lt;br /&gt;
	end&lt;br /&gt;
	imgtexture = dxCreateTexture(img) -- create a new dxTexture from the image data so that we can render it using dxDrawImage&lt;br /&gt;
	takenBy = &amp;quot;taken by &amp;quot;..getPlayerName(source) -- let's also credit the photographer&lt;br /&gt;
end&lt;br /&gt;
addEvent(&amp;quot;updatePhoto&amp;quot;,true)&lt;br /&gt;
addEventHandler(&amp;quot;updatePhoto&amp;quot;,root,updateLatestPhoto)&lt;br /&gt;
&lt;br /&gt;
function renderPhoto()&lt;br /&gt;
	if imgtexture then&lt;br /&gt;
		local sizeX, sizeY = 320, 240&lt;br /&gt;
		dxDrawImage(screenSizeX-sizeX,screenSizeY-sizeY,sizeX,sizeY,imgtexture) -- render the picture as well as the name of the photographer in the bottom right corner of the screen&lt;br /&gt;
		dxDrawText(takenBy,screenSizeX-sizeX,screenSizeY-sizeY,screenSizeX,screenSizeY,tocolor(0,0,0))&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onClientRender&amp;quot;,root,renderPhoto)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function requestScreenshot()&lt;br /&gt;
	takePlayerScreenShot(client,320,240,&amp;quot;cameraphoto&amp;quot;,50) -- the player just took a picture with the camera, let's request a screenshot to see what they took a photo of&lt;br /&gt;
end&lt;br /&gt;
addEvent(&amp;quot;onPlayerTakesPhoto&amp;quot;,true)&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerTakesPhoto&amp;quot;,root,requestScreenshot)&lt;br /&gt;
&lt;br /&gt;
function incomingPlayerScreenshot(res,status,img,timestamp,tag)&lt;br /&gt;
	if status == &amp;quot;ok&amp;quot; and tag == &amp;quot;cameraphoto&amp;quot; then -- make sure a picture was taken successfully and that we're the ones who requested this screenshot&lt;br /&gt;
		triggerClientEvent(&amp;quot;updatePhoto&amp;quot;,source,img)  -- trigger a client event to share the image with everyone on the server&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerScreenShot&amp;quot;,root,incomingPlayerScreenshot)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Player functions|server}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=TriggerClientEvent&amp;diff=82147</id>
		<title>TriggerClientEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=TriggerClientEvent&amp;diff=82147"/>
		<updated>2025-06-08T13:50:51Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--{{Needs_Checking|Something needs to be said about the steps required to help keep an event inside a resource. i.e. Setting 'theElement' to resourceRoot here, and setting the matching event handler's 'attachedTo' also to resourceRoot.}}&lt;br /&gt;
--&amp;gt;__NOTOC__&lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function triggers an event previously registered on a client. This is the primary means of passing information between the server and the client. Clients have a similar [[triggerServerEvent]] function that can do the reverse. You can treat this function as if it was an asynchronous function call, using [[triggerServerEvent]] to pass back any returned information if necessary. &lt;br /&gt;
&lt;br /&gt;
Almost any data types can be passed as expected, including [[element]]s and complex nested [[table]]s. Non-element MTA data types like xmlNodes or resource pointers will not be able to be passed as they do not necessarily have a valid representation on the client.&lt;br /&gt;
&lt;br /&gt;
Events are sent reliably, so clients will receive them, but there may be (but shouldn't be) a significant delay before they are received. You should take this into account when using them.&lt;br /&gt;
&lt;br /&gt;
Keep in mind the bandwidth issues when using events - don't pass a large list of arguments unless you really need to. '''It is marginally more efficient to pass one large event than two smaller ones'''.&lt;br /&gt;
{{Important Note | Non-element MTA data types like xmlNodes or resource pointers will not be able to be passed as they do not necessarily have a valid representation on the client.}}&lt;br /&gt;
{{Note|It is marginally more efficient to pass one large event than two smaller ones.}}&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool triggerClientEvent ( [ table/element sendTo = getRootElement(), ] string name, element sourceElement [, arguments... ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''name:''' The name of the event to trigger client side. You should register this event with [[addEvent]] and add at least one event handler using [[addEventHandler]].&lt;br /&gt;
*'''sourceElement:''' The element that is the [[Event system#Event handlers|source]] of the event.&lt;br /&gt;
{{Important Note|To save client CPU, you should avoid setting theElement to the [[root]] element where possible - it should be used as a last resort (rather questionable thing to do, limited to very specific tasks, if any). Using target element ([[player]] who should receive event, if expected to be delivered to particular one) is preferred and highly advisable. [[resourceRoot]] can also be used as alternative choice, if [[addEventHandler]] is bound to [[root]] element, or to [[resourceRoot]] when there is need to restrict event to single certain resource.}}&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''sendTo:''' The event will be sent to all [[player]]s that are children of the specified element. By default this is the root element, and hence the event is sent to all players. If you specify a single player it will just be sent to that player. This argument can also be a table of player elements.&lt;br /&gt;
*'''arguments...:''' A list of arguments to trigger with the event. You can pass any lua data type (except functions). You can also pass [[element]]s.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the event trigger has been sent, ''false'' if invalid arguments were specified.&lt;br /&gt;
&lt;br /&gt;
==Examples== &lt;br /&gt;
This example shows how you can pass a simple &amp;quot;Hello World&amp;quot; message from the server to the all the clients using an event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingHandler ( message )&lt;br /&gt;
    outputChatBox ( &amp;quot;The server says: &amp;quot; .. message )&lt;br /&gt;
end&lt;br /&gt;
addEvent( &amp;quot;onGreeting&amp;quot;, true )&lt;br /&gt;
addEventHandler( &amp;quot;onGreeting&amp;quot;, localPlayer, greetingHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When the command &amp;quot;greet&amp;quot; is executed (by typing it in the server console or the player's console), the server's ''greetingCommand'' function is called. This triggers the client side event ''onGreeting'' with the string ''&amp;quot;Hello World!&amp;quot;''. This event is then handled by the ''greetingHandler'' function client side which then displays the message.&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingCommand ( playerSource, commandName )&lt;br /&gt;
    triggerClientEvent ( playerSource, &amp;quot;onGreeting&amp;quot;, playerSource, &amp;quot;Hello World!&amp;quot; )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;greet&amp;quot;, greetingCommand )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows how you can pass a simple &amp;quot;Hello World&amp;quot; message from the server to '''a single''' client using an event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingHandler ( message )&lt;br /&gt;
    outputChatBox ( &amp;quot;The server says: &amp;quot; .. message )&lt;br /&gt;
end&lt;br /&gt;
addEvent( &amp;quot;onGreeting&amp;quot;, true )&lt;br /&gt;
addEventHandler( &amp;quot;onGreeting&amp;quot;, localPlayer, greetingHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This works like the first example except an extra ''thePlayer'' argument is specified for triggerClientEvent.&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingCommandOne ( playerSource, commandName, playerName )&lt;br /&gt;
    if playerName then&lt;br /&gt;
        local thePlayer = getPlayerFromName ( playerName )&lt;br /&gt;
        if thePlayer then&lt;br /&gt;
            triggerClientEvent ( thePlayer, &amp;quot;onGreeting&amp;quot;, thePlayer, &amp;quot;Hello World!&amp;quot; )&lt;br /&gt;
        else&lt;br /&gt;
            -- invalid player name specified&lt;br /&gt;
        end&lt;br /&gt;
    else&lt;br /&gt;
        -- No player name specified&lt;br /&gt;
    end &lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;greet_one&amp;quot;, greetingCommandOne )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example uses resourceRoot to avoid being called by resources other than the same one that was created. (it can still be circumvented with [[getResourceRootElement]] but it makes it more difficult for cheating players).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function nameFunction(message)&lt;br /&gt;
    if source == resourceRoot then&lt;br /&gt;
        outputChatBox(message)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
addEvent(&amp;quot;toClientSide&amp;quot;, true )&lt;br /&gt;
addEventHandler(&amp;quot;toClientSide&amp;quot;, resourceRoot, nameFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function commandFunction(source)&lt;br /&gt;
    triggerClientEvent(source, &amp;quot;toClientSide&amp;quot;, resourceRoot, &amp;quot;Hello World!&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler(&amp;quot;cool&amp;quot;, commandFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Changelog==&lt;br /&gt;
{{ChangelogHeader}}&lt;br /&gt;
{{ChangelogItem|1.3.0-9.04570|Added option to use a list of player elements for the 'sendTo' argument}}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Event functions|server}}&lt;br /&gt;
[[ru:triggerClientEvent]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=TriggerClientEvent&amp;diff=82146</id>
		<title>TriggerClientEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=TriggerClientEvent&amp;diff=82146"/>
		<updated>2025-06-08T13:50:29Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--{{Needs_Checking|Something needs to be said about the steps required to help keep an event inside a resource. i.e. Setting 'theElement' to resourceRoot here, and setting the matching event handler's 'attachedTo' also to resourceRoot.}}&lt;br /&gt;
--&amp;gt;__NOTOC__&lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function triggers an event previously registered on a client. This is the primary means of passing information between the server and the client. Clients have a similar [[triggerServerEvent]] function that can do the reverse. You can treat this function as if it was an asynchronous function call, using [[triggerServerEvent]] to pass back any returned information if necessary. &lt;br /&gt;
&lt;br /&gt;
Almost any data types can be passed as expected, including [[element]]s and complex nested [[table]]s. Non-element MTA data types like xmlNodes or resource pointers will not be able to be passed as they do not necessarily have a valid representation on the client.&lt;br /&gt;
&lt;br /&gt;
Events are sent reliably, so clients will receive them, but there may be (but shouldn't be) a significant delay before they are received. You should take this into account when using them.&lt;br /&gt;
&lt;br /&gt;
Keep in mind the bandwidth issues when using events - don't pass a large list of arguments unless you really need to. '''It is marginally more efficient to pass one large event than two smaller ones'''.&lt;br /&gt;
{{Important Note | Non-element MTA data types like xmlNodes or resource pointers will not be able to be passed as they do not necessarily have a valid representation on the client.}}&lt;br /&gt;
{{Note|It is marginally more efficient to pass one large event than two smaller ones.}}&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool triggerClientEvent ( [ table/element sendTo = getRootElement(), ] string name, element sourceElement [, arguments... ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''name:''' The name of the event to trigger client side. You should register this event with [[addEvent]] and add at least one event handler using [[addEventHandler]].&lt;br /&gt;
*'''sourceElement:''' The element that is the [[Event system#Event handlers|source]] of the event.&lt;br /&gt;
{{Important Note|To save client CPU, you should avoid setting theElement to the [[root]] element where possible - it should be used as a last resort (rather questionable thing to do, limited to very specific tasks, if any). Using target element ([[player]] who should receive event, if expected to be delivered to particular one) is preferred and highly advisable. [[resourceRoot]] can also be used as alternative choice, if [[addEventHandler]] is bound to [[root]] element, or to [[resourceRoot]] when there is need to restrict event to single certain resource.}}&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''sendTo:''' The event will be sent to all [[player]]s that are children of the specified element. By default this is the root element, and hence the event is sent to all players. If you specify a single player it will just be sent to that player. This argument can also be a table of player elements.&lt;br /&gt;
*'''arguments...:''' A list of arguments to trigger with the event. You can pass any lua data type (except functions). You can also pass [[element]]s.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the event trigger has been sent, ''false'' if invalid arguments were specified.&lt;br /&gt;
&lt;br /&gt;
==Examples== &lt;br /&gt;
This example shows how you can pass a simple &amp;quot;Hello World&amp;quot; message from the server to the all the clients using an event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingHandler ( message )&lt;br /&gt;
    outputChatBox ( &amp;quot;The server says: &amp;quot; .. message )&lt;br /&gt;
end&lt;br /&gt;
addEvent( &amp;quot;onGreeting&amp;quot;, true )&lt;br /&gt;
addEventHandler( &amp;quot;onGreeting&amp;quot;, localPlayer, greetingHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When the command &amp;quot;greet&amp;quot; is executed (by typing it in the server console or the player's console), the server's ''greetingCommand'' function is called. This triggers the client side event ''onGreeting'' with the string ''&amp;quot;Hello World!&amp;quot;''. This event is then handled by the ''greetingHandler'' function client side which then displays the message.&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingCommand ( playerSource, commandName )&lt;br /&gt;
    triggerClientEvent ( playerSource, &amp;quot;onGreeting&amp;quot;, playerSource, &amp;quot;Hello World!&amp;quot; )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;greet&amp;quot;, greetingCommand )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows how you can pass a simple &amp;quot;Hello World&amp;quot; message from the server to '''a single''' client using an event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingHandler ( message )&lt;br /&gt;
    outputChatBox ( &amp;quot;The server says: &amp;quot; .. message )&lt;br /&gt;
end&lt;br /&gt;
addEvent( &amp;quot;onGreeting&amp;quot;, true )&lt;br /&gt;
addEventHandler( &amp;quot;onGreeting&amp;quot;, localPlayer, greetingHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingCommandOne ( playerSource, commandName, playerName )&lt;br /&gt;
    if playerName then&lt;br /&gt;
        local thePlayer = getPlayerFromName ( playerName )&lt;br /&gt;
        if thePlayer then&lt;br /&gt;
            triggerClientEvent ( thePlayer, &amp;quot;onGreeting&amp;quot;, thePlayer, &amp;quot;Hello World!&amp;quot; )&lt;br /&gt;
        else&lt;br /&gt;
            -- invalid player name specified&lt;br /&gt;
        end&lt;br /&gt;
    else&lt;br /&gt;
        -- No player name specified&lt;br /&gt;
    end &lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;greet_one&amp;quot;, greetingCommandOne )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This works like the first example except an extra ''thePlayer'' argument is specified for triggerClientEvent.&lt;br /&gt;
&lt;br /&gt;
This example uses resourceRoot to avoid being called by resources other than the same one that was created. (it can still be circumvented with [[getResourceRootElement]] but it makes it more difficult for cheating players).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function nameFunction(message)&lt;br /&gt;
    if source == resourceRoot then&lt;br /&gt;
        outputChatBox(message)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
addEvent(&amp;quot;toClientSide&amp;quot;, true )&lt;br /&gt;
addEventHandler(&amp;quot;toClientSide&amp;quot;, resourceRoot, nameFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function commandFunction(source)&lt;br /&gt;
    triggerClientEvent(source, &amp;quot;toClientSide&amp;quot;, resourceRoot, &amp;quot;Hello World!&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler(&amp;quot;cool&amp;quot;, commandFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Changelog==&lt;br /&gt;
{{ChangelogHeader}}&lt;br /&gt;
{{ChangelogItem|1.3.0-9.04570|Added option to use a list of player elements for the 'sendTo' argument}}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Event functions|server}}&lt;br /&gt;
[[ru:triggerClientEvent]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=TriggerClientEvent&amp;diff=82145</id>
		<title>TriggerClientEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=TriggerClientEvent&amp;diff=82145"/>
		<updated>2025-06-08T13:50:17Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--{{Needs_Checking|Something needs to be said about the steps required to help keep an event inside a resource. i.e. Setting 'theElement' to resourceRoot here, and setting the matching event handler's 'attachedTo' also to resourceRoot.}}&lt;br /&gt;
--&amp;gt;__NOTOC__&lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function triggers an event previously registered on a client. This is the primary means of passing information between the server and the client. Clients have a similar [[triggerServerEvent]] function that can do the reverse. You can treat this function as if it was an asynchronous function call, using [[triggerServerEvent]] to pass back any returned information if necessary. &lt;br /&gt;
&lt;br /&gt;
Almost any data types can be passed as expected, including [[element]]s and complex nested [[table]]s. Non-element MTA data types like xmlNodes or resource pointers will not be able to be passed as they do not necessarily have a valid representation on the client.&lt;br /&gt;
&lt;br /&gt;
Events are sent reliably, so clients will receive them, but there may be (but shouldn't be) a significant delay before they are received. You should take this into account when using them.&lt;br /&gt;
&lt;br /&gt;
Keep in mind the bandwidth issues when using events - don't pass a large list of arguments unless you really need to. '''It is marginally more efficient to pass one large event than two smaller ones'''.&lt;br /&gt;
{{Important Note | Non-element MTA data types like xmlNodes or resource pointers will not be able to be passed as they do not necessarily have a valid representation on the client.}}&lt;br /&gt;
{{Note|It is marginally more efficient to pass one large event than two smaller ones.}}&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool triggerClientEvent ( [ table/element sendTo = getRootElement(), ] string name, element sourceElement [, arguments... ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''name:''' The name of the event to trigger client side. You should register this event with [[addEvent]] and add at least one event handler using [[addEventHandler]].&lt;br /&gt;
*'''sourceElement:''' The element that is the [[Event system#Event handlers|source]] of the event.&lt;br /&gt;
{{Important Note|To save client CPU, you should avoid setting theElement to the [[root]] element where possible - it should be used as a last resort (rather questionable thing to do, limited to very specific tasks, if any). Using target element ([[player]] who should receive event, if expected to be delivered to particular one) is preferred and highly advisable. [[resourceRoot]] can also be used as alternative choice, if [[addEventHandler]] is bound to [[root]] element, or to [[resourceRoot]] when there is need to restrict event to single certain resource.}}&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''sendTo:''' The event will be sent to all [[player]]s that are children of the specified element. By default this is the root element, and hence the event is sent to all players. If you specify a single player it will just be sent to that player. This argument can also be a table of player elements.&lt;br /&gt;
*'''arguments...:''' A list of arguments to trigger with the event. You can pass any lua data type (except functions). You can also pass [[element]]s.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the event trigger has been sent, ''false'' if invalid arguments were specified.&lt;br /&gt;
&lt;br /&gt;
==Examples== &lt;br /&gt;
This example shows how you can pass a simple &amp;quot;Hello World&amp;quot; message from the server to the all the clients using an event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingHandler ( message )&lt;br /&gt;
    outputChatBox ( &amp;quot;The server says: &amp;quot; .. message )&lt;br /&gt;
end&lt;br /&gt;
addEvent( &amp;quot;onGreeting&amp;quot;, true )&lt;br /&gt;
addEventHandler( &amp;quot;onGreeting&amp;quot;, localPlayer, greetingHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When the command &amp;quot;greet&amp;quot; is executed (by typing it in the server console or the player's console), the server's ''greetingCommand'' function is called. This triggers the client side event ''onGreeting'' with the string ''&amp;quot;Hello World!&amp;quot;''. This event is then handled by the ''greetingHandler'' function client side which then displays the message.&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingCommand ( playerSource, commandName )&lt;br /&gt;
    triggerClientEvent ( playerSource, &amp;quot;onGreeting&amp;quot;, playerSource, &amp;quot;Hello World!&amp;quot; )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;greet&amp;quot;, greetingCommand )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows how you can pass a simple &amp;quot;Hello World&amp;quot; message from the server to '''a single''' client using an event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingHandler ( message )&lt;br /&gt;
    outputChatBox ( &amp;quot;The server says: &amp;quot; .. message )&lt;br /&gt;
end&lt;br /&gt;
addEvent( &amp;quot;onGreeting&amp;quot;, true )&lt;br /&gt;
addEventHandler( &amp;quot;onGreeting&amp;quot;, localPlayer, greetingHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingCommandOne ( playerSource, commandName, playerName )&lt;br /&gt;
    if playerName then&lt;br /&gt;
        local thePlayer = getPlayerFromName ( playerName )&lt;br /&gt;
        if thePlayer then&lt;br /&gt;
            triggerClientEvent ( thePlayer, &amp;quot;onGreeting&amp;quot;, thePlayer, &amp;quot;Hello World!&amp;quot; )&lt;br /&gt;
        else&lt;br /&gt;
            -- invalid player name specified&lt;br /&gt;
        end&lt;br /&gt;
    else&lt;br /&gt;
        -- No player name specified&lt;br /&gt;
    end &lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;greet_one&amp;quot;, greetingCommandOne )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This works like the first example except an extra ''thePlayer'' argument is specified for triggerClientEvent.&lt;br /&gt;
&lt;br /&gt;
This example uses resourceRoot to avoid being called by resources other than the same one that was created. (it can still be circumvented with [[getResourceRootElement]] but it makes it more difficult for cheating players).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function nameFunction(message)&lt;br /&gt;
    if source == resourceRoot then&lt;br /&gt;
        outputChatBox(message)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
addEvent(&amp;quot;toClientSide&amp;quot;, true )&lt;br /&gt;
addEventHandler(&amp;quot;toClientSide&amp;quot;, resourceRoot, nameFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function commandFunction(source)&lt;br /&gt;
    triggerClientEvent(source, &amp;quot;toClientSide&amp;quot;, resourceRoot, &amp;quot;Hello World!&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler(&amp;quot;cool&amp;quot;, commandFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Changelog==&lt;br /&gt;
{{ChangelogHeader}}&lt;br /&gt;
{{ChangelogItem|1.3.0-9.04570|Added option to use a list of player elements for the 'sendTo' argument}}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Event functions|server}}&lt;br /&gt;
[[ru:triggerClientEvent]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=TriggerClientEvent&amp;diff=82144</id>
		<title>TriggerClientEvent</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=TriggerClientEvent&amp;diff=82144"/>
		<updated>2025-06-08T13:49:53Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--{{Needs_Checking|Something needs to be said about the steps required to help keep an event inside a resource. i.e. Setting 'theElement' to resourceRoot here, and setting the matching event handler's 'attachedTo' also to resourceRoot.}}&lt;br /&gt;
--&amp;gt;__NOTOC__&lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function triggers an event previously registered on a client. This is the primary means of passing information between the server and the client. Clients have a similar [[triggerServerEvent]] function that can do the reverse. You can treat this function as if it was an asynchronous function call, using [[triggerServerEvent]] to pass back any returned information if necessary. &lt;br /&gt;
&lt;br /&gt;
Almost any data types can be passed as expected, including [[element]]s and complex nested [[table]]s. Non-element MTA data types like xmlNodes or resource pointers will not be able to be passed as they do not necessarily have a valid representation on the client.&lt;br /&gt;
&lt;br /&gt;
Events are sent reliably, so clients will receive them, but there may be (but shouldn't be) a significant delay before they are received. You should take this into account when using them.&lt;br /&gt;
&lt;br /&gt;
Keep in mind the bandwidth issues when using events - don't pass a large list of arguments unless you really need to. '''It is marginally more efficient to pass one large event than two smaller ones'''.&lt;br /&gt;
{{Important Note | Non-element MTA data types like xmlNodes or resource pointers will not be able to be passed as they do not necessarily have a valid representation on the client.}}&lt;br /&gt;
{{Note|It is marginally more efficient to pass one large event than two smaller ones.}}&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool triggerClientEvent ( [ table/element sendTo = getRootElement(), ] string name, element sourceElement [, arguments... ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''name:''' The name of the event to trigger client side. You should register this event with [[addEvent]] and add at least one event handler using [[addEventHandler]].&lt;br /&gt;
*'''sourceElement:''' The element that is the [[Event system#Event handlers|source]] of the event.&lt;br /&gt;
{{Important Note|To save client CPU, you should avoid setting theElement to the [[root]] element where possible - it should be used as a last resort (rather questionable thing to do, limited to very specific tasks, if any). Using target element ([[player]] who should receive event, if expected to be delivered to particular one) is preferred and highly advisable. [[resourceRoot]] can also be used as alternative choice, if [[addEventHandler]] is bound to [[root]] element, or to [[resourceRoot]] when there is need to restrict event to single certain resource.}}&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''sendTo:''' The event will be sent to all [[player]]s that are children of the specified element. By default this is the root element, and hence the event is sent to all players. If you specify a single player it will just be sent to that player. This argument can also be a table of player elements.&lt;br /&gt;
*'''arguments...:''' A list of arguments to trigger with the event. You can pass any lua data type (except functions). You can also pass [[element]]s.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the event trigger has been sent, ''false'' if invalid arguments were specified.&lt;br /&gt;
&lt;br /&gt;
==Examples== &lt;br /&gt;
This example shows how you can pass a simple &amp;quot;Hello World&amp;quot; message from the server to the all the clients using an event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingHandler ( message )&lt;br /&gt;
    outputChatBox ( &amp;quot;The server says: &amp;quot; .. message )&lt;br /&gt;
end&lt;br /&gt;
addEvent( &amp;quot;onGreeting&amp;quot;, true )&lt;br /&gt;
addEventHandler( &amp;quot;onGreeting&amp;quot;, localPlayer, greetingHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingCommand ( playerSource, commandName )&lt;br /&gt;
    triggerClientEvent ( playerSource, &amp;quot;onGreeting&amp;quot;, playerSource, &amp;quot;Hello World!&amp;quot; )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;greet&amp;quot;, greetingCommand )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When the command &amp;quot;greet&amp;quot; is executed (by typing it in the server console or the player's console), the server's ''greetingCommand'' function is called. This triggers the client side event ''onGreeting'' with the string ''&amp;quot;Hello World!&amp;quot;''. This event is then handled by the ''greetingHandler'' function client side which then displays the message.&lt;br /&gt;
&lt;br /&gt;
This example shows how you can pass a simple &amp;quot;Hello World&amp;quot; message from the server to '''a single''' client using an event.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingHandler ( message )&lt;br /&gt;
    outputChatBox ( &amp;quot;The server says: &amp;quot; .. message )&lt;br /&gt;
end&lt;br /&gt;
addEvent( &amp;quot;onGreeting&amp;quot;, true )&lt;br /&gt;
addEventHandler( &amp;quot;onGreeting&amp;quot;, localPlayer, greetingHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function greetingCommandOne ( playerSource, commandName, playerName )&lt;br /&gt;
    if playerName then&lt;br /&gt;
        local thePlayer = getPlayerFromName ( playerName )&lt;br /&gt;
        if thePlayer then&lt;br /&gt;
            triggerClientEvent ( thePlayer, &amp;quot;onGreeting&amp;quot;, thePlayer, &amp;quot;Hello World!&amp;quot; )&lt;br /&gt;
        else&lt;br /&gt;
            -- invalid player name specified&lt;br /&gt;
        end&lt;br /&gt;
    else&lt;br /&gt;
        -- No player name specified&lt;br /&gt;
    end &lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;greet_one&amp;quot;, greetingCommandOne )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This works like the first example except an extra ''thePlayer'' argument is specified for triggerClientEvent.&lt;br /&gt;
&lt;br /&gt;
This example uses resourceRoot to avoid being called by resources other than the same one that was created. (it can still be circumvented with [[getResourceRootElement]] but it makes it more difficult for cheating players).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function nameFunction(message)&lt;br /&gt;
    if source == resourceRoot then&lt;br /&gt;
        outputChatBox(message)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
addEvent(&amp;quot;toClientSide&amp;quot;, true )&lt;br /&gt;
addEventHandler(&amp;quot;toClientSide&amp;quot;, resourceRoot, nameFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function commandFunction(source)&lt;br /&gt;
    triggerClientEvent(source, &amp;quot;toClientSide&amp;quot;, resourceRoot, &amp;quot;Hello World!&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler(&amp;quot;cool&amp;quot;, commandFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Changelog==&lt;br /&gt;
{{ChangelogHeader}}&lt;br /&gt;
{{ChangelogItem|1.3.0-9.04570|Added option to use a list of player elements for the 'sendTo' argument}}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Event functions|server}}&lt;br /&gt;
[[ru:triggerClientEvent]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=SetGameType&amp;diff=82143</id>
		<title>SetGameType</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=SetGameType&amp;diff=82143"/>
		<updated>2025-06-08T13:49:28Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function sets a string containing a name for the game type. This should be the game-mode that is active, for example &amp;quot;Capture The Flag&amp;quot; or &amp;quot;Deathmatch&amp;quot;. This is then displayed in the server browser and external server browsers.&lt;br /&gt;
&lt;br /&gt;
'''It should be noted that [[mapmanager]] handles this automatically for gamemodes that utilise the map/gamemode system.'''&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setGameType ( string gameType )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
[[File:GameType.png|thumb|Gamemode column that shows a server's game type.]]&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''gameType:''' A string containing a name for the game mode, or ''false'' to clear it. '''(MAX 200 characters)'''&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the game type was set, ''false'' if an invalid argument was passed to the function.&lt;br /&gt;
&lt;br /&gt;
==Examples== &lt;br /&gt;
This example sets the game type to ''Capture The Flag''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
setGameType ( &amp;quot;Capture The Flag&amp;quot; )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example adds a command to change the game type.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function setNewGameType( source, commandName, newGameType )&lt;br /&gt;
    local oldGameType = getGameType() -- check old Game Type&lt;br /&gt;
    setGameType( newGameType ) -- set new Game Type&lt;br /&gt;
    outputChatBox( &amp;quot;Game Type &amp;quot; .. oldGameType .. &amp;quot; changed to &amp;quot; .. newGameType .. &amp;quot;.&amp;quot;, getRootElement(), 255, 128, 0 )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler( &amp;quot;setgametype&amp;quot;, setNewGameType )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Announce functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=AddBan&amp;diff=82142</id>
		<title>AddBan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=AddBan&amp;diff=82142"/>
		<updated>2025-06-08T13:49:12Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function will add a [[ban]] for the specified IP/username/serial to the server.&lt;br /&gt;
{{Note|One of the three: IP, Username or Serial have to be specified.}}&lt;br /&gt;
{{note| Don't forget to give admin rights to the resource, in which you are using addBan function or it won't work.}}&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
ban addBan ( string IP, string Username, string Serial, [ player responsibleElement, string reason, int seconds = 0 ] )         &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{OOP||[[Ban]]}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''IP:''' The IP to be banned. If you don't want to ban by IP, set this to ''nil''.&lt;br /&gt;
*'''Username:''' The [http://community.mtasa.com/ MTA Community] username to be banned (now obsolete). If you don't want to ban by username, set this to ''nil''.&lt;br /&gt;
*'''Serial:''' The serial to be banned. If you don't want to ban by serial, set this to ''nil''.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''responsibleElement:''' The element that is responsible for banning the IP/username/serial. This can be a player or the root ([[getRootElement]]()).&lt;br /&gt;
*'''reason:''' The reason the IP/username/serial will be banned from the server.&lt;br /&gt;
*'''seconds:''' The amount of seconds the player will be banned from the server for. This can be 0 for an infinite amount of time.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns the new [[ban]] if the IP/username/serial was banned successfully, ''false'' if invalid arguments are specified.&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
This example bans a player's IP with the reason &amp;quot;Requested&amp;quot; when they type &amp;quot;/ban-me&amp;quot;.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function banMe ( source, command ) -- The function header and where source is defined&lt;br /&gt;
	local ipToBan = getPlayerIP ( source ) -- Get the player's IP&lt;br /&gt;
	addBan ( ipToBan, nil, nil, source, &amp;quot;Requested&amp;quot; ) -- Ban him with the reason; Requested&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;ban-me&amp;quot;, banMe ) -- Make it trigger when a player types &amp;quot;/ban-me&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example add command to ban player serial.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function banSerial( source, command, noob, reason )&lt;br /&gt;
   if ( noob ) then&lt;br /&gt;
      local theNoob = getPlayerFromName( noob )&lt;br /&gt;
      if ( theNoob ) then&lt;br /&gt;
         local theNoobSerial = getPlayerSerial( theNoob )&lt;br /&gt;
         addBan( nil, nil, theNoobSerial, source, reason )&lt;br /&gt;
      end&lt;br /&gt;
   end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler( &amp;quot;ban-serial&amp;quot;, banSerial )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Admin functions}}&lt;br /&gt;
[[ru:addBan]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=AddBan&amp;diff=82141</id>
		<title>AddBan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=AddBan&amp;diff=82141"/>
		<updated>2025-06-08T13:48:57Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function will add a [[ban]] for the specified IP/username/serial to the server.&lt;br /&gt;
{{Note|One of the three: IP, Username or Serial have to be specified.}}&lt;br /&gt;
{{note| Don't forget to give admin rights to the resource, in which you are using addBan function or it won't work.}}&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
ban addBan ( string IP, string Username, string Serial, [ player responsibleElement, string reason, int seconds = 0 ] )         &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{OOP||[[Ban]]}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''IP:''' The IP to be banned. If you don't want to ban by IP, set this to ''nil''.&lt;br /&gt;
*'''Username:''' The [http://community.mtasa.com/ MTA Community] username to be banned (now obsolete). If you don't want to ban by username, set this to ''nil''.&lt;br /&gt;
*'''Serial:''' The serial to be banned. If you don't want to ban by serial, set this to ''nil''.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''responsibleElement:''' The element that is responsible for banning the IP/username/serial. This can be a player or the root ([[getRootElement]]()).&lt;br /&gt;
*'''reason:''' The reason the IP/username/serial will be banned from the server.&lt;br /&gt;
*'''seconds:''' The amount of seconds the player will be banned from the server for. This can be 0 for an infinite amount of time.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns the new [[ban]] if the IP/username/serial was banned successfully, ''false'' if invalid arguments are specified.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example bans a player's IP with the reason &amp;quot;Requested&amp;quot; when they type &amp;quot;/ban-me&amp;quot;.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function banMe ( source, command ) -- The function header and where source is defined&lt;br /&gt;
	local ipToBan = getPlayerIP ( source ) -- Get the player's IP&lt;br /&gt;
	addBan ( ipToBan, nil, nil, source, &amp;quot;Requested&amp;quot; ) -- Ban him with the reason; Requested&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;ban-me&amp;quot;, banMe ) -- Make it trigger when a player types &amp;quot;/ban-me&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example 2==&lt;br /&gt;
This example add command to ban player serial.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function banSerial( source, command, noob, reason )&lt;br /&gt;
   if ( noob ) then&lt;br /&gt;
      local theNoob = getPlayerFromName( noob )&lt;br /&gt;
      if ( theNoob ) then&lt;br /&gt;
         local theNoobSerial = getPlayerSerial( theNoob )&lt;br /&gt;
         addBan( nil, nil, theNoobSerial, source, reason )&lt;br /&gt;
      end&lt;br /&gt;
   end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler( &amp;quot;ban-serial&amp;quot;, banSerial )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Admin functions}}&lt;br /&gt;
[[ru:addBan]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=AddBan&amp;diff=82140</id>
		<title>AddBan</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=AddBan&amp;diff=82140"/>
		<updated>2025-06-08T13:48:14Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Syntax */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server function}}&lt;br /&gt;
This function will add a [[ban]] for the specified IP/username/serial to the server.&lt;br /&gt;
{{Note|One of the three: IP, Username or Serial have to be specified.}}&lt;br /&gt;
{{note| Don't forget to give admin rights to the resource, in which you are using addBan function or it won't work.}}&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
ban addBan ( string IP, string Username, string Serial, [ player responsibleElement, string reason, int seconds = 0 ] )         &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{OOP||[[Ban]]}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''IP:''' The IP to be banned. If you don't want to ban by IP, set this to ''nil''.&lt;br /&gt;
'''or'''&lt;br /&gt;
*'''Username:''' The [http://community.mtasa.com/ MTA Community] username to be banned (now obsolete). If you don't want to ban by username, set this to ''nil''.&lt;br /&gt;
'''or'''&lt;br /&gt;
*'''Serial:''' The serial to be banned. If you don't want to ban by serial, set this to ''nil''.&lt;br /&gt;
''' or any combination.'''&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''responsibleElement:''' The element that is responsible for banning the IP/username/serial. This can be a player or the root ([[getRootElement]]()).&lt;br /&gt;
*'''reason:''' The reason the IP/username/serial will be banned from the server.&lt;br /&gt;
*'''seconds:''' The amount of seconds the player will be banned from the server for. This can be 0 for an infinite amount of time.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns the new [[ban]] if the IP/username/serial was banned successfully, ''false'' if invalid arguments are specified.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example bans a player's IP with the reason &amp;quot;Requested&amp;quot; when they type &amp;quot;/ban-me&amp;quot;.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function banMe ( source, command ) -- The function header and where source is defined&lt;br /&gt;
	local ipToBan = getPlayerIP ( source ) -- Get the player's IP&lt;br /&gt;
	addBan ( ipToBan, nil, nil, source, &amp;quot;Requested&amp;quot; ) -- Ban him with the reason; Requested&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;ban-me&amp;quot;, banMe ) -- Make it trigger when a player types &amp;quot;/ban-me&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example 2==&lt;br /&gt;
This example add command to ban player serial.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function banSerial( source, command, noob, reason )&lt;br /&gt;
   if ( noob ) then&lt;br /&gt;
      local theNoob = getPlayerFromName( noob )&lt;br /&gt;
      if ( theNoob ) then&lt;br /&gt;
         local theNoobSerial = getPlayerSerial( theNoob )&lt;br /&gt;
         addBan( nil, nil, theNoobSerial, source, reason )&lt;br /&gt;
      end&lt;br /&gt;
   end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler( &amp;quot;ban-serial&amp;quot;, banSerial )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Admin functions}}&lt;br /&gt;
[[ru:addBan]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GetGroundPosition&amp;diff=82139</id>
		<title>GetGroundPosition</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GetGroundPosition&amp;diff=82139"/>
		<updated>2025-06-08T13:46:53Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function gets the Z level of the highest ground below a point. &lt;br /&gt;
&lt;br /&gt;
It is required that the point is near enough to the local player so that it's within the area where collision data is loaded. If this is not the case, an incorrect position will be returned.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
float getGroundPosition ( float x, float y, float z )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''x:''' A floating point number representing the X world coordinate of the point.&lt;br /&gt;
*'''y:''' A floating point number representing the Y world coordinate of the point.&lt;br /&gt;
*'''z:''' A floating point number representing the Z world coordinate of the point.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a float with the highest ground-level Z coord if parameters are valid, ''0'' if the point you tried to test is outside the loaded world map, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Examples== &lt;br /&gt;
This clientside function determines if a player is under a ceiling or not.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function isPlayerUnderCover ( thePlayer )&lt;br /&gt;
	--we get the player's position&lt;br /&gt;
	local px, py, pz = getElementPosition ( thePlayer )&lt;br /&gt;
	--we'll check for ground level at the player's position, and also 500 units over him.&lt;br /&gt;
	--if these ground levels match, it must mean there were no obstacles (such as a ceiling) over the player,&lt;br /&gt;
	return getGroundPosition ( px, py, pz ) ~= getGroundPosition ( px, py, pz + 530 )&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This clientside function returns the distance between you and the ground (if there is)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function getGroundDistance( thePlayer, zHeight  )&lt;br /&gt;
	local x,y,z = getElementPosition(thePlayer) -- get position&lt;br /&gt;
    local groundPosition = getGroundPosition(x,y,z) -- get default ground pos &lt;br /&gt;
	local hit, x1, y1, groundPosition = processLineOfSight(x,y,z+1,x,y,z-(zHeight+0.7))  -- using zHeight get a better ground position&lt;br /&gt;
	local distance = getDistanceBetweenPoints3D(x, y, z, x,y, (groundPosition or z))  -- get distance between both positions &lt;br /&gt;
	return distance -- return the distance&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Some cool examples:  &lt;br /&gt;
addCommandHandler(&amp;quot;gdistance&amp;quot;,function(_, amount)&lt;br /&gt;
    local distance = getGroundDistance(localPlayer, tonumber(amount))&lt;br /&gt;
    outputChatBox(&amp;quot;The distance to reach ground is: &amp;quot; .. distance)&lt;br /&gt;
end)&lt;br /&gt;
&lt;br /&gt;
addCommandHandler(&amp;quot;do_im_flying&amp;quot;,function()&lt;br /&gt;
    local distance = getGroundDistance(localPlayer, 20)&lt;br /&gt;
    if distance &amp;gt; 1 then &lt;br /&gt;
        outputChatBox(&amp;quot;Superman!! the distance between you and ground is: &amp;quot; .. distance)&lt;br /&gt;
    else &lt;br /&gt;
        outputChatBox(&amp;quot;naah&amp;quot;)&lt;br /&gt;
    end &lt;br /&gt;
end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Client_world_functions}}&lt;br /&gt;
&lt;br /&gt;
[[ru:getGroundPosition]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GetColorFilter&amp;diff=82138</id>
		<title>GetColorFilter</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GetColorFilter&amp;diff=82138"/>
		<updated>2025-06-08T13:46:34Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
{{Added feature/item|3.0161|1.6.0|22188|This function is used to get the values of color filtering.}}&lt;br /&gt;
{{Tip|Normally the game is adding these colors to a screen to simulate weather effects. Sometimes it can be important to disable these effects. You can get rid of the effects by calling [[setColorFilter]] with zero values.}} &lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
int, int, int, int, int, int, int, int getColorFilter ( bool isOriginal )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''isOriginal:''' A bool indicates if the return values of color filter are GTASA original or changed by [[setColorFilter]]. If this is set to ''false'', the return values would be the color filter that is currently being used.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns 8 ''[[integer|integers]]'', of which the first 4 indicate the color (R,G,B,A) of color filter A, and the last 4 indicate the color (R,G,B,A) of  color filter B.&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
This example corrects color of dxDrawMaterialLine3D. But this method has some limit.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local testRT = dxCreateRenderTarget(32,32,true)&lt;br /&gt;
&lt;br /&gt;
x,y,z = 0, 0, 4&lt;br /&gt;
size = 4&lt;br /&gt;
addEventHandler(&amp;quot;onClientRender&amp;quot;, root, function()&lt;br /&gt;
	dxSetRenderTarget(testRT,true)&lt;br /&gt;
	dxDrawRectangle(0,0,32,32,tocolor(255,255,255,255))&lt;br /&gt;
	dxSetRenderTarget()&lt;br /&gt;
&lt;br /&gt;
	local aR,aG,aB,aA,bR,bG,bB,bA = getColorFilter(false)							--Get current color filter&lt;br /&gt;
	local cR,cG,cB = 127/255+(aR*aA+bR*bA)/65535*0.5, 127/255+(aG*aA+bG*bA)/65535*0.5, 127/255+(aB*aA+bB*bA)/65535*0.5	--Calculate the result color of color filter&lt;br /&gt;
	dxDrawMaterialLine3D(x+size, y+size, z-0.95, x-size, y-size, z-0.95,false, testRT, size*2,tocolor(127, 127, 127, 255))&lt;br /&gt;
	dxDrawMaterialLine3D(x+size+20, y+size, z-0.95, x-size+20, y-size, z-0.95,false, testRT, size*2,tocolor(127/cR, 127/cG, 127/cB, 255))&lt;br /&gt;
end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example corrects color of dxDrawMaterialLine3D using shader&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local shader = [[&lt;br /&gt;
float3 colorFilter = float3(1,1,1);&lt;br /&gt;
texture sourceTexture;&lt;br /&gt;
&lt;br /&gt;
sampler2D SamplerTex = sampler_state{&lt;br /&gt;
    Texture = sourceTexture;&lt;br /&gt;
    MipFilter = Linear;&lt;br /&gt;
    MinFilter = Linear;&lt;br /&gt;
    MagFilter = Linear;&lt;br /&gt;
    AddressU = Mirror;&lt;br /&gt;
    AddressV = Mirror;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
float4 colorFilterRemover(float4 color:COLOR0, float2 UV:TEXCOORD0) : COLOR0{&lt;br /&gt;
	color *= tex2D(SamplerTex, UV);&lt;br /&gt;
	color.rgb /= colorFilter;&lt;br /&gt;
	return color;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
technique cFilterRemover{&lt;br /&gt;
	pass P0{&lt;br /&gt;
		PixelShader = compile ps_2_0 colorFilterRemover();&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
]]&lt;br /&gt;
&lt;br /&gt;
local cFilterRemover = dxCreateShader(shader)&lt;br /&gt;
local testRT = dxCreateRenderTarget(32,32,true)&lt;br /&gt;
dxSetShaderValue(cFilterRemover,&amp;quot;sourceTexture&amp;quot;,testRT)&lt;br /&gt;
&lt;br /&gt;
x,y,z = 0, 0, 4&lt;br /&gt;
size = 4&lt;br /&gt;
addEventHandler(&amp;quot;onClientRender&amp;quot;, root, function()&lt;br /&gt;
	dxSetRenderTarget(testRT,true)&lt;br /&gt;
	dxDrawRectangle(0,0,32,32,tocolor(255,255,255,255))&lt;br /&gt;
	dxSetRenderTarget()&lt;br /&gt;
&lt;br /&gt;
	local aR,aG,aB,aA,bR,bG,bB,bA = getColorFilter(false)							--Get current color filter&lt;br /&gt;
	local cR,cG,cB = 127+(aR*aA+bR*bA)/255*0.5, 127+(aG*aA+bG*bA)/255*0.5, 127+(aB*aA+bB*bA)/255*0.5	--Calculate the result color of color filter&lt;br /&gt;
	dxSetShaderValue(cFilterRemover,&amp;quot;colorFilter&amp;quot;,cR/255,cG/255,cB/255)					--Apply to the color filter remover shader&lt;br /&gt;
	dxDrawMaterialLine3D(x+size, y+size, z-0.95, x-size, y-size, z-0.95,false, cFilterRemover, size*2,tocolor(127, 127, 127, 255))&lt;br /&gt;
	dxDrawMaterialLine3D(x+size+20, y+size, z-0.95, x-size+20, y-size, z-0.95,false, testRT, size*2,tocolor(127, 127, 127, 255))&lt;br /&gt;
end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{World functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=CreateTrayNotification&amp;diff=82137</id>
		<title>CreateTrayNotification</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=CreateTrayNotification&amp;diff=82137"/>
		<updated>2025-06-08T13:42:50Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
This function creates a notification balloon on the desktop.&lt;br /&gt;
&lt;br /&gt;
{{Note|MTA won't show any tray notifications if the MTA window is focused, because there is no reason to show tray notifications if you are in-game. If you want to test this function you should use a Timer and switch to your desktop.}}&lt;br /&gt;
{{Note|You can only show a tray notification every 30 seconds.}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool createTrayNotification ( string notificationText [, string iconType = &amp;quot;default&amp;quot;, bool useSound = true ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:TrayNotification.gif|301px|thumb|right|alt=GIF preview of a tray notification|Tray Notification GIF]]&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''notificationText:''' The text to send in the notification.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''iconType:''' The notification icon type. Possible values are: '''&amp;quot;default&amp;quot; (the MTA icon), &amp;quot;info&amp;quot;, &amp;quot;warning&amp;quot;, &amp;quot;error&amp;quot;'''&lt;br /&gt;
*'''useSound:''' A boolean value indicating whether or not to play a sound when receiving the notification.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the notification is correctly created, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- Note: You have to wait 30 seconds before showing another tray notification, there is no queuing&lt;br /&gt;
&lt;br /&gt;
createTrayNotification(&amp;quot;Hello World&amp;quot;) -- Show a 'Hello World' notification&lt;br /&gt;
&lt;br /&gt;
createTrayNotification(&amp;quot;Hello World&amp;quot;, &amp;quot;warning&amp;quot;) -- Show a notification with a warning symbol&lt;br /&gt;
&lt;br /&gt;
createTrayNotification(&amp;quot;Hello World&amp;quot;, &amp;quot;default&amp;quot;, false) -- Show a default notification without sound&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example of notification on minimize MTA application:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function setTrayOnMinimize()&lt;br /&gt;
     createTrayNotification(&amp;quot;We are waiting for you again...&amp;quot;, &amp;quot;warning&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onClientMinimize&amp;quot;, root, setTrayOnMinimize)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Changelog==&lt;br /&gt;
{{ChangelogHeader}}&lt;br /&gt;
{{ChangelogItem|1.5.6-9.16925|Added support for Windows 10}}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Client_utility_functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GetPedBonePosition&amp;diff=82136</id>
		<title>GetPedBonePosition</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GetPedBonePosition&amp;diff=82136"/>
		<updated>2025-06-08T13:42:19Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Client function}}&lt;br /&gt;
Returns the 3D world coordinates of a specific bone of a given ped.&lt;br /&gt;
{{Tip|If you want attach element to ped bone, use [[https://github.com/Patrick2562/mtasa-pAttach pAttach]] resource}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
float, float, float getPedBonePosition ( ped thePed, int bone )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{OOP||[[ped]]:getBonePosition||}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''thePed:''' the ped you want to inspect.&lt;br /&gt;
*'''bone:''' the number of the bone to get the position of.&lt;br /&gt;
&lt;br /&gt;
[[Image:Bones.jpg|thumb|Bone numbers]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 3px red solid; margin-bottom:3px; padding-left:5px;&amp;quot;&amp;gt;&lt;br /&gt;
*'''1:''' BONE_PELVIS1&lt;br /&gt;
*'''2:''' BONE_PELVIS&lt;br /&gt;
*'''3:''' BONE_SPINE1&lt;br /&gt;
*'''4:''' BONE_UPPERTORSO&lt;br /&gt;
*'''5:''' BONE_NECK&lt;br /&gt;
*'''6:''' BONE_HEAD2&lt;br /&gt;
*'''7:''' BONE_HEAD1&lt;br /&gt;
*'''8:''' BONE_HEAD&lt;br /&gt;
*'''21:''' BONE_RIGHTUPPERTORSO&lt;br /&gt;
*'''22:''' BONE_RIGHTSHOULDER&lt;br /&gt;
*'''23:''' BONE_RIGHTELBOW&lt;br /&gt;
*'''24:''' BONE_RIGHTWRIST&lt;br /&gt;
*'''25:''' BONE_RIGHTHAND&lt;br /&gt;
*'''26:''' BONE_RIGHTTHUMB&lt;br /&gt;
*'''31:''' BONE_LEFTUPPERTORSO&lt;br /&gt;
*'''32:''' BONE_LEFTSHOULDER&lt;br /&gt;
*'''33:''' BONE_LEFTELBOW&lt;br /&gt;
*'''34:''' BONE_LEFTWRIST&lt;br /&gt;
*'''35:''' BONE_LEFTHAND&lt;br /&gt;
*'''36:''' BONE_LEFTTHUMB&lt;br /&gt;
*'''41:''' BONE_LEFTHIP&lt;br /&gt;
*'''42:''' BONE_LEFTKNEE&lt;br /&gt;
*'''43:''' BONE_LEFTANKLE&lt;br /&gt;
*'''44:''' BONE_LEFTFOOT&lt;br /&gt;
*'''51:''' BONE_RIGHTHIP&lt;br /&gt;
*'''52:''' BONE_RIGHTKNEE&lt;br /&gt;
*'''53:''' BONE_RIGHTANKLE&lt;br /&gt;
*'''54:''' BONE_RIGHTFOOT&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns the x, y, z world position of the bone.&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
This example renders name tags above a player's head bone.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
addEventHandler( &amp;quot;onClientRender&amp;quot;,root,&lt;br /&gt;
   function( )&lt;br /&gt;
      local px, py, pz, tx, ty, tz, dist&lt;br /&gt;
      px, py, pz = getCameraMatrix( )&lt;br /&gt;
       for _, v in ipairs( getElementsByType ( 'player' ) ) do&lt;br /&gt;
         tx, ty, tz = getElementPosition( v )&lt;br /&gt;
         dist = math.sqrt( ( px - tx ) ^ 2 + ( py - ty ) ^ 2 + ( pz - tz ) ^ 2 )&lt;br /&gt;
         if dist &amp;lt; 30.0 then&lt;br /&gt;
            if isLineOfSightClear( px, py, pz, tx, ty, tz, true, false, false, true, false, false, false,localPlayer ) then&lt;br /&gt;
               local sx, sy, sz = getPedBonePosition( v, 5 )&lt;br /&gt;
               local x,y = getScreenFromWorldPosition( sx, sy, sz + 0.3 )&lt;br /&gt;
               if x then -- getScreenFromWorldPosition returns false if the point isn't on screen&lt;br /&gt;
                dxDrawText( getPlayerName( v ), x, y, x, y, tocolor(150, 50, 0), 0.85 + ( 15 - dist ) * 0.02, &amp;quot;bankgothic&amp;quot; )&lt;br /&gt;
               end&lt;br /&gt;
            end&lt;br /&gt;
         end&lt;br /&gt;
      end&lt;br /&gt;
   end&lt;br /&gt;
)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This one draw all local player's bones&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
addEventHandler('onClientRender', root, function()&lt;br /&gt;
	for bone = 1, 54 do&lt;br /&gt;
	 local bonePos = {getPedBonePosition(localPlayer, bone)}&lt;br /&gt;
		if bonePos[1] then&lt;br /&gt;
		 local screen = {getScreenFromWorldPosition(unpack(bonePos))}&lt;br /&gt;
			if screen[1] then&lt;br /&gt;
			 dxDrawText(''..bone, screen[1], screen[2])&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Client_ped_functions}}&lt;br /&gt;
&lt;br /&gt;
[[hu:getPedBonePosition]]&lt;br /&gt;
[[ru:GetPedBonePosition]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GetPedAnimation&amp;diff=82135</id>
		<title>GetPedAnimation</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GetPedAnimation&amp;diff=82135"/>
		<updated>2025-06-08T13:41:59Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Client function}}&lt;br /&gt;
&lt;br /&gt;
Gets the animation of a player or ped that was set using [[setPedAnimation]].&lt;br /&gt;
{{Note|Use [[getPedTask]] to monitor what movements the player is currently doing.''}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
{{Deprecated items|3.0158|1.5.7|&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;string, string getPedAnimation ( ped thePed )&amp;lt;/syntaxhighlight&amp;gt;|20450}}&lt;br /&gt;
{{New feature/item|3.0158|1.5.7|20450|&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt; string, string, int, int, bool, bool, bool, int, bool getPedAnimation ( ped thePed )&amp;lt;/syntaxhighlight&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{OOP||[[ped]]:getAnimation||setPedAnimation}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''thePed:''' the [[player]] or [[ped]] you want to get the [[animations|animation]] of.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
{{Deprecated items|3.0158|1.5.7|Returns two [[string|strings]]: the first is the name of the block, the second is the name of the animation. Returns ''false'' if there was an error or if the ped is not doing an animation.|20450}}&lt;br /&gt;
&lt;br /&gt;
{{New feature/item|3.0158|1.5.7|20450|The function returns 9 values in the same order as required by [[setPedAnimation]]:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;string block, string anim, int time, bool loop, bool updatePosition, bool interruptable, bool freezeLastFrame, int blendTime, bool restoreTaskOnAnimEnd&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
This example adds a command that allows you to copy the animation being used by another player using /copyanim theirName&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function CopyAnimation(theCommand, thePlayer) -- The Command Function&lt;br /&gt;
	if thePlayer then -- If a player name entered then&lt;br /&gt;
		thePlayerToCopyFrom = getPlayerFromName(thePlayer) -- get player from his name&lt;br /&gt;
		block, anim = getPedAnimation(thePlayerToCopyFrom) -- get the player animation&lt;br /&gt;
		if block then -- if got the animation successfully then&lt;br /&gt;
			setPedAnimation(localPlayer, block, anim) -- set my animation the same&lt;br /&gt;
			outputChatBox(&amp;quot;* Copied Successfully !&amp;quot;) -- output chat message&lt;br /&gt;
		end&lt;br /&gt;
	else	&lt;br /&gt;
		outputChatBox(&amp;quot;* Please Enter a Player Name To Copy From !&amp;quot;) -- if you didnt entered a player name , then output a chat box message&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler(&amp;quot;copyanim&amp;quot;, CopyAnimation) --  adding the Command Handler&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows what block and animation your player is currently performing. Note this will return &amp;quot;N/A&amp;quot; if you did not set an animation with [[setPedAnimation]]. If you want to see what the player ped is doing as you control them that is [[getPedTask]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
addEventHandler(&amp;quot;onClientPreRender&amp;quot;,root,&lt;br /&gt;
	function ()&lt;br /&gt;
    local block, animation = getPedAnimation(localPlayer)&lt;br /&gt;
	dxDrawText ( &amp;quot;CURRENT ANIMATION INFO...&amp;quot;, 100, 300 )&lt;br /&gt;
	if not block then block = &amp;quot;N/A&amp;quot; end&lt;br /&gt;
	if not animation then animation = &amp;quot;N/A&amp;quot; end&lt;br /&gt;
	dxDrawText ( &amp;quot;Block = &amp;quot;..block..&amp;quot; Animation = &amp;quot;..animation, 100, 315 )&lt;br /&gt;
end )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Client_ped_functions}}&lt;br /&gt;
&lt;br /&gt;
[[hu:getPedAnimation]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GetElementBoneRotation&amp;diff=82134</id>
		<title>GetElementBoneRotation</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GetElementBoneRotation&amp;diff=82134"/>
		<updated>2025-06-08T13:41:32Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Client function}}&lt;br /&gt;
{{Added feature/item|1.5.9|1.5.8|20704|Returns the orientation of a specific bone relative to the [[element]]. Currently the [[Element/Player|Player]] and [[Element/Ped|Ped]] element types are accepted.}}&lt;br /&gt;
{{Tip|If you want to attach an element to a bone, see [[attachElementToBone]].}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
float, float, float getElementBoneRotation ( element theElement, int boneId )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:The-yaw-pitch-and-roll-angles-in-the-human-head-motion-11.png|thumb|Rotation axes]]&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''theElement:''' the [[element]] to get the bone rotation on.&lt;br /&gt;
*'''boneId:''' the ID of the bone to get the rotation of. See [[Bone IDs]].&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns 3 [[Float|floats]], representing the yaw, pitch, roll rotation values.&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
This example outputs the yaw, pitch and roll orientation of a specific bone relative to the local player bone specified through a command:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function getBoneRotation (commandName, boneId)&lt;br /&gt;
    if not tonumber (boneId) then&lt;br /&gt;
        outputChatBox (&amp;quot;You didn't insert an bone ID!&amp;quot;, 255, 0, 0)&lt;br /&gt;
        return false&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local x, y, z = getElementBoneRotation (localPlayer, boneId)&lt;br /&gt;
    outputChatBox (&amp;quot;The bone rotation is: &amp;quot;..x..&amp;quot;, &amp;quot;..y..&amp;quot;, &amp;quot;..z)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
addCommandHandler (&amp;quot;getbonerotation&amp;quot;, getBoneRotation)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example takes the current rotation of all player bones. by ThigasDEV&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local settings = {&lt;br /&gt;
    copyDiscord = false; -- true = &amp;quot;yes&amp;quot; // false = &amp;quot;no&amp;quot; - Copy to paste table in discord format.&lt;br /&gt;
    tableName = &amp;quot;bonesPos&amp;quot;; -- Table name to be copied.&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local boneIDs = {0, 1, 2, 3, 4, 5, 6, 7, 8, 21, 22, 23, 24, 25, 26, 31, 32, 33, 34, 35, 36, 41, 42, 43, 44, 51, 52, 53, 54, 201, 301, 302}&lt;br /&gt;
&lt;br /&gt;
addCommandHandler (&amp;quot;getbonerotation&amp;quot;, function ()&lt;br /&gt;
    local bonesPositions = { }&lt;br /&gt;
    local bonesConverted = &amp;quot;&amp;quot;&lt;br /&gt;
    for _, v in ipairs (boneIDs) do&lt;br /&gt;
        local x, y, z = getElementBoneRotation (localPlayer, v)&lt;br /&gt;
        table.insert (bonesPositions, &amp;quot;[&amp;quot;..v..&amp;quot;] = {&amp;quot;..x..&amp;quot;, &amp;quot;..y..&amp;quot;, &amp;quot;..z..&amp;quot;};&amp;quot;)&lt;br /&gt;
    end&lt;br /&gt;
    for i, v in ipairs (bonesPositions) do&lt;br /&gt;
        bonesConverted = &amp;quot;    &amp;quot;..bonesConverted..&amp;quot;\n&amp;quot;..&amp;quot;    &amp;quot;..v&lt;br /&gt;
    end&lt;br /&gt;
    setClipboard ((settings[&amp;quot;copyDiscord&amp;quot;] and &amp;quot;```lua\nlocal &amp;quot;..string.gsub(settings[&amp;quot;tableName&amp;quot;], &amp;quot; &amp;quot;, &amp;quot;_&amp;quot;)..&amp;quot; = {&amp;quot;..bonesConverted..&amp;quot;\n}\n```&amp;quot; or &amp;quot;local &amp;quot;..string.gsub(settings[&amp;quot;tableName&amp;quot;], &amp;quot; &amp;quot;, &amp;quot;_&amp;quot;)..&amp;quot; = {&amp;quot;..bonesConverted..&amp;quot;\n}&amp;quot;))&lt;br /&gt;
    outputChatBox (&amp;quot;Copy to clipboard.&amp;quot;)&lt;br /&gt;
end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Client_element_functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=CreateBrowser&amp;diff=82133</id>
		<title>CreateBrowser</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=CreateBrowser&amp;diff=82133"/>
		<updated>2025-06-08T13:40:27Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Client function}}&lt;br /&gt;
{{New feature/item|3.0150|1.5||&lt;br /&gt;
This function creates a new web [[Element/Browser|browser]] element.&lt;br /&gt;
}}&lt;br /&gt;
{{Note|You can also enable CEF development tools using [[toggleBrowserDevTools]]}}&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;element createBrowser ( int width, int height, bool isLocal [, bool transparent = false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{OOP||[[Element/Browser|Browser]]}}&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''width:''' The browser's native width. This should be greater than or equal to 1.&lt;br /&gt;
*'''height:''' The browser's native height. This should be greater than or equal to 1.&lt;br /&gt;
*'''isLocal:'''  Sets whether the browser can only show local content or content from the internet (see examples for more information)&lt;br /&gt;
&lt;br /&gt;
{{New feature/item|3.0160|1.6||Invalid sizes will be a hard error.}}&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''transparent:''' ''true'' if you want the browser transparent, ''false'' for opaque.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a [[texture]] of the [[browser]] if it was created successfully, ''false'' otherwise. Returns also ''false'', if the user disabled remote pages and ''isLocal'' was set to ''false''.&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
{{Warning|The scheme for local files has changed. Please read [[Local_Scheme_Handler|Local Scheme Handler]] for details.|true}}&lt;br /&gt;
'''Local Example''': This example shows you how to create a fullscreen web browser (showing a local html file) without input-handling.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
--In order to render the browser on the full screen, we need to know the dimensions.&lt;br /&gt;
local screenWidth, screenHeight = guiGetScreenSize()&lt;br /&gt;
&lt;br /&gt;
--Let's create a new browser in local mode. We will not be able to load an external URL.&lt;br /&gt;
local webBrowser = createBrowser(screenWidth, screenHeight, true, false)&lt;br /&gt;
	&lt;br /&gt;
--This is the function to render the browser.&lt;br /&gt;
function webBrowserRender()&lt;br /&gt;
	--Render the browser on the full size of the screen.&lt;br /&gt;
	dxDrawImage(0, 0, screenWidth, screenHeight, webBrowser, 0, 0, 0, tocolor(255,255,255,255), true)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--The event onClientBrowserCreated will be triggered, after the browser has been initialized.&lt;br /&gt;
--After this event has been triggered, we will be able to load our URL and start drawing.&lt;br /&gt;
addEventHandler(&amp;quot;onClientBrowserCreated&amp;quot;, webBrowser, &lt;br /&gt;
	function()&lt;br /&gt;
		--After the browser has been initialized, we can load our file.&lt;br /&gt;
		loadBrowserURL(webBrowser, &amp;quot;http://mta/local/html/site.html&amp;quot;)&lt;br /&gt;
		--Now we can start to render the browser.&lt;br /&gt;
		addEventHandler(&amp;quot;onClientRender&amp;quot;, root, webBrowserRender)&lt;br /&gt;
	end&lt;br /&gt;
)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Remote Example''': This example shows you how to create a fullscreen web browser (showing youtube.com) without input-handling.&amp;lt;br&amp;gt;&lt;br /&gt;
Remember, that youtube.com is on the global whitelist. If you want to load a domain/page that is not on the global whitelist, you have to request it with [[requestBrowserDomains|requestBrowserDomains]].&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
--In order to render the browser on the full screen, we need to know the dimensions.&lt;br /&gt;
local screenWidth, screenHeight = guiGetScreenSize()&lt;br /&gt;
&lt;br /&gt;
--Let's create a new browser in remote mode.&lt;br /&gt;
local webBrowser = createBrowser(screenWidth, screenHeight, false, false)&lt;br /&gt;
	&lt;br /&gt;
--Function to render the browser.&lt;br /&gt;
function webBrowserRender()&lt;br /&gt;
	--Render the browser on the full size of the screen.&lt;br /&gt;
	dxDrawImage(0, 0, screenWidth, screenHeight, webBrowser, 0, 0, 0, tocolor(255,255,255,255), true)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--The event onClientBrowserCreated will be triggered, after the browser has been initialized.&lt;br /&gt;
--After this event has been triggered, we will be able to load our URL and start drawing.&lt;br /&gt;
addEventHandler(&amp;quot;onClientBrowserCreated&amp;quot;, webBrowser, &lt;br /&gt;
	function()&lt;br /&gt;
		--After the browser has been initialized, we can load www.youtube.com&lt;br /&gt;
		loadBrowserURL(webBrowser, &amp;quot;http://www.youtube.com&amp;quot;)&lt;br /&gt;
		--Now we can start to render the browser.&lt;br /&gt;
		addEventHandler(&amp;quot;onClientRender&amp;quot;, root, webBrowserRender)&lt;br /&gt;
	end&lt;br /&gt;
)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{CEF_functions}}&lt;br /&gt;
&lt;br /&gt;
[[ar:createBrowser]]&lt;br /&gt;
[[en:CreateBrowser]]&lt;br /&gt;
[[hu:createBrowser]]&lt;br /&gt;
[[RO:CreateBrowser]]&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=IsVehicleFuelTankExplodable&amp;diff=82132</id>
		<title>IsVehicleFuelTankExplodable</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=IsVehicleFuelTankExplodable&amp;diff=82132"/>
		<updated>2025-06-08T13:37:24Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Server client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This will tell you if a vehicle's petrol tank is explodable.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool isVehicleFuelTankExplodable ( vehicle theVehicle )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''theVehicle:''' The [[vehicle]] that you want to obtain the fuel tank status of.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the specified vehicle is valid and its fuel tank is explodable, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
This example creates a vehicle, then displays if it fuel tank is explodable or not in the chatbox.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
newcar = createVehicle ( 520, 1024, 1024, 1024 )&lt;br /&gt;
if ( isVehicleFuelTankExplodable ( newcar ) ) then&lt;br /&gt;
    outputChatBox ( &amp;quot;Vehicle's tank is explodable&amp;quot; )&lt;br /&gt;
else&lt;br /&gt;
    outputChatBox ( &amp;quot;Vehicle's tank is not explodable&amp;quot; )&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example toggles vehicle fuel tank explodable when the player type ''fueltank'' in the chat.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function toggleFuelTankExplodable(playerSource)&lt;br /&gt;
vehicle = getPedOccupiedVehicle(playerSource)&lt;br /&gt;
    if vehicle then&lt;br /&gt;
        if isVehicleFuelTankExplodable(vehicle) then&lt;br /&gt;
            setVehicleFuelTankExplodable(vehicle, false)&lt;br /&gt;
        else&lt;br /&gt;
            setVehicleFuelTankExplodable(vehicle, true)&lt;br /&gt;
        end&lt;br /&gt;
    else&lt;br /&gt;
        outputChatBox(&amp;quot;You are not in a vehicle.&amp;quot;, playerSource, 220, 0, 0)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler(&amp;quot;fueltank&amp;quot;, toggleFuelTankExplodable)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Vehicle functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=FromJSON&amp;diff=82131</id>
		<title>FromJSON</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=FromJSON&amp;diff=82131"/>
		<updated>2025-06-08T13:36:50Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server client function}}&lt;br /&gt;
This function parses a [[JSON]] formatted string into variables. You can use [[toJSON]] to encode variables into a JSON string that can be read by this function.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
var fromJSON ( string json )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''json:''' A JSON formatted string&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns variables read from the JSON string.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' Indices of a JSON object such as &amp;quot;1&amp;quot;: &amp;quot;cat&amp;quot; are being returned as [[string]], not as [[int]]eger.&lt;br /&gt;
&lt;br /&gt;
==Examples== &lt;br /&gt;
This makes data equal: ''{ [&amp;quot;1&amp;quot;] = &amp;quot;cat&amp;quot;, [&amp;quot;2&amp;quot;] = &amp;quot;mouse&amp;quot;, [&amp;quot;3&amp;quot;] = 5, [&amp;quot;4&amp;quot;] = null, [&amp;quot;cat&amp;quot;] = 5, [&amp;quot;mouse&amp;quot;] =1 }''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local data = fromJSON ( '[ { &amp;quot;1&amp;quot;: &amp;quot;cat&amp;quot;, &amp;quot;2&amp;quot;: &amp;quot;mouse&amp;quot;, &amp;quot;3&amp;quot;: 5, &amp;quot;4&amp;quot;: null, &amp;quot;cat&amp;quot;:5, &amp;quot;mouse&amp;quot;:1 } ]' )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This shows how to extract data from JSON:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local name, weapon, ammo = fromJSON(&amp;quot;[\&amp;quot;Desert Eagle\&amp;quot;, 24, 147]&amp;quot;)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Server_functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=FromJSON&amp;diff=82130</id>
		<title>FromJSON</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=FromJSON&amp;diff=82130"/>
		<updated>2025-06-08T13:36:14Z</updated>

		<summary type="html">&lt;p&gt;Fernando187: Fix examples header&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server client function}}&lt;br /&gt;
This function parses a [[JSON]] formatted string into variables. You can use [[toJSON]] to encode variables into a JSON string that can be read by this function.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
var fromJSON ( string json )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''json:''' A JSON formatted string&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns variables read from the JSON string.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' Indices of a JSON object such as &amp;quot;1&amp;quot;: &amp;quot;cat&amp;quot; are being returned as [[string]], not as [[int]]eger.&lt;br /&gt;
&lt;br /&gt;
==Examples== &lt;br /&gt;
This makes data equal: ''{ [&amp;quot;1&amp;quot;] = &amp;quot;cat&amp;quot;, [&amp;quot;2&amp;quot;] = &amp;quot;mouse&amp;quot;, [&amp;quot;3&amp;quot;] = 5, [&amp;quot;4&amp;quot;] = null, [&amp;quot;cat&amp;quot;] = 5, [&amp;quot;mouse&amp;quot;] =1 }''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local data = fromJSON ( '[ { &amp;quot;1&amp;quot;: &amp;quot;cat&amp;quot;, &amp;quot;2&amp;quot;: &amp;quot;mouse&amp;quot;, &amp;quot;3&amp;quot;: 5, &amp;quot;4&amp;quot;: null, &amp;quot;cat&amp;quot;:5, &amp;quot;mouse&amp;quot;:1 } ]' )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local name, weapon, ammo = fromJSON(&amp;quot;[\&amp;quot;Desert Eagle\&amp;quot;, 24, 147]&amp;quot;)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Server_functions}}&lt;/div&gt;</summary>
		<author><name>Fernando187</name></author>
	</entry>
</feed>