<?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=Kzman</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=Kzman"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/wiki/Special:Contributions/Kzman"/>
	<updated>2026-05-28T23:46:31Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Timer&amp;diff=31236</id>
		<title>Timer</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Timer&amp;diff=31236"/>
		<updated>2012-05-27T05:26:44Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added note&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A [[timer]] object refers to a timer set to execute a function a certain number of times with a specified delay.&lt;br /&gt;
&lt;br /&gt;
Note that after a timer has completed all its iterations, it is destroyed and any stored pointers to it become invalid. Also timers are not under the ''resource'' hierarchy, becouse they are not elements, for instance, if you create a timer, it will not be destroyed when the resource in which it was created is stopped, so in this case you should kill the timer manually.&lt;br /&gt;
&lt;br /&gt;
==Related scripting functions==&lt;br /&gt;
* [[getTimers]]&lt;br /&gt;
* [[killTimer]]&lt;br /&gt;
* [[setTimer]]&lt;br /&gt;
* [[getTimerDetails]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Database&amp;diff=31143</id>
		<title>Database</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Database&amp;diff=31143"/>
		<updated>2012-05-24T03:04:28Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Page about db files created. Please expand it&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MTA uses a database system based on files. This system is sqlite, an embedded relational database management system.&lt;br /&gt;
==Files==&lt;br /&gt;
There are two main database files for storing data:&lt;br /&gt;
*'''internal.db:''' this contains user account data (usernames, passwords and account data stored by using the [[setAccountData]] and [[getAccountData]] functions.&lt;br /&gt;
*'''regystry.db:''' this is the main database file, all the executeSQL* scrtipting functions work with this file.&lt;br /&gt;
==Functions==&lt;br /&gt;
{{SQL_functions}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=How_to_repair_the_database_files&amp;diff=31137</id>
		<title>How to repair the database files</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=How_to_repair_the_database_files&amp;diff=31137"/>
		<updated>2012-05-24T02:44:11Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Formatted&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==You might be OK==&lt;br /&gt;
There might be nothing to worry about. Check these points:&lt;br /&gt;
* Did you come to this page because of a message you saw in the server console or logs?&lt;br /&gt;
* Is the following text at the start of the error message block?&lt;br /&gt;
    ERROR: near &amp;quot;3&amp;quot;: syntax error&lt;br /&gt;
* If so, then everything is OK. You don't have to do anything written below and you can safely ignore the error message.&lt;br /&gt;
&lt;br /&gt;
==Warnings==&lt;br /&gt;
'''Backup all files before attempting a repair!'''&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Shutdown the server before attempting a repair!'''&lt;br /&gt;
&lt;br /&gt;
==Windows server==&lt;br /&gt;
&lt;br /&gt;
===Easy way===&lt;br /&gt;
*Download [http://updatesa.mtasa.com/sa/files/sqlite/mtasa-db-repair-win.zip this]&lt;br /&gt;
*Unzip and put the files into ''server/mods/deathmatch/''&lt;br /&gt;
*Double click on ''sqlite_repair_internal_db.bat'' to repair internal.db&lt;br /&gt;
*Double click on ''sqlite_repair_registry_db.bat'' to repair registry.db&lt;br /&gt;
&lt;br /&gt;
===Hard way===&lt;br /&gt;
&lt;br /&gt;
*Download sqlite-shell-win32 from [http://www.sqlite.org/sqlite-shell-win32-x86-3070700.zip here]. If that link fails, the main download page is [http://www.sqlite.org/download.html here].&lt;br /&gt;
*Unzip and put sqlite3.exe into ''server/mods/deathmatch/''&lt;br /&gt;
*Open command prompt the change directory to ''server/mods/deathmatch/''&lt;br /&gt;
*To repair internal.db:&lt;br /&gt;
**Copy '''internal.db''' to '''internal_original.db'''&lt;br /&gt;
**Do this command: '''sqlite3.exe internal_original.db .dump | sqlite3.exe internal_repaired.db'''&lt;br /&gt;
**Copy '''internal_repaired.db''' to '''internal.db'''&lt;br /&gt;
&lt;br /&gt;
*To repair registry.db:&lt;br /&gt;
**Copy '''registry.db''' to '''registry_original.db'''&lt;br /&gt;
**Do this command: '''sqlite3.exe registry_original.db .dump | sqlite3.exe registry_repaired.db'''&lt;br /&gt;
**Copy '''registry_repaired.db''' to '''registry.db'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Linux server==&lt;br /&gt;
&lt;br /&gt;
===Only way===&lt;br /&gt;
&lt;br /&gt;
*Download sqlite-shell-linux from [http://www.sqlite.org/sqlite-shell-linux-x86-3070700.zip here]. If that link fails, the main download page is [http://www.sqlite.org/download.html here].&lt;br /&gt;
*Unzip and put sqlite3 into ''server/mods/deathmatch/''&lt;br /&gt;
*To repair internal.db:&lt;br /&gt;
**Copy '''internal.db''' to '''internal_original.db'''&lt;br /&gt;
**Do this command: '''./sqlite3 internal_original.db .dump | ./sqlite3 internal_repaired.db'''&lt;br /&gt;
**Copy '''internal_repaired.db''' to '''internal.db'''&lt;br /&gt;
&lt;br /&gt;
*To repair registry.db:&lt;br /&gt;
**Copy '''registry.db''' to '''registry_original.db'''&lt;br /&gt;
**Do this command: '''./sqlite3 registry_original.db .dump | ./sqlite3 registry_repaired.db'''&lt;br /&gt;
**Copy '''registry_repaired.db''' to '''registry.db'''&lt;br /&gt;
&lt;br /&gt;
[[ru:How to repair the database files]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/Manual_del_Servidor&amp;diff=31132</id>
		<title>ES/Manual del Servidor</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/Manual_del_Servidor&amp;diff=31132"/>
		<updated>2012-05-23T22:05:50Z</updated>

		<summary type="html">&lt;p&gt;Kzman: /* Configurando un servidor web externo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Es mucho más fácil de lo que parece tener un servidor funcionando en Internet o en LAN. Lee este artículo y estarás listo para hospedar tu propio servidor de MTA:SA en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
==Instalando el servidor==&lt;br /&gt;
El servidor dedicado está disponible en diferentes distribuciones, dependiendo de la plataforma del equipo.&lt;br /&gt;
Si no seleccionaste &amp;quot;Dedicated Server&amp;quot; durante la instalación de MTA San Andreas, sigue estos pasos según tu sistema operativo:&lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
*Opción 1: [[Building MTASA Server on GNU Linux|Compilar el servidor en Linux]]. [[Image:flag_us.png|En Inglés]]&lt;br /&gt;
*Opción 2: [http://linux.mtasa.com/ Usar un paquete ya compilado].&lt;br /&gt;
&lt;br /&gt;
===Windows===&lt;br /&gt;
*Dirígete a la [http://mtasa.com/ página de MTA] y selecciona &amp;quot;Download&amp;quot;.&lt;br /&gt;
*Abre el instalador una vez que se haya descargado.&lt;br /&gt;
*Sigue los pasos según se te indiquen, hasta que llegues al punto donde seleccionas los elementos a instalar.&lt;br /&gt;
*Asegúrate de que &amp;quot;Dedicated Server&amp;quot; está seleccionado.&lt;br /&gt;
*Por último, haz click en Install.&lt;br /&gt;
&lt;br /&gt;
==Configuración==&lt;br /&gt;
El servidor Multi Theft Auto se puede configurar a través de la consola, desde el juego o desde una aplicación web. Para hacer uso de estos dos últimos, es necesario añadir un administrador en el archivo de configuración (acl.xml).&lt;br /&gt;
&lt;br /&gt;
===General===&lt;br /&gt;
Todas las opciones de configuración están en el archivo ''mods/deathmatch/mtaserver.conf'' y puede ser abierto con cualquier editor de texto.&lt;br /&gt;
&lt;br /&gt;
Cada variable tiene su propia descripción por lo que te será muy fácil configurar tu servidor.&lt;br /&gt;
&lt;br /&gt;
===Redireccionamiento de puertos===&lt;br /&gt;
Si tienes tu servidor en tu propio computador, y tienes acceso a internet mediante un '''Router''', entonces necesitarás redireccionar 3 puertos.&lt;br /&gt;
&lt;br /&gt;
Primero que todo, abre el archivo ''mods/deathmatch/mtaserver.conf'' y busca las siguientes líneas:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;serverport&amp;gt;22004&amp;lt;/serverport&amp;gt; &lt;br /&gt;
&amp;lt;httpport&amp;gt;22005&amp;lt;/httpport&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Los puertos son necesarios para configurar bien tu servidor. Explicaremos más adelante cómo configurarlos, pero primero, si quieres que tu servidor aparezca en la lista de servidores, necesitaremos otro puerto adicional; el ''puerto ASE''. Para habilitarlo, hay que usar esta línea:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ase&amp;gt;1&amp;lt;/ase&amp;gt; &amp;lt;!-- 0 = off, 1 = on --&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora vamos a redireccionar los puertos del Router, (paso que no es necesario si tienes todos los puertos abiertos, o si no tienes un router con ''firewall''. Si es así, ignora esta parte).&lt;br /&gt;
&lt;br /&gt;
Si no sabes cómo funciona el redireccionamiento de puertos en tu router, visita [http://www.portforward.com/ Port Forward], encuentra tu router y sigue las instrucciones en esa página.&lt;br /&gt;
&lt;br /&gt;
En casi todos los routers puedes seleccionar el tipo de puerto: UDP o TCP.&lt;br /&gt;
La siguiente lista explica qué tipo de puerto se necesita y para qué:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puerto principal del servidor: UDP&lt;br /&gt;
&lt;br /&gt;
Puerto HTTP: TCP&lt;br /&gt;
&lt;br /&gt;
Puerto ASE: UDP (es necesario si quieres que tu servidor aparezca en la lista de servidores)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El puerto ASE debe ser de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
Puerto ASE = Puerto principal del servidor + 123&lt;br /&gt;
&lt;br /&gt;
De esta manera, si el puerto principal de tu servidor es 22003, entonces el puerto ASE deberá ser 22126 (22003+123 = 22126).&lt;br /&gt;
&lt;br /&gt;
Buena suerte!&lt;br /&gt;
&lt;br /&gt;
===Comprobación de Cliente===&lt;br /&gt;
&lt;br /&gt;
El servidor MTA se puede configurar para que sea deshabilitado el anti-cheat. También se puede permitir modificar archivos en especifico o todos los archivos (ej. carmods.dat), y asegura que los clientes tienen la versión mínima.&lt;br /&gt;
&lt;br /&gt;
Toda esta configuración se encuentra dentro del archivo 'mods/deathmatch/[[Server_mtaserver.conf|'''mtaserver.conf''']]'. Vea la [[Anti-cheat_guide|Guía Anti-cheat]] [[Image:flag_us.png|En Inglés|24px]] Para más detalles.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si deseas obligar una versión mínima de cliente, busqua la siguiente linea:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;minclientversion&amp;gt;&amp;lt;/minclientversion&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Los valores aceptados tienen el siguiente formato: 1.1.1-9.02320&lt;br /&gt;
&lt;br /&gt;
===Añadiendo administradores===&lt;br /&gt;
Es muy recomendable añadir por lo menos un administrador a tu servidor, para hacer uso de la aplicación web, donde se puede mantener y configurar tu servidor. Este administrador podrá también controlar el servidor desde el juego.&lt;br /&gt;
&lt;br /&gt;
Para añadir un administrador al servidor, sigue los siguientes pasos:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Abre el archivo 'mods/deathmatch/'acl.xml'''' con cualquier editor de texto&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Agrega la cuenta que creaste anteriormente al grupo ''Admin'' de la siguiente manera:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ACL&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
  &amp;lt;group name=&amp;quot;Admin&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;acl name=&amp;quot;Admin&amp;quot;/&amp;gt;&lt;br /&gt;
    ...&lt;br /&gt;
    &amp;lt;object name=&amp;quot;user.NOMBRE&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;/group&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
&amp;lt;/ACL&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Puedes agregar los usuarios a cualquier grupo. Cada grupo está relacionado con el ACL ([[Access Control List]]). Cada grupo de ACL tiene permisos específicos para realizar tareas. El grupo ''Everyone' apunta al ACL ''Default'', que impide a los jugadores normales ejecutar comandos de administradores, como bannear, kickear o mutear.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
Si quieres, puedes agregar cuantos administradores y usuarios quieras, repitiendo estos pasos. También puedes revisar los otros grupos y ACL's. Se puede acceder al ACL también mediante el [[Access_Control_List#See_Also|Motor de Scripting de Lua]].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se recomienda revisar también la interfaz web, más abajo en este artículo.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
'''Nota''': También se puede editar, agregar y crear cuentas mientras el servidor está prendido. &amp;quot;addaccount &amp;lt;user&amp;gt; &amp;lt;password&amp;gt;&amp;quot; es un comando interno que permite agregar cuentas, pero para relacionar esta cuenta con algún grupo del ACL debes usar la interfaz web.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Usando la interfaz web===&lt;br /&gt;
El servidor dedicado viene con unos resources que permiten tener una pequeña interfaz web para administrar el servidor. Se puede usar para  agregar usuarios (cuentas), iniciar/detener resources y mucho más.&lt;br /&gt;
&lt;br /&gt;
Los resources de interfaz web están activados por defecto y son servidos mediante el servidor web HTTP. Para asegurarte de que el servidor web HTTP corre en el puerto que quieres (22005 por defecto), sigue estos pasos:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Asegúrate de que tu servidor está apagado.&lt;br /&gt;
&amp;lt;li&amp;gt;Abre el archivo '''mods/deathmatch/mtaserver.conf''' con cualquier editor de texto.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Verifica que el servidor HTTP está activado:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;httpserver&amp;gt;1&amp;lt;/httpserver&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Cambia el puerto HTTP al que quieras:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;httpport&amp;gt;22005&amp;lt;/httpport&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Cierra guarda el archivo.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Inicia tu servidor.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Asegúrate de que los siguientes resources están funcionando:&lt;br /&gt;
&lt;br /&gt;
* ajax&lt;br /&gt;
* elementbrowser&lt;br /&gt;
* performancebrowser&lt;br /&gt;
* resourcebrowser&lt;br /&gt;
* resourcemanager&lt;br /&gt;
* webadmin&lt;br /&gt;
* webmap&lt;br /&gt;
* webstats&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Abre tu navegador web (Internet Explorer 6 y 7 NO están soportados: usa [http://www.mozilla.com/firefox Mozilla Firefox], [http://www.google.com/chrome Google Chrome], [http://www.apple.com/safari/download Apple Safari], [http://www.opera.com Opera] u otro) y dirígete a la URL siguiente: '''http://ip:puerto_http/'''. Por ejemplo, si estás usando el servidor local en el puerto HTTP 22005, usa '''http://127.0.0.1:22005/'''.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Escribe el nombre y contraseña del administrador que creaste en la sección anterior.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora puedes manejar tu servidor desde un navegador web.&lt;br /&gt;
&lt;br /&gt;
=== Configurando un servidor web externo ===&lt;br /&gt;
El servidor web interno es capaz de enviar los archivos de ''resources'' que estén corriendo en tu servidor a cualquier jugador que esté conectado. Por ejemplo, si estás corriendo un script de juego con una GUI o modelos especiales (DFF), necesitan ser enviados al jugador para que funcionen. Esto se puede hacer con el servidor por defecto, o con un servidor web externo (el cual usualmente es más rápido, pero necesita ser configurado por separado). &lt;br /&gt;
&lt;br /&gt;
Para un mejor rendimiento o por razones de consistencia durante el juego, puedes hacer uso de un servidor web externo, si es que ya tienes uno configurado. El servidor externo necesita ser de acceso público, para que los usuarios puedan descargar los archivos del lado del cliente necesarios y poder unirse a jugar en tu servidor.&lt;br /&gt;
&lt;br /&gt;
Para habilitar la descarga a través de un servidor externo, debes activar la opción [[Server_mtaserver.conf#httpdownloadurl|httpdownloadurl]] en la configuración de tu servidor, de la siguiente forma:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;httpdownloadurl&amp;gt;http://www.miservidor.tld/directorio/aquí&amp;lt;/httpdownloadurl&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ya que todos los ''resources'' por defecto que vienen con el servidor dedicado están comprimidos en zip, estos son extraídos automáticamente por el servidor web interno, entonces debes ofrecer una forma para que los clientes descarguen los archivos comprimidos a sus equipos. Para configurar MTA para que mantenga una copia solo de tus archivos no comprimidos, modifica el [[Server_mtaserver.conf#httpautoclientfiles|httpautoclientfiles]] en el archivo de configuración:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;httpautoclientfiles&amp;gt;1&amp;lt;/httpautoclientfiles&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora cuando inicies el servidor, el directorio '''&amp;lt;SERVER&amp;gt;/mods/deathmatch/resource-cache/http-client-files''' contendrá los archivos que debes subir al servidor web externo. Si el servidor está en la misma máquina, puedes simplemente crear un enlace en el directorio apropiado del servidor web que apunte hacia '''http-client-files'''. Si el servidor web está en otra máquina, debes asegurarte de que tenga acceso a tu '''http-client-files''' por medio de una ruta de red, o mantener una copia remota usando algún software de sincronización.&lt;br /&gt;
&lt;br /&gt;
'''Nota 1''': Intenta evitar caracteres como &amp;quot;~&amp;quot; o &amp;quot;!&amp;quot; en las URL de descarga.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Nota 2''': No termines la dirección web con un slash (por ejemplo, debe ser ''hxxp://www.myserver.tld/directory'' en vez de ''hxxp://www.myserver.tld/directory/'')&lt;br /&gt;
&lt;br /&gt;
==Iniciando tu servidor==&lt;br /&gt;
Comienza asegurándote de que  has terminado toda  la configuración de tu servidor, iniciar tu servidor es la última etapa, así que ¡todo debe estar listo!&lt;br /&gt;
&lt;br /&gt;
Para iniciar tu servidor haz doble clic sobre MTA Server.exe, asegúrate de que autorizaste pasar por todos los firewall y redirecctionaste los puertos donde era necesario.&lt;br /&gt;
&lt;br /&gt;
==Instalando/Actualizando resources en tu servidor==&lt;br /&gt;
Los ''resources'' pueden venir en dos formatos, en formato ZIP o solo dentro de una carpeta con los archivos de script. El servidor MTA:SA soporta estos dos métodos.&lt;br /&gt;
&lt;br /&gt;
# Mueve o copia el nuevo ''resource'' a tu carpeta &amp;lt;SERVER&amp;gt;\mods\deathmatch\resources .&lt;br /&gt;
# En la ventana del servidor escribe el comando [[Server_Commands#refresh|refresh]], el cual realizará un re-escaneo de la carpeta de ''resources''  y actualizará los recursos en ejecucion si fuese recesario.&lt;br /&gt;
&lt;br /&gt;
==Desinstalando resources==&lt;br /&gt;
Los ''resources'' se desinstalan fácilmente quitándolos de tu servidor si ya no los quieres.&lt;br /&gt;
&lt;br /&gt;
# Elimina el archivo ZIP o la carpeta del ''resource'' que deseas desinstalar.&lt;br /&gt;
# En la ventana del servidor escribe el comando &amp;quot;refresh&amp;quot; (sin las comillas), el cual realizará un re-escaneo de la carpeta de ''resources''  y actualizará los recursos en ejecucion si fuese recesario.&lt;br /&gt;
==Administrando tu servidor==&lt;br /&gt;
Para iniciar los ''resources''  solo debes teclear el comando &amp;quot;start nombreresource&amp;quot; en la consola del servidor, o detenerlos con &amp;quot;stop nombreresource&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
También es posible ejecutar estos y otros comandos de admin desde la consola dentro del juego (la cual accedes con la tecla ` o F8); para que funcione, primero necesitas iniciar sesión con el comando &amp;quot;[[Server_Commands#login|login usuario contraseña]]&amp;quot;. Además, si presionas la tecla p puedes acceder al panel de admin: es una interfaz gráfica la cual permite expulsar (kick) or banear jugadores problemáticos, entre otros.&lt;br /&gt;
&lt;br /&gt;
Para más comandos, escribe [[Server_Commands#help|help]] en una consola.&lt;br /&gt;
&lt;br /&gt;
==Iniciando un mapa o modo de juego==&lt;br /&gt;
Para mayor información, mira la sección de comandos en la documentation sobre [[Resource:Map manager|mapmanager]].&lt;br /&gt;
&lt;br /&gt;
==Notas Útiles==&lt;br /&gt;
&lt;br /&gt;
# Tambien se pueden actualizar los ''resources'' dentro del juego siempre que poseas los niveles de acceso correctos tecleando &amp;quot;refresh&amp;quot; en la consola de cliente o &amp;quot;/refresh&amp;quot; en la ventana de chat. Este acción puede producir un segundo de lag si tienes muchos ''resources''.&lt;br /&gt;
# En las intrucciones anteriormente vistas, &amp;lt;SERVER&amp;gt; es la ruta hacia el directorio principal de tu servidor. Generalmente este es C:\Program Files\MTA San Andreas\server&lt;br /&gt;
# Tambien puedes escoger un archivo de configuracion diferente para el servidor, para realizar esto debes pasar como argumento luego de un --config, p.ej. mtaserver.exe --config otroconfig.cfg.&lt;br /&gt;
# No te asustes si ves un warning regarding the parsing of the settings.xml file. Esto sucede porque la instalación tu servidor está limpia y sin uso.&lt;br /&gt;
&lt;br /&gt;
====¿Necesitas más ayuda?====&lt;br /&gt;
Por qué no te acercas a nuestro foro [http://forum.mtasa.com/ Forums] o te unes a nuestro [irc://irc.multitheftauto.com/mta IRC] (irc.multitheftauto.com #mta - [http://www.mirc.com mIRC]) [[Image:flag_us.png|En Inglés|24px]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Es necesario? si es asi, solo descomenten&lt;br /&gt;
==Traductores==&lt;br /&gt;
*Ryder!&lt;br /&gt;
*Benxamix2/The Kid&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[en:Deathmatch Server Manual]]&lt;br /&gt;
[[de:MTA DM Server Anleitung]]&lt;br /&gt;
[[it:Manuale del Server]]&lt;br /&gt;
[[nl:Deathmatch Server Manual]]&lt;br /&gt;
[[ru:Deathmatch Server Manual]]&lt;br /&gt;
[[pl:Server Manual]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Settings_system&amp;diff=31068</id>
		<title>Settings system</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Settings_system&amp;diff=31068"/>
		<updated>2012-05-22T02:21:56Z</updated>

		<summary type="html">&lt;p&gt;Kzman: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
The settings system allows you to store and retrieve settings for future use, or provide server administrators with an easy way to configure your resource without modifying any files.&lt;br /&gt;
&lt;br /&gt;
Settings can be modified in two ways - either by scripts or by the server administrator using the console.&lt;br /&gt;
&lt;br /&gt;
==Setting names==&lt;br /&gt;
Settings have a fairly simple naming system that allows you to specify the ''scope'' and ''access'' they provide.&lt;br /&gt;
&lt;br /&gt;
Names are in the format:&lt;br /&gt;
&lt;br /&gt;
[''access''][''resourceName''].''settingName''&lt;br /&gt;
&lt;br /&gt;
Access modifiers:&lt;br /&gt;
* '''*''': ''public'' and can be read and written by any resource.&lt;br /&gt;
* '''#''': ''protected'' and can be read by any resource but only written by the resource they belong to.&lt;br /&gt;
* '''@''': ''private'' and can only be read and written to by the resource they belong to.&lt;br /&gt;
* None specified: ''private'' if it is a local setting, ''public'' if it's a global setting.&lt;br /&gt;
&lt;br /&gt;
The ''resourceName'' is optional. If it isn't specified, then the setting is ''global''. &lt;br /&gt;
&lt;br /&gt;
The ''settingName'' can be anything you want.&lt;br /&gt;
&lt;br /&gt;
==Manager==&lt;br /&gt;
You can manage your settings with the default [[Resource:admin|admin]] manager resource. In addition you can add some attributes in a setting, which will be useful in the settings manager:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;settings&amp;gt;&lt;br /&gt;
    &amp;lt;setting name=&amp;quot;*settingname&amp;quot; value=&amp;quot;defValue&amp;quot; friendlyname=&amp;quot;&amp;quot; group=&amp;quot;&amp;quot; accept=&amp;quot;&amp;quot; examples=&amp;quot;&amp;quot; desc=&amp;quot;&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/settings&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''Explanation:''' &amp;lt;small&amp;gt;TODO&amp;lt;/small&amp;gt;&lt;br /&gt;
&amp;lt;!-- Someone who explain this attributes, and uncomment this please&lt;br /&gt;
:*'''friendlyname:'''&lt;br /&gt;
:*'''group:'''&lt;br /&gt;
:*'''accept:'''&lt;br /&gt;
:*'''examples:'''&lt;br /&gt;
:*'''desc:'''&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
==Scripting functions==&lt;br /&gt;
There are two scripting functions in the setting system: [[set]] and [[get]].&lt;br /&gt;
&lt;br /&gt;
==Console functions==&lt;br /&gt;
There are two console functions in the settings system:&lt;br /&gt;
{{Settings registry functions}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Call&amp;diff=31048</id>
		<title>Call</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Call&amp;diff=31048"/>
		<updated>2012-05-20T22:10:16Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Adding code tag where necessary&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server client function}}&lt;br /&gt;
This function is used to call a function from another resource (which must be running). &lt;br /&gt;
&lt;br /&gt;
The function which you wish to call '''must''' first be exported within the resource's meta.  For example:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;meta&amp;gt;&lt;br /&gt;
	&amp;lt;info author=&amp;quot;jbeta&amp;quot; type=&amp;quot;script&amp;quot; description=&amp;quot;Scoreboard resource&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;script src=&amp;quot;scoreboard_client.lua&amp;quot; type=&amp;quot;client&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;script src=&amp;quot;scoreboard_exports.lua&amp;quot; type=&amp;quot;server&amp;quot;/&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;script src=&amp;quot;scoreboard_http.lua&amp;quot; type=&amp;quot;server&amp;quot;/&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;export function=&amp;quot;getScoreboardColumns&amp;quot; http=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;export function=&amp;quot;getScoreboardRows&amp;quot; http=&amp;quot;true&amp;quot; /&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;export function=&amp;quot;addScoreboardColumn&amp;quot; type=&amp;quot;server&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;export function=&amp;quot;removeScoreboardColumn&amp;quot; type=&amp;quot;server&amp;quot;/&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;export function=&amp;quot;setPlayerScoreboardForced&amp;quot; type=&amp;quot;server&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;export function=&amp;quot;setScoreboardForced&amp;quot; type=&amp;quot;client&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/meta&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This enables other resources to call a function from this resource.&lt;br /&gt;
&lt;br /&gt;
You cannot call a server function from the client or vice versa. See [[triggerServerEvent]] and [[triggerClientEvent]] for possibilities to do that.&lt;br /&gt;
&lt;br /&gt;
{{New feature|3|1.0|&lt;br /&gt;
There is an easier syntax replacing this function. For example, you can instead of:&amp;lt;br&amp;gt;&lt;br /&gt;
  &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;call ( getResourceFromName ( &amp;quot;resource&amp;quot; ), &amp;quot;exportedFunction&amp;quot;, 1, &amp;quot;2&amp;quot;, &amp;quot;three&amp;quot; )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
do much like a normal call:&amp;lt;br&amp;gt;&lt;br /&gt;
  &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;exports.resource:exportedFunction ( 1, &amp;quot;2&amp;quot;, &amp;quot;three&amp;quot; )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
If the resource name contains illegal characters (such as hyphens), you can also do:&amp;lt;br&amp;gt;&lt;br /&gt;
  &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;exports[&amp;quot;resource-name&amp;quot;]:exportedFunction ( 1, &amp;quot;2&amp;quot;, &amp;quot;three&amp;quot; )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When using the [[call]] function, two extra &amp;quot;hidden&amp;quot; variables are passed to the exported function:&lt;br /&gt;
* '''sourceResource''' - The resource that called the exported function&lt;br /&gt;
* '''sourceResourceRoot''' - The resource root element of the resource which called the exported function.&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;
var... call ( resource theResource, string theFunction, [ arguments... ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''theResource:''' This is a resource pointer which refers to the resource you are calling a function from.&lt;br /&gt;
*'''theFunction:''' This is a string with the name of the function which you want to call.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''arguments:''' Any arguments you may want to pass to the function when it is called. Any number of arguments of can be specified, each being passed to the designated function.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns anything that the designated function has returned appropriately.  If the function does not exist, is not exported, or the call was not successful it will return ''nil''.&lt;br /&gt;
&lt;br /&gt;
==Example==&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;
This extract shows adding of a &amp;quot;kills&amp;quot; column to the scoreboard resource. This then sets the ''gameShowKills'' variable to true, telling the rest of the script to start outputting kills.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function showKills ( option )&lt;br /&gt;
	if option == false then&lt;br /&gt;
		-- Remove the &amp;quot;kills&amp;quot; column&lt;br /&gt;
		gameShowKills = false&lt;br /&gt;
		call(getResourceFromName(&amp;quot;scoreboard&amp;quot;), &amp;quot;removeScoreboardColumn&amp;quot;, &amp;quot;kills&amp;quot;)&lt;br /&gt;
	else&lt;br /&gt;
		-- Add the &amp;quot;kills&amp;quot; column&lt;br /&gt;
		gameShowKills = true&lt;br /&gt;
		call(getResourceFromName(&amp;quot;scoreboard&amp;quot;), &amp;quot;addScoreboardColumn&amp;quot;, &amp;quot;kills&amp;quot;)&lt;br /&gt;
		outputDebugString ( &amp;quot;Showing kills now...&amp;quot; )&lt;br /&gt;
	end&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;
{{Resource_functions}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/callServerFunction&amp;diff=30921</id>
		<title>ES/callServerFunction</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/callServerFunction&amp;diff=30921"/>
		<updated>2012-05-19T05:55:45Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;{{Useful Function}} &amp;lt;lowercasetitle/&amp;gt; __NOTOC__ {{Note_box|Se recomienda encerecidamente que valides la funcion que está siendo llamada o potencialmente un cliente puede hacer l...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Useful Function}}&lt;br /&gt;
&amp;lt;lowercasetitle/&amp;gt;&lt;br /&gt;
__NOTOC__&lt;br /&gt;
{{Note_box|Se recomienda encerecidamente que valides la funcion que está siendo llamada o potencialmente un cliente puede hacer lo que quiera con tu servidor - banear jugadores, agregarse a sí mismo como admin (dependiende de que tan bien estén configuradas las ACL ) etc. Por esta razón es que esta función no viene incluida dentro de MTA.}}&lt;br /&gt;
Esta funcion te permite llamar cualquier funcion de servidor desde el lado del cliente. Obviamente solo aquellas que están disponibles del lado del servidor. No importa si es una funcion MTA, una funcion estándar Lua o una funcion creada.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Los numeros se convierten automáticamente a string y vice versa en el servidor para evitar pérdida de datos. Si no necesitas esta caracterñistica, solo elimínala.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Nota Importante:''' Ten presente que ¡el nombre de la función debe ser un '''string'''!&lt;br /&gt;
&lt;br /&gt;
==Sintaxis==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;void callServerFunction( string funcname, [ var arg1, ... ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Argumentos Requeridos===&lt;br /&gt;
* '''funcname''': El nombre de la funcion de servidor que será llamada. Tambien puede ser una funcion dentro de una tabla, p.ej. &amp;quot;math.round&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Argumentos Opcionales===&lt;br /&gt;
{{ArgOpcionales}}&lt;br /&gt;
* '''arg1-argn''': The arguments that should be passed to the function.&lt;br /&gt;
&lt;br /&gt;
==Código==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Clientside Script&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 callServerFunction(funcname, ...)&lt;br /&gt;
    local arg = { ... }&lt;br /&gt;
    if (arg[1]) then&lt;br /&gt;
        for key, value in next, arg do&lt;br /&gt;
            if (type(value) == &amp;quot;number&amp;quot;) then arg[key] = tostring(value) end&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
    -- Si el controlador de eventos en el servidor no está dentro de mismo resource, reemplaza 'resourceRoot' con el elemento apropiado&lt;br /&gt;
    triggerServerEvent(&amp;quot;onClientCallsServerFunction&amp;quot;, resourceRoot , funcname, unpack(arg))&lt;br /&gt;
end&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;Serverside Script&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 callServerFunction(funcname, ...)&lt;br /&gt;
    local arg = { ... }&lt;br /&gt;
    if (arg[1]) then&lt;br /&gt;
        for key, value in next, arg do arg[key] = tonumber(value) or value end&lt;br /&gt;
    end&lt;br /&gt;
    loadstring(&amp;quot;return &amp;quot;..funcname)()(unpack(arg))&lt;br /&gt;
end&lt;br /&gt;
addEvent(&amp;quot;onClientCallsServerFunction&amp;quot;, true)&lt;br /&gt;
addEventHandler(&amp;quot;onClientCallsServerFunction&amp;quot;, resourceRoot , callServerFunction)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplo==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Cliente&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
En este ejemplo se quitan a los jugaores de su equipo.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- obtiene el elemento de jugador local&lt;br /&gt;
local _local = getLocalPlayer()&lt;br /&gt;
-- define el la funcion del controlador de comandos&lt;br /&gt;
function cmdLeaveTeam()&lt;br /&gt;
    -- establece el equipo del jugador a nil&lt;br /&gt;
    callServerFunction(&amp;quot;setPlayerTeam&amp;quot;, _local)&lt;br /&gt;
end&lt;br /&gt;
-- y en controlador de eme&lt;br /&gt;
addCommandHandler(&amp;quot;leaveTeam&amp;quot;, cmdLeaveTeam, false)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vea También==&lt;br /&gt;
{{Funciones Útiles}}&lt;br /&gt;
[[en:callServerFunction]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Funciones_%C3%9Atiles&amp;diff=30920</id>
		<title>Template:Funciones Útiles</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Funciones_%C3%9Atiles&amp;diff=30920"/>
		<updated>2012-05-19T05:54:31Z</updated>

		<summary type="html">&lt;p&gt;Kzman: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Needs_Checking|The function I added at the bottom should be scripted by someone. --[[User:Ransom|Ransom]] 21:45, 2 May 2012 (UTC)}}&lt;br /&gt;
&lt;br /&gt;
*[[ES/callClientFunction|callClientFunction]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función permite llamar cualquier función del lado del cliente desde el lado del servidor.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/callServerFunction|callServerFunction]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función permite llamar cualquier función del lado del servidor desde el lado del cliente.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/centerWindow|centerWindow]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función centra la ventana en cualquier resolución.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/Check|Check]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta funcion verifica si sus argumentos son de los tipos correctos y llama la función error si uno no lo es.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/coroutine.resume|coroutine.resume]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Fix for hidden coroutine error messages&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/doForAllElements|doForAllElements]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función puede ser usada para ejecutar una funcion especifica para todos los elementos de un tipo especifico.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/dxDrawColorText|dxDrawColorText]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función dibuja un texto dx con soporte para códigos de color #RRGGBB.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/findRotation|findRotation]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Toma dos puntos y devuelve la dirección del punto A al punto B.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/FormatDate|FormatDate]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Formatea una fecha sobre la basándose en una cadena de formato y la devuelve.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/getAge|getAge]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia', sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función la edad según el cumpleaños.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/getAlivePlayersInTeam|getAlivePlayersInTeam]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función devuelve una tabla de los jugadores vivos en un equipo.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/getCursorMoveOn|getCursorMoveOn]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función verifica de que forma se está moviendo el cursor actualmente.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/getElementSpeed|getElementSpeed]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función permite obtener la velocidad del elemento en unidades de kph o mph.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/getPlayerFromNamePart|getPlayerFromNamePart]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función permite obtener al jugador a partir de una parte de su nombre.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/getPointFromDistanceRotation|getPointFromDistanceRotation]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;»Encuentra un punto basado en su punto inicial, dirección y distancia.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/getResourceSettings|getResourceSettings]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función devuelve una tabla con los datos del resource.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/getTimestamp|getTimestamp]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Con esta funcion se puede obtener la [http://es.wikipedia.org/wiki/Tiempo_Unix marca de Tiempo Unix].&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/IfElse|IfElse]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Devuelve uno de dos valores basado en una expresión booleana.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/isLeapYear|isLeapYear]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Comprueba si año proporcionado es bisiesto.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/iterElements|iterElements]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Devuelve un iterador para tus bucles, ahorrando tiempo en escribir ipairs( getElementsByType( type ) ), en lugar de eso escribes: iterElements( type ).&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/math.round|math.round]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;»Redondea un número mientras  pueden establecerce el numero de decimales y el método.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/onVehicleWeaponFire|onVehicleWeaponFire]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Este código implementa un evento que provocado cuando un jugador en un vehículo dispara un arma del vehículo.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/RGBToHex|RGBToHex]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta funcion devuelve un string que representa el color en hexadecimal.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/setElementSpeed|setElementSpeed]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta funcio permite establecer la velocidad de movimiento de un elemento en unidades de kph o mph.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/setTableProtected|setTableProtected]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Protege una table y la hace de solo lectura.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/setVehicleGravityPoint|setVehicleGravityPoint]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función del lado del cliente establece una gravedad de vehiculo en la dirección de una coordenada tridimensional con la fuerza especificada.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/string.explode|string.explode]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función divide un string con un patrón separador dado y devuelve una tabla con las partes.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/table.copy|table.copy]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función copia una tabla completa y todas las tablas dentro de ella.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/table.map|table.map]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función recorre una tabla y reemplaza cada campo con lo que devuelva la función que es pasada, donde los valores de campo son pasados como primer argumento y opcionalmente más argumentos.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/table.size|table.size]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Encuentra el tamaño completo de una tabla.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/toHex|toHex]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función convierte un número decimal a un número hexadecimal, como una corrección para el lado del cliente.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/var_dump|var_dump]] &amp;lt;span style=&amp;quot;color:gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función entrega información acerca de una o más variables usando outputConsole(). &amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/multi_check|multi_check]] &amp;lt;span style=&amp;quot;color: gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función comprueba de de uno a varios elementos, util y limpia. &amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[ES/isElementInPhotograph|isElementInPhotograph]] &amp;lt;span style=&amp;quot;color: gray; font-family:'Georgia',sans-serif; font-size:smaller;&amp;quot;&amp;gt;» Esta función comprueba si un elemento estuvo en la foto de cámara de un jugador. Necesita se escrita aun. --[[User:Ransom|Ransom]] 21:45, 2 May 2012 (UTC) &amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Useful Functions]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:ArgOpcionales&amp;diff=30919</id>
		<title>Template:ArgOpcionales</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:ArgOpcionales&amp;diff=30919"/>
		<updated>2012-05-19T05:44:07Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;''NOTA:'' cuando se usan argumentos opcionales, debes poporcionar all arguments antes del que deseas usar. For more information on optional arguments, mira los [[ES/Argumentos Op...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''NOTA:'' cuando se usan argumentos opcionales, debes poporcionar all arguments antes del que deseas usar. For more information on optional arguments, mira los [[ES/Argumentos Opcionales|Argumentos Opcionales]].&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/Argumentos_Opcionales&amp;diff=30918</id>
		<title>ES/Argumentos Opcionales</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/Argumentos_Opcionales&amp;diff=30918"/>
		<updated>2012-05-19T05:34:30Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;Los '''Argumentos Opcionales''' son argumentos que son pasados a una funcion pero no son requeridos para que la funcion se ejecute. Generalmente, si no los especifican, de usará...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Los '''Argumentos Opcionales''' son argumentos que son pasados a una funcion pero no son requeridos para que la funcion se ejecute. Generalmente, si no los especifican, de usarán los valores por defecto.&lt;br /&gt;
&lt;br /&gt;
Cuando miras la Sintaxis para un argumento, los argumentos Opcionales siempre están encerrados entre parantesis cuadrados.&lt;br /&gt;
&lt;br /&gt;
Ejemplo:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;createVehicle ( int model, float x, float y, float z, [ float rx, float ry, float rz ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este ejemplo, '''rx''', '''ry''', y'''rz''' son '''Argumentos Opcionales'''.&lt;br /&gt;
&lt;br /&gt;
==Usando Argumentos Opcionales==&lt;br /&gt;
&lt;br /&gt;
Los '''Argumentos Opcionales''' tienen una limitación. No puedes usar ningún argumento opcional sin que ''sean proporcionados todos los argumentos.''&lt;br /&gt;
&lt;br /&gt;
Esto significa que, siguiendo el ejemplo anterior, si quisieras proporcionar '''rz''', tambien necesitarías proporcionar '''rx''', y '''ry''' ''en orden.''&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting Concepts]]&lt;br /&gt;
[[en:Optional Arguments]]&lt;br /&gt;
[[pl:Argumenty opcjonalne]]&lt;br /&gt;
[[ru:Optional Arguments]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Useful_Functions&amp;diff=30917</id>
		<title>Useful Functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Useful_Functions&amp;diff=30917"/>
		<updated>2012-05-19T04:59:25Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;#228B22&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This page lists functions that are not included in the server or the client, but are still useful.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
{{Useful_Functions}}&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
[[ES:Funciones Útiles]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Funciones_%C3%9Atiles&amp;diff=30916</id>
		<title>Funciones Útiles</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Funciones_%C3%9Atiles&amp;diff=30916"/>
		<updated>2012-05-19T04:57:25Z</updated>

		<summary type="html">&lt;p&gt;Kzman: moved Funciones Útiles to ES/Funciones Útiles: following the format&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[ES/Funciones Útiles]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/Funciones_%C3%9Atiles&amp;diff=30915</id>
		<title>ES/Funciones Útiles</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/Funciones_%C3%9Atiles&amp;diff=30915"/>
		<updated>2012-05-19T04:57:25Z</updated>

		<summary type="html">&lt;p&gt;Kzman: moved Funciones Útiles to ES/Funciones Útiles: following the format&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;#228B22&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Esta pagina contiene una lista de las functiones que no están incluidas como de servidor or de client, pero siguen siendo útiles.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
{{Funciones Útiles}}&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=IsTrainDerailable&amp;diff=30721</id>
		<title>IsTrainDerailable</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=IsTrainDerailable&amp;diff=30721"/>
		<updated>2012-05-15T02:33:08Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Example added&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server client function}}&lt;br /&gt;
This function will check if a train or tram is derailable.&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 isTrainDerailable ( vehicle vehicleToCheck )              &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''vehicleToCheck:''' The vehicle you wish to check.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the train is derailable, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example outputs to the player if the train which he's entered is derrailable or not&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;
trainModels = { 449, 537, 538, 570, 569, 590 }&lt;br /&gt;
lp = getLocalPlayer()&lt;br /&gt;
function playerEntered(theVehicle)&lt;br /&gt;
	for i,v in ipairs(trainModels) do&lt;br /&gt;
		if getElementModel(theVehicle) == v then&lt;br /&gt;
			if isTrainDerailable(theVehicle) then&lt;br /&gt;
				outputChatBox(&amp;quot;Warning: this train could be derailed.&amp;quot;)&lt;br /&gt;
				return&lt;br /&gt;
			else&lt;br /&gt;
				outputChatBox(&amp;quot;This train is safe.&amp;quot;)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onClientPlayerVehicleEnter&amp;quot;, getRootElement(), playerEntered)&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;
{{Vehicle_functions}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Element_tree&amp;diff=30720</id>
		<title>Element tree</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Element_tree&amp;diff=30720"/>
		<updated>2012-05-14T20:58:45Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Tre.png|frame|Element tree]]&lt;br /&gt;
MTA uses a so-called ''element tree'' to store all the elements that exist on the server and the client. This is directly related to the set of running [[resources]] and their map files' XML layout, although it can be changed at run-time by scripts.&lt;br /&gt;
&lt;br /&gt;
If you are familiar with the concept of ''trees'' in computer-science, this should be easy to understand. If you are not, think of it like a family tree - except everyone only has a single parent. Every [[element]] has a ''parent'' element.&lt;br /&gt;
&lt;br /&gt;
All elements that are created within scripts or from .map files are child elements of the resource they belong to. Thus, most elements (except for [[client]]s) exist only within resources and are also destroyed as soon as their resource is stopped.&lt;br /&gt;
&lt;br /&gt;
==Tree elements==&lt;br /&gt;
* '''root''': This is at the very base of the tree - all elements are children (or descendants) of this element.&lt;br /&gt;
* '''resource''': These are direct children of the root element - with one for each ''running'' resource. This element is called the ''resource root''. Its ID holds the name of the resource.&lt;br /&gt;
* '''map''': Each resource element contains at least one map element, representing either a &amp;quot;.map&amp;quot; file in the resource or the one containing the elements created by scripts (this is called the ''dynamic'' map). Their IDs contain the maps' filenames, or ''dynamic'' for the dynamic map.&lt;br /&gt;
** Map files can contain a number of other [[element]]s as well as an unlimited number of custom elements.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This in an example of a serverside tree dumped to XML from a running server.&lt;br /&gt;
''Please note that it is shortened on some places for the sake of overview.''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;root&amp;gt;&lt;br /&gt;
	&amp;lt;console/&amp;gt;&lt;br /&gt;
	&amp;lt;player dontRespawn=&amp;quot;false&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;player dontRespawn=&amp;quot;false&amp;quot; lastSpawnarea=&amp;quot;&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;resourcebrowser&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;ajax&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;resourcemanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;spawnmanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;mapmanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;runcode&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;fr&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;vehicle/&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;elementbrowser&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;assault&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;team/&amp;gt;&lt;br /&gt;
			&amp;lt;team/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
			&amp;lt;marker/&amp;gt;&lt;br /&gt;
			&amp;lt;colshape/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;as-farm&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;/&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;as-farm.map&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;-8.3976354598999&amp;quot; posX=&amp;quot;20.182683944702&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;32.166355133057&amp;quot; posX=&amp;quot;-46.90763092041&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;35.214984893799&amp;quot; posX=&amp;quot;-33.486911773682&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;35.214984893799&amp;quot; posX=&amp;quot;-33.486911773682&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;objective id=&amp;quot;first&amp;quot; type=&amp;quot;checkpoint&amp;quot; description=&amp;quot;Breach into the farm&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;pickup type=&amp;quot;weapon&amp;quot; ... /&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
&amp;lt;/root&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
===Explanation===&lt;br /&gt;
This tree consists of a number of resource root elements, the [[Element/Console|server console]] and two [[player]] elements, that are direct children of the '''root''' element. All these resources have a ''dynamic map'' as child element (it is just not shown for most of them). These contain the elements that are created dynamically by this resource using scripts, for example a [[vehicle]]. If the resource has a map file, it is also a child element, itself containing all the elements in the .map file.&lt;br /&gt;
&lt;br /&gt;
Let's have a closer look at the '''assault''' resource: This contains just one ''dynamic'' map that has 2 teams, 3 blips, 1 marker and 1 colshape as child elements. These are the elements that are created by the script, for example the marker, the colshape and one of the blips are probably used for the objective.&lt;br /&gt;
&lt;br /&gt;
The '''as-farm''' resource's function on the contrary is to be a map for the '''assault''' gamemode. The dynamic map is empty (it could contain elements if there was a script in it though), while there is a map called 'as-farm.map', that contains a number of elements. These are mostly custom elements (like spawngroup, spawnarea, objective) but also a few elements that MTA creates automactically after loading the map (like pickup). In the brackets after the element type, you can see the element data it contains. These are identical with the attributes the .map file contains within these elements, while you can also set and get element data for any other elements (e.g. players) with [[setElementData]] and [[getElementData]].&lt;br /&gt;
&lt;br /&gt;
==Pratical application==&lt;br /&gt;
Elements can have as many children as they like. This does not directly affect the map in any way, but it comes in to its own when combined with the scripting system.&lt;br /&gt;
&lt;br /&gt;
===Setting data for elements===&lt;br /&gt;
If you call a set... function on a node of the element tree, the function will affect every element within it (that it can work on).&lt;br /&gt;
&lt;br /&gt;
So, the following code would set the size of every marker (the only type of element the setMarkerSize function can work on) that is below the root element to ''2.5''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
setMarkerSize ( getRootElement(), 2.5 )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The same can be done on any element, it is not restricted to the root element.&lt;br /&gt;
&lt;br /&gt;
===Map manager===&lt;br /&gt;
The [[#Example|example above]] shows the way the [[map manager]] uses different resources. The 'assault' resource is the gamemode, that manages what happens on the server using scripts and thus by creating elements in the tree dynamically. When a map resource is started, the gamemode receives a [[resource|resource pointer]] referring to the started resource - in this case ''as-farm'' - from which you can retrieve and store the resource root element. Using this element in conjunction with functions like [[getElementsByType]], [[getElementData]] and various others, you can access any of the information that was loaded into the tree from the 'as-farm.map'-file through scripts in the gamemode resource.&lt;br /&gt;
&lt;br /&gt;
Another thing that has to be considered related to the tree of elements is the fact that when you change the map, you don't have to remove any elements you created within the map resource, while you '''do''' have to remove elements that are created within the gamemode resource, '''if''' they are specific to the map (which will be probably the case for those items you create based on information read from the map resource's .map files).&lt;br /&gt;
&lt;br /&gt;
==Element browser==&lt;br /&gt;
You can start the resource ''elementbrowser'' to see a live view of the element tree on your server. Just start the resource and browser to your server's web page and choose the ''Element browser'' option in the sidebar (firefox only currently).&lt;br /&gt;
[[Category:Scripting Concepts]]&lt;br /&gt;
[[es:Árbol de elementos]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/%C3%81rbol_de_elementos&amp;diff=30719</id>
		<title>ES/Árbol de elementos</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/%C3%81rbol_de_elementos&amp;diff=30719"/>
		<updated>2012-05-14T20:58:44Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Translating&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Tre.png|frame|Árbol de elementos (En inglés)]]&lt;br /&gt;
MTA usa un llamado ''árbol de elementos'' para almacenar todos los elementos que existen en el servidor y en el cliente. Esto está directamente relacionado con los [[resources]] y el diseño de los archivos de mapa XML, aunque se puede cambiar mediante scripts mientras se ejecuta.&lt;br /&gt;
&lt;br /&gt;
Si conoces el concepto de ''árboles'' en computación, deberías entenderlo fácilmente. Si no, piensa que es un árbol genealógico o familiar - solo que todos tienen un solo padre. Cada [[ES/elemento|elemento]] tiene un elemento ''padre''.&lt;br /&gt;
&lt;br /&gt;
Todos los elementos creados dentro de un script o desde un archivo .map son elementos hijos del resource al que pertenecen. Por esta razón, la mayor parte de los elementos (excepto para los [[ES/cliente|clientes]]) existen solo dentro de los resources y además son destruidos tan pronto como el resource es detenido.&lt;br /&gt;
&lt;br /&gt;
==Elementos de árbol==&lt;br /&gt;
* '''raíz''' o '''root''': Es la base de todo el árbol - todos los elementos son hijos (o descendientes) de este elemento.&lt;br /&gt;
* '''resource''': Son hijos directos del elemento raíz - con uno por cada resource que se está ''ejecutando''. Este elemento es llamado la ''raíz del resource''. Su ID siguen con el mismo nombre del resource.&lt;br /&gt;
* '''map''' o '''mapa''': Cada elemento resource contiene por lo menos un elemento mapa que puede representar un archivo &amp;quot;.map&amp;quot; dentro del resource o el que contiene los elementos creados por los scripts (que es llamado el mapa ''dinámico''). Sus IDs contienen los nombres de los archivos de mapa, o ''dynamic'' para el mapa dinámico.&lt;br /&gt;
** Los archivos de mapa también puede contener otros [[ES/elemento|elementos]] así como también una cantidad ilimitada de elementos personalizados.&lt;br /&gt;
&lt;br /&gt;
==Ejemplo==&lt;br /&gt;
Este es un ejemplo de un árbol del lado del servidor volcado a un XML de un servidor en ejecución.&lt;br /&gt;
''El archivo se encuentra acortado en ciertos lugaras por razones de espacio.''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;root&amp;gt;&lt;br /&gt;
	&amp;lt;console/&amp;gt;&lt;br /&gt;
	&amp;lt;player dontRespawn=&amp;quot;false&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;player dontRespawn=&amp;quot;false&amp;quot; lastSpawnarea=&amp;quot;&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;resourcebrowser&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;ajax&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;resourcemanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;spawnmanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;mapmanager&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;runcode&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;fr&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;vehicle/&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;elementbrowser&amp;quot;/&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;assault&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;team/&amp;gt;&lt;br /&gt;
			&amp;lt;team/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
			&amp;lt;marker/&amp;gt;&lt;br /&gt;
			&amp;lt;colshape/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
			&amp;lt;blip/&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
	&amp;lt;resource id=&amp;quot;as-farm&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;dynamic&amp;quot;/&amp;gt;&lt;br /&gt;
		&amp;lt;map id=&amp;quot;as-farm.map&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;-8.3976354598999&amp;quot; posX=&amp;quot;20.182683944702&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;32.166355133057&amp;quot; posX=&amp;quot;-46.90763092041&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;35.214984893799&amp;quot; posX=&amp;quot;-33.486911773682&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;spawngroup req=&amp;quot;&amp;quot; type=&amp;quot;attacker&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;spawnarea posY=&amp;quot;35.214984893799&amp;quot; posX=&amp;quot;-33.486911773682&amp;quot; skins=&amp;quot;9&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;/spawngroup&amp;gt;&lt;br /&gt;
			&amp;lt;objective id=&amp;quot;first&amp;quot; type=&amp;quot;checkpoint&amp;quot; description=&amp;quot;Breach into the farm&amp;quot; ... /&amp;gt;&lt;br /&gt;
			&amp;lt;pickup type=&amp;quot;weapon&amp;quot; ... /&amp;gt;&lt;br /&gt;
		&amp;lt;/map&amp;gt;&lt;br /&gt;
	&amp;lt;/resource&amp;gt;&lt;br /&gt;
&amp;lt;/root&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
===Explicación===&lt;br /&gt;
Este árbol consiste en una cantidad de elementos raíz de un resource, la [[Element/Console|consola del servidor]] y dos elementos [[ES/jugador|jugador]], que son hijos directos del elemento '''raíz''' (o ''root element''). Todos estos resources tienen un ''mapa dinámico'' como elemento hijo (que no se muestra completamente). Estos contienen los elementos que son creados dinámicamente por este resource usando scripts, por ejemplo un [[ES/vehículo|vehículo]]. Si el resource tiene un archivo de mapa, este también sería un elemento hijo, por si mismo contiene todos los elementos dentro del archivo .map.&lt;br /&gt;
&lt;br /&gt;
Centremos la mirada en el resource '''assault''': Este contiene solo un mapa ''dinámico'' que tiene 2 equipos, 3 blips (puntos en el radar), 1 marcador y 1 figura de choque (colshape) como elementos hijos. Estos son los elementos creados por el script, por ejemplo el marcador, la figura de choque y uno de los blips son usados probablemente para el objetivo.&lt;br /&gt;
&lt;br /&gt;
La funcion del resource '''as-farm''' del lado contrario está para ser un mapa para el modo de juego '''assault'''. El mapa dinámico está vacío (podría contener elementos si hubiese un script dentro de él), mientras hay un mapa llamado 'as-farm.map', que contene cierto número de elementos. Mayoritariamente hay elementos personalizados (como spawngroup, spawnarea, objective) pero tambien hay ciertos elementos que MTA crea automáticamente lusgo de cargar el mapa (como un pickup). Dentro de los paréntesis, después del tipo de elemento, se pueden apreciar los datos que contiene, los cuales son idénticos a los atributos que el archivo .map contiene dentro de estos elementos, mientras que puedes ajustar y obtener datos de de cualquier otro elemento (p.el. jugadores) con [[ES/setElementData|setElementData]] and [[ES/getElementData|getElementData]].&lt;br /&gt;
&lt;br /&gt;
==Aplicación práctica==&lt;br /&gt;
Los elementos pueden tener tantos hijos como se deseen. Esto no afecta directamente al mapa mapa de ninguna forma, sin embargo cuando se combina con el sistema de scripts puede suceder.&lt;br /&gt;
&lt;br /&gt;
===Estableciendo datos para los elementos===&lt;br /&gt;
Si llamamos una función set... en un nodo del árbol de elementos, la función afectará a cada elemento dentro de este (si es aplicable).&lt;br /&gt;
&lt;br /&gt;
Así, el siguiente código debería establecer el tamaño de cada marcador (que es el único elemento con el que funciona la función setMarkerSize) que está bajo el elemento raíz en ''2.5''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
setMarkerSize ( getRootElement(), 2.5 )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The same can be done on any element, it is not restricted to the root element.&lt;br /&gt;
&lt;br /&gt;
===El Mapmanager===&lt;br /&gt;
El [[#Ejemplo|ejemplo anterior]] la manera en que el [[mapmanager]] usa diferentes resources. El resource 'assault' es el modo de juego, que controla lo que sucede en el servidor usando scripts y por tanto creando elementos en el árbol dinámicamente. Cuando se inicia un resource de mapa, el modo de juego recibe un [[resource|puntero hacia el resource]] haciendo referencia al resource iniciado - en este caso es ''as-farm'' - desde el cual se pueden recuperar y almacenar elementos raíces de resources. Usar este elemento en conjunto con funciones como [[ES/getElementsByType|getElementsByType]], [[ES/getElementData|getElementData]] y muchas otras, puedes acceder a toda la información que fue cargada dentro del árbol desde el archivo 'as-farm.map' por medio de scripts en el resource de modo de juego.&lt;br /&gt;
&lt;br /&gt;
Otro asunto a considerar relacionado con el árbol de elementos es el hecho de que cuando cambias el mapa, no debes quitar ningún elemento que hayas creado dentro del resource de mapa, mientras que '''sí''' tienes que quitar los elementos que son creados dentro del resource de modo de juego, '''si y solo si''' son específicos para el mapa (el cual será probablemente el caso en el que esos items que creaste estén basados en información que lean desde el archivo .map del resource de mapa).&lt;br /&gt;
&lt;br /&gt;
==Navegador de elementos==&lt;br /&gt;
Puedes iniciar el resource ''elementbrowser'' para obtener una visión actual del árbol de elementos de tu servidor. Basta con iniciar el  resource y navegar por la página web de tu servidor y elegir la opción ''Element browser'' en la barra lateral.&lt;br /&gt;
[[Category:Scripting Concepts]]&lt;br /&gt;
[[en:Element tree]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/P%C3%A1gina_Principal&amp;diff=30718</id>
		<title>ES/Página Principal</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/P%C3%A1gina_Principal&amp;diff=30718"/>
		<updated>2012-05-14T19:22:24Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Fixed FAQ link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px solid #D8D8D8; padding: 5px; height: 120px;&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Mtalogo.png|left|100px]]'''Bienvenid@ a la Wiki de Multi Theft Auto: San Andreas en español.''' Aquí puedes encontrar mucha información sobre el uso de Multi Theft Auto.&lt;br /&gt;
&lt;br /&gt;
Hay muchas [[ES/Cómo puedes ayudar|cosas que puedes hacer para ayudarnos]] a mejorar MTA - crea un mapa, un modo de juego, escribe códigos de ejemplo, tutoriales, traduce páginas del inglés al español, o simplemente juega y reporta los bugs que encuentres.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;''Stop playing with yourself''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|-&lt;br /&gt;
|width=&amp;quot;50%&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&amp;lt;div style=&amp;quot;border: 1px solid #D8D8D8; padding:4px 8px 8px 8px; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; width: 32px;&amp;quot;&amp;gt;[[File:Input-gaming.png‎]]&amp;lt;/div&amp;gt;&lt;br /&gt;
=== Jugando ===&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #FFEEAA;&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Go-down.png|link=http://mtasa.com/]] ''' [http://mtasa.com/ Descargar Multi Theft Auto: San Andreas {{Current Version|full}}]'''&amp;lt;/div&amp;gt;&lt;br /&gt;
* [[ES/Manual del Cliente|Manual del Cliente]] [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
* [[Changes_in_1.1|Cambios de la versión 1.1]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[ES/Problemas_Conocidos_-_FAQ|Problemas Conocidos]] [[Image:flag_es.png|En Español|20px]] (Traducción: 10%)&lt;br /&gt;
* [[Upgrading_from_MTA:Race|Cambiando MTA:Race a MTA:SA 1.0.x]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[ES/Manual del Servidor|Manual del Servidor]] [[Image:flag_es.png|En Español|20px]] (Traducción: 90%)&lt;br /&gt;
* [[Map_manager|El Resource &amp;quot;Map Manager&amp;quot;]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&lt;br /&gt;
====Editor de Mapas====&lt;br /&gt;
*[[ES/Resource:Editor|Manual del Editor]] [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
*[[Resource:Editor/EDF|EDF: Formato de Definiciones del Editor]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
*[[Resource:Editor/Plugins|Plugins para el Editor]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
*[[ES/Resource:Editor#Preguntas_Frecuentes|Preguntas Frecuentes]] [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
&lt;br /&gt;
====Bases de Datos====&lt;br /&gt;
* [[:Category:Resource|Catálogo de Resources]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[ES/Scripts de Cliente|Scripts de Cliente]] [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
* [[Modules| Módulos]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px solid #D8D8D8; padding:4px 8px 8px 8px; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; width: 32px;&amp;quot;&amp;gt;[[File:Applications-development.png‎‎‎]]&amp;lt;/div&amp;gt;&lt;br /&gt;
====Desarrollando Multi Theft Auto====&lt;br /&gt;
[[File:Go-down.png|link=http://nightly.mtasa.com/]] [http://nightly.mtasa.com/ Nightly builds]&lt;br /&gt;
* [[Compiling_MTASA|Compilando MTA:SA en Windows]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[Building_MTASA_Server_on_Mac_OS_X|Compilando MTA:SA en Mac OS X]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[Building_MTASA_Server_on_GNU_Linux|Compilando MTA:SA en GNU/Linux]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[Coding guidelines|Guías de Codificación]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [http://code.google.com/p/mtasa-blue Google Code SVN] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [http://bugs.mtasa.com/roadmap_page.php Seguimiento de Versiones] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [http://bugs.mtasa.com/ Central de Reportes de Bugs] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px solid #D8D8D8; padding:4px 8px 8px 8px; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; width: 32px;&amp;quot;&amp;gt;[[File:Applications-office.png‎]]&amp;lt;/div&amp;gt;&lt;br /&gt;
===Wiki - Cómo puedes ayudar===&lt;br /&gt;
* Termina la documentación para [[:Category:Incomplete|funciones incompletas]].&lt;br /&gt;
* [[:Category:Needs_Example|Crea ejemplos para eventos y funciones]].&lt;br /&gt;
* Revisa y verifica [[:Category:Needs Checking|páginas que necesitan revisión]].&lt;br /&gt;
* Escribe tutoriales para ayudar a la gente.&lt;br /&gt;
* Traduce las páginas del wiki.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px solid #D8D8D8; padding:4px 8px 8px 8px; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; width: 32px;&amp;quot;&amp;gt;[[File:Internet-group-chat.png‎]]&amp;lt;/div&amp;gt;&lt;br /&gt;
=== Comunidad ===&lt;br /&gt;
* [http://forum.multitheftauto.com/ Foro] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
** [http://forum.multitheftauto.com/viewforum.php?f=122&amp;amp;sid=72be1c29dd00c4442f8112cc09818283 Sección en español] [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
* [irc://irc.multitheftauto.com/mta Canal IRC] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [http://community.mtasa.com/ Comunidad MTA] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [http://www.youtube.com/user/MTAQA Canal de YouTube oficial] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding:4px 8px 8px 8px; margin:10px; text-align:center&amp;quot;&amp;gt;&lt;br /&gt;
[[File:Osi symbol.png|75px|link=http://opensource.org/]]&lt;br /&gt;
'''Multi Theft Auto''' es un '''Proyecto Open Source'''. &lt;br /&gt;
¡Todos podemos contribuir a mejorar Multi Theft Auto!&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;50%&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px solid #D8D8D8; padding:4px 8px 8px 8px; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; width: 32px;&amp;quot;&amp;gt;[[File:Accessories-text-editor.png]]&amp;lt;/div&amp;gt;&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
* [[ES/Resources|Introducción a los Resources]]  [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
** [[Resource Web Access|Acceso Web con Resources]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
** [[Meta.xml|Sobre el archivo &amp;quot;meta.xml&amp;quot;]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
** [[:Category:Resource|Catálogo de Resources]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
** [[ACL]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[ES/Introducción a Lua|Introducción a Lua]] [[Image:flag_es.png|En Español|20px]] (Traducción: 70%)&lt;br /&gt;
** [[ES/Introducción a la Programación de GUI|Introducción al GUI]] [[Image:flag_es.png|En Español|20px]] (Traducción: 40%)&lt;br /&gt;
** [[Debugging|Tutorial de Depuración]] [[Image:flag_us.png|En Inglés|20px]] - Encontrar errores en scripts.&lt;br /&gt;
* [[Useful_Functions| Funciones útiles]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[Writing_Gamemodes|Escribiendo Modos de Juego]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
====Ayuda General de Lua====&lt;br /&gt;
*[http://www.lua.org/manual/5.1/es/manual.html Manual de Referencia de Lua 5.1]  [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
*[http://www.lua.org/pil/index.html Manual Programando en Lua]  [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
*[http://lua-users.org/wiki/TutorialDirectory Lua Wiki]  [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
*[http://nixstaller.berlios.de/manual/0.2/nixstaller_9.html Guía general de Lua de Nixstaller]  [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
====Referencia====&lt;br /&gt;
* [[Client Scripting Functions|Funciones de Cliente]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[Client Scripting Events|Eventos de Cliente]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
* [[ES/Funciones de Servidor|Funciones de Servidor]] [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
* [[Server Scripting Events|Eventos de Servidor]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&amp;lt;!-- Incomplete * [[Module functions|Lista de funciones de módulos externos de servidor]] [[Image:flag_us.png|En Inglés]] --&amp;gt;&lt;br /&gt;
* [[ES/Clases MTA| Clases de MTA]] [[Image:flag_es.png|En Español|20px]]&lt;br /&gt;
**[[Element tree| Árbol de Elementos]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px solid #D8D8D8; padding:4px 8px 8px 8px; margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; width: 32px;&amp;quot;&amp;gt;[[File:System-file-manager.png]]&amp;lt;/div&amp;gt;&lt;br /&gt;
====[[Id|Lista de ID's]]====&lt;br /&gt;
*[[Animations|Animaciones]]&lt;br /&gt;
*[[ES/Skins de Personajes|Skins]]&lt;br /&gt;
*[[CJ_Clothes|Ropa]]&lt;br /&gt;
*[[Garage|Garajes]]&lt;br /&gt;
*[[Interior IDs|Interiores]]&lt;br /&gt;
*[[Projectiles|Proyectiles]]&lt;br /&gt;
*[[Radar Blips|Iconos de Radar]]&lt;br /&gt;
*[[Sounds|Sonidos]]&lt;br /&gt;
*[[Vehicle IDs|ID's de Vehículos]]&lt;br /&gt;
*[[Vehicle Colors|Colores de Vehículos]]&lt;br /&gt;
*[[Vehicle Upgrades|Mejoras de Vehículos]]&lt;br /&gt;
*[[Weapons|Armas]]&lt;br /&gt;
*[[ES/Climas|Climas]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Equipo de Traducción====&lt;br /&gt;
* [mailto:zorrigas@gtagamingchile.com zorrigas@gtagamingchile.com]&amp;lt;br&amp;gt;&lt;br /&gt;
* [mailto:Brijido_XD@hotmail.com Brijido_XD@hotmail.com]&amp;lt;br&amp;gt;&lt;br /&gt;
* Benxamix2/The Kid&lt;br /&gt;
* [mailto:matiuno@gmail.com matiuno@gmail.com]&amp;lt;br&amp;gt;&lt;br /&gt;
* [mailto:cesarcastillo4@gmail.com cesarcastillo4@gmail.com]&amp;lt;br&amp;gt;&lt;br /&gt;
* [mailto:alex_firexx@hotmail.com alex_firexx@hotmail.com]&amp;lt;br&amp;gt;&lt;br /&gt;
* [mailto:carlos_olivo@msn.com carlos_olivo@msn.com]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''¡NO ELIMINES CONTENIDO SIN AUTORIZACIÓN!'''&amp;lt;br&amp;gt; Tampoco uses modismos, usa el Castellano (Internacional), y trata de que al traducir todo quede tan claro como puedas, y la ortografía sea la mejor posible.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
{{Languages list|es}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/Funciones_de_Servidor&amp;diff=30688</id>
		<title>ES/Funciones de Servidor</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/Funciones_de_Servidor&amp;diff=30688"/>
		<updated>2012-05-14T03:01:08Z</updated>

		<summary type="html">&lt;p&gt;Kzman: /* Funciones de Eventos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;server&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
Esta página muestra todas las funciones de '''servidor''' que han sido implementadas y están disponibles como funciones nativas. Para pedir que se cree alguna función o un evento, visita el artículo oficial de [[Requested Functions and Events|Pedido de Funciones y Eventos]] o http://bugs.mtasa.com.&lt;br /&gt;
&lt;br /&gt;
Ten en cuenta que las funciones se pueden también extender cargando un modulo dinámico que entregue una nueva funcionalidad, como la base de datos MySQL. Estas funciones no son nativas y requieren que el módulo esté cargado para funcionar.&lt;br /&gt;
&lt;br /&gt;
Véase [[Modules|Módulos]] para una lista de funciones de servidor no-nativas y módulos que están disponibles.&lt;br /&gt;
&lt;br /&gt;
Para las funciones de utilidad no-nativas hechas por usuarios de MTA, revisa la página de [[Useful_Functions|Funciones Útiles]].&lt;br /&gt;
&lt;br /&gt;
'''Las funciones de cliente se pueden encontrar en el artículo sobre [[Client Scripting Functions|Funciones de cliente]].'''&lt;br /&gt;
&lt;br /&gt;
'''También ten en cuenta que casi todas las funciones presentes no presentan una traducción en su definición'''&lt;br /&gt;
 &lt;br /&gt;
==Funciones de Cuenta==&lt;br /&gt;
{{Funciones_de_Cuenta}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de ACL==&lt;br /&gt;
{{Funciones_de_ACL}}&lt;br /&gt;
&lt;br /&gt;
==Funciones Administrativas==&lt;br /&gt;
{{Funciones_Administrativas}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Audio==&lt;br /&gt;
{{Audio_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Anuncios==&lt;br /&gt;
{{Announce_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Íconos de Radar (Blip)==&lt;br /&gt;
{{Blip_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Cámara==&lt;br /&gt;
{{Camera functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Objetos de Colisión==&lt;br /&gt;
{{Collision shape functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Ropa y Cuerpo==&lt;br /&gt;
{{Clothes and body functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Cursor==&lt;br /&gt;
{{Cursor_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Elementos==&lt;br /&gt;
{{Element functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Eventos==&lt;br /&gt;
{{Funciones de eventos}}&lt;br /&gt;
&lt;br /&gt;
==Funciones Explosivas==&lt;br /&gt;
{{Explosion_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Archivos==&lt;br /&gt;
{{Funciones_de_archivos}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de HTTP==&lt;br /&gt;
{{HTTP_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Entrada==&lt;br /&gt;
{{Input_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Mapa==&lt;br /&gt;
{{Map_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Marcadores==&lt;br /&gt;
{{Marker functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Módulos==&lt;br /&gt;
{{Module functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Objetos==&lt;br /&gt;
{{Object functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de PED's==&lt;br /&gt;
{{Ped_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Pickup's==&lt;br /&gt;
{{Pickup functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Jugadores==&lt;br /&gt;
{{Player functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Áreas de Radar==&lt;br /&gt;
{{Radar area functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de &amp;quot;Resources&amp;quot;==&lt;br /&gt;
{{Resource functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Serial==&lt;br /&gt;
{{Serial functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Servidor==&lt;br /&gt;
{{Server functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Propiedades==&lt;br /&gt;
{{Settings registry functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de SQL==&lt;br /&gt;
{{SQL_functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Equipos==&lt;br /&gt;
{{Team functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Texto==&lt;br /&gt;
{{Text functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Utilidad==&lt;br /&gt;
{{Utility functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Vehículos==&lt;br /&gt;
{{Vehicle functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Agua==&lt;br /&gt;
{{Water functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de Arma==&lt;br /&gt;
{{Weapon functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones del Mundo==&lt;br /&gt;
{{World functions}}&lt;br /&gt;
&lt;br /&gt;
==Funciones de XML==&lt;br /&gt;
{{XML functions}}&lt;br /&gt;
&lt;br /&gt;
[[ru:Server Scripting Functions]]&lt;br /&gt;
[[en:Server Scripting Functions]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Event_functions&amp;diff=30687</id>
		<title>Template:Event functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Event_functions&amp;diff=30687"/>
		<updated>2012-05-14T02:59:11Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[[addEvent]]&lt;br /&gt;
*[[addEventHandler]]&lt;br /&gt;
*[[cancelEvent]]&lt;br /&gt;
*[[getCancelReason]]&lt;br /&gt;
*[[removeEventHandler]]&lt;br /&gt;
*[[triggerClientEvent]]&lt;br /&gt;
*[[triggerEvent]]&lt;br /&gt;
*[[wasEventCancelled]]&lt;br /&gt;
{{New items|3.0151|1.3.1|&lt;br /&gt;
*[[triggerLatentClientEvent]]&lt;br /&gt;
*[[getLatentEventHandles]]&lt;br /&gt;
*[[getLatentEventStatus]]&lt;br /&gt;
*[[cancelLatentEvent]]&lt;br /&gt;
}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[es:Event functions]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Event_system&amp;diff=30686</id>
		<title>Event system</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Event_system&amp;diff=30686"/>
		<updated>2012-05-14T02:57:36Z</updated>

		<summary type="html">&lt;p&gt;Kzman: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
The event system is at the core of MTA scripting. Events work closely in conjunction with the element tree. Events are triggered when something happens - a player enters a marker, an element is clicked on etc. Each event has a source element, this is the element that performed the action.&lt;br /&gt;
&lt;br /&gt;
==Event handlers==&lt;br /&gt;
To use the event system, you attach event handlers to elements in the element tree using [[addEventHandler]]. When you do this, your function will get triggered for all the events triggered on that element, it's parents (and their parents, etc.) and it's children (and their children). As such, an event handler attached to the ''root'' element will be triggered when an event occurs for any element. As a consequence you should generally use as specific a handler as you can. If you wish to just see when the player enters a specific marker, just attach the event handler to that marker.&lt;br /&gt;
&lt;br /&gt;
Each event handler has two 'hidden' variables:&lt;br /&gt;
* '''source''': This is the element that the event originated from.&lt;br /&gt;
* '''this''': This is the element that the handler is being triggered on (i.e. the one you attached it to with addEventHandler).&lt;br /&gt;
&lt;br /&gt;
The ''source'' variable is the most important one for most handlers. You almost always will want to reference this variable to tell what element triggered the event. The ''this'' variable has some uses for ensuring that an event was emitted by the element that you attached the handler to.&lt;br /&gt;
&lt;br /&gt;
It is ''important'' to note that events follow the element hierachy. All events are initially triggered on the ''source'' element, followed by all the parent and children elements. This has few important implications:&lt;br /&gt;
&lt;br /&gt;
* An event triggered on the root element will be triggered on every element in the element tree. This should be avoided where possible.&lt;br /&gt;
* All events anywhere in the element tree will be triggered on the root element. This means you can easily catch every event of a type by attaching a handler to the root element. Only do this if you genuinely want every event of that type, otherwise attach it somewhere more specific in the element tree.&lt;br /&gt;
* You can attach an event handler to your resource's root element to get all the events triggered by elements your resource contains.&lt;br /&gt;
* You can create 'dummy' elements to catch events from a group of child elements&lt;br /&gt;
* You can use dummy elements specified in a .map file (e.g. &amp;lt;flag&amp;gt;) and create 'real' representations for them (e.g. objects) and make these real elements children of the dummy element. Event handlers can then be attached to the dummy element and it will receive all the events of the real elements. This is useful for when one resource manages the representation of the element (creating the objects, for example), while another wants to handle special events. This could be a map resource that wants to handle a flag being captured in a specific way - the map resource would (generally) not be aware of the way the flag is represented. This doesn't matter as it can just attach handlers to it's dummy flag element while the other gamemode resource can handle the representation.&lt;br /&gt;
&lt;br /&gt;
The function you attached to an event gets called and passed a bunch of arguments. These arguments are event-specific. Each event has specific parameters, for instance [[onClientGUIClick]] has 4 parameters, which are:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;string button, string state, int absoluteX, int absoluteY&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The function you attached to this event will be passed these parameters as arguments. You must remember that each event has different parameters.&lt;br /&gt;
&lt;br /&gt;
==Built in events==&lt;br /&gt;
MTA has a number of built in events. These are listed on the pages [[Client Scripting Events]] and [[Scripting Events]].&lt;br /&gt;
&lt;br /&gt;
==Custom events==&lt;br /&gt;
You can create your own events that can be triggered across all resources. This is an important way to communicate with other resources and allow them to hook into your code. To add your own custom event, just call the [[addEvent]] function. You can then use the [[triggerEvent]] function to trigger that event any time you want - either using a timer, or based on a more general event. &lt;br /&gt;
&lt;br /&gt;
For example, you could be making a Capture the Flag game mode and want to trigger an event when a player captures the flag. You could do this by attaching a event handler to the standard MTA [[onMarkerHit]] event and checking that the player entering the marker has the flag. if they do, you can then trigger your more specific ''onFlagCaptured'' event and other resources could handle this as they please.&lt;br /&gt;
&lt;br /&gt;
==Canceling==&lt;br /&gt;
Events can be canceled with [[cancelEvent]]. This can have a variety of effects, but in general this means that the server will not perform whatever action it would usually do. For example, canceling [[onPickupUse]] would prevent a player being given what they tried to pick up, canceling [[onVehicleStartEnter]] would prevent the player entering the vehicle. You can check if the currently active event has been canceled using [[wasEventCanceled]]. It's important to note that canceling event ''does not'' prevent other event handlers being triggered.&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting Concepts]]&lt;br /&gt;
[[es:Sistema de eventos]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Evento&amp;diff=30685</id>
		<title>Evento</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Evento&amp;diff=30685"/>
		<updated>2012-05-14T02:57:10Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Redirected page to ES/Sistema de eventos&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[ES/Sistema de eventos]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/Sistema_de_eventos&amp;diff=30684</id>
		<title>ES/Sistema de eventos</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/Sistema_de_eventos&amp;diff=30684"/>
		<updated>2012-05-14T02:56:53Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;__NOTOC__ El sistema de eventos se encuentra en el núcleo del scripting de MTA. Los eventos funcionan en conjunto con el árbol de elementos. Los eventos son provocados cuando a...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
El sistema de eventos se encuentra en el núcleo del scripting de MTA. Los eventos funcionan en conjunto con el árbol de elementos. Los eventos son provocados cuando algo sucede - un jugador entra a un marcador, un elemento es cliqueado, etc. Cada evento tiene un elemento de origen, que es el que realiza la acción.&lt;br /&gt;
&lt;br /&gt;
==Controladores de eventos==&lt;br /&gt;
Para usar el sistema de eventos, se une o liga el controlador de eventos a los elementos en el árbol de elementos usando [[ES/addEventHandler|addEventHandler]]. Cuando se hace esto, las funciones serán activadas para todos los eventos que fueron provocados en ese elemento, sus padres e hijos. Por si mismo, un controlador de eventos ligado al elemento ''raíz'' será provocado cuando ocurra un evento para cualquier elemento. Como consecuencia se debe usar generalmente un controlador específico, cuando se pueda. Si solo se desea ver cuando el jugador entra a un marcador específico, solo se une el controlador de evento a dicho marcador.&lt;br /&gt;
&lt;br /&gt;
Cada controlador de evento tiene dos variables 'ocultas':&lt;br /&gt;
* '''source''': Este es el elemento que origina el evento.&lt;br /&gt;
* '''this''': Este el elemento al cual se le provoca (p.ej. el que uniste con addEventHandler).&lt;br /&gt;
&lt;br /&gt;
La variable ''source'' es la mas importante para la mayoría de los controladores. Casi siempre se querrá hacer referencia a esta variable para decir que elemento provoco el evento. La variable ''this'' tiene algunos usos para asegurarse de que el evento fue emitido por el elemento al que el controlador se unió.&lt;br /&gt;
&lt;br /&gt;
Es ''importante'' notar que los eventos siguen la jerarquía de elementos. Inicialmente, todos los elementos provocan al elemento de ''origen'' (o ''source'' element), seguido de todos los elementos padres e hijos. Esto implica ciertas cosas:&lt;br /&gt;
&lt;br /&gt;
* Un evento provocado sobre el elemento raíz se provocará en cada elemento dentro del árbol de elementos. Esto debe ser evitado cuando sea posible.&lt;br /&gt;
* Todos los eventos en cualquier parte dentro del árbol de elementos serán provocado sobre el elemento raíz. Esto significa que simplemente  se atrapa cada evento de un tipo provocando a un controlador hacia el elemento raíz. Esto solo se debe realizar si verdaderamente se quiere cada evento de ese tipo, de otra forma se une al lugar más específico en el árbol de elementos.&lt;br /&gt;
* Puedes unir un controlador de eventos al elementeo raíz de un resource para obtener todos los eventos provocados por los elementos que el resource contiene.&lt;br /&gt;
* Puedes crear elementos 'falsos' o 'dummy' para captar eventos de un grupo de elementos hijos.&lt;br /&gt;
* Puedes usar elementos falsos especificándolos dentro de un archivo .map (p.ej. &amp;lt;flag&amp;gt;) y crear representaciones 'reales' para ellos (p.ej. objectos) y hacer que sean elementos hijos reales de un elemento falso. Los controladores de eventos pueden entonces ser unidos al elemento falso y recibiran todos los eventos de los elementos reales. Esto es útil para cuando un resource maneja la representación del elemento (creando los objetos, por ejemplo), mientras otro desea controlar eventos especiales. Esto podría ser un resource de mapa que quiera controlar una bandera siendo capturada de alguna manera - el resource de mapa (generalmente) no sería consistente de la forma en que la bandera es representada. Esto no importa ya que este pordría solo unir los controladores a su elemento bandera falso mientras el otro resource de modo de juego puede controlar la representacion.&lt;br /&gt;
&lt;br /&gt;
La función unida a un evento es llamada y pasada con un montón de argumentos. Estos argumentos son específicos del evento. Cada evento tiene parámetros específicos, por ejemplo [[ES/onClientGUIClick|onClientGUIClick]] tiene 4 parámetros, que son:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;string botón, string estado, int xAbsoluto, int yAbsoluto&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
La función unida a este evento pasará estos parametros como argumentos. Debes recordar que cada evento tiene diferentes parámetros.&lt;br /&gt;
&lt;br /&gt;
==Eventos incorporados==&lt;br /&gt;
MTA tiene un número de eventos incorporados, los cuales se encuentran en [[Client Scripting Events]] y [[Scripting Events]].&lt;br /&gt;
&lt;br /&gt;
==Eventos personalizados==&lt;br /&gt;
Puedes crear tus propioas eventos que puedan ser provocados a travez de cualquier resource. Esta es una manéra importánte de comunicarse con otros resources y permitirles enlazarlos a tu código. Para agregar tus propios eventos, solo debes llamar la función [[ES/addEvent|addEvent]]. Luego puedes usar la función [[ES/triggerEvent|triggerEvent]] para provocar el evento en cualquier momento que quieras - incluso usando un timer, o basado en un evento general. &lt;br /&gt;
&lt;br /&gt;
Por ejemplo, puedes hacer un modo de juego de Captura la Bandera y quieres provocar un evento cuando un jugador capture la bandera. Podrías haces esto uniendo un controlador de eventos al evento estándar de MTA [[ES/onMarkerHit|triggerEvent]] y verificar que el jugador que entró al marcador tiene la bandera. Si es así, entonces puedes provocar tu evento más específico ''onFlagCaptured'' y otros resources podrían controlarlo como ellos lo deseen.&lt;br /&gt;
&lt;br /&gt;
==Cancelación==&lt;br /&gt;
Los eventos pueden ser cancelados con [[ES/cancelEvent|triggerEvent]]. Esto puede tener una veriedad de consecuencias, pero en general significa que el servidor no realizará ninguna acción que debería hacer. Por ejemplo, cancelar el evento [[ES/onPickupUse|onPickupUse]] podría prevenir que un jugador se le de lo que intenta tomar de un pickup, cancelar el evento [[ES/onVehicleStartEnter|onVehicleStartEnter]] pordría prevenir que el jugador entre a un vehículo. Puedes comprobar si el evento actualmente activo ha sido cancelado usando [[ES/wasEventCanceled|wasEventCanceled]]. Es importante notar que cancelar el evento ''no'' previene que otros controladores de evento sean provocados.&lt;br /&gt;
&lt;br /&gt;
[[Category:Scripting Concepts]]&lt;br /&gt;
[[en:Event system]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/addEventHandler&amp;diff=30683</id>
		<title>ES/addEventHandler</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/addEventHandler&amp;diff=30683"/>
		<updated>2012-05-14T02:54:52Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;__NOTOC__  {{Server client function}}  {{Note_box|Se recomienda encarecidamente que no usen el mismo nombre para la función de controlador y para el nombre del evento, ya que pu...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server client function}} &lt;br /&gt;
{{Note_box|Se recomienda encarecidamente que no usen el mismo nombre para la función de controlador y para el nombre del evento, ya que puede producir confusión si se usan múltiples funciones de controlador.}}&lt;br /&gt;
Esta función añadirá un controlador de eventos. Un controlador de eventos es una función que se llamará cuando el evento que está unido sea provocado. Mira el [[Sistema de eventos]] para mas informacion sobre como funciona el sistema de eventos.&lt;br /&gt;
&lt;br /&gt;
Los controladores de eventos son funciones que son llamadas cuando un evento en particular sucede. Cada evento especifica una seria específica de variables que son pasadas hacia el controlador de eventos y pueden ser leídas por la función. Las siguientes variables globales están disponibles para usarlas en funciones de controlador:&lt;br /&gt;
*'''source''': el elemento que provoca el evento&lt;br /&gt;
*'''this''': el elemento al cual está unido el controlador de eventos&lt;br /&gt;
*'''sourceResource''': el resource que provocó el evento&lt;br /&gt;
*'''sourceResourceRoot''': el elemento raíz del resource que provocó el evento&lt;br /&gt;
*'''client''': el cliente que provocó el evento usando [[ES/triggerServerEvent|triggerServerEvent]]. No establecer si el evento no fue provocado por un cliente.&lt;br /&gt;
{{New_feature|3|1.0|&lt;br /&gt;
*'''eventName''': el nombre del evento que provocó la funcion de controlador.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Es importante recordar que se mueven hacia arriba o hacia abajo en el árbol de elementos. Un evento provocado sobre el elemento raíz es provocado sobre cada elemento del árbol. Un evento provocado sobre cualquier otro elemento es provocado sobre sus antecesores (su elemento padre, los padres de sus padres, etc) y sus hijos, nietos y bisnietos. Puedes usar el argumento ''getPropagated'' para especificar si deseas que el controlador reciba eventos que se han propagado hacia arriba o hacia abajo del árbol.&lt;br /&gt;
&lt;br /&gt;
El orden en el cual los controladores de eventos son provocados no está definido, no debes confiarte de un controlador de evento que está siendo ejecutado antes de otro.&lt;br /&gt;
&lt;br /&gt;
==Sintaxis== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool addEventHandler ( string nombreEvento, element unidoA, function funcionControlador, [ bool getPropagated = true, string pioridad= &amp;quot;normal&amp;quot; ] )    &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Argumentos Requeridos=== &lt;br /&gt;
*'''nombreEvento:''' El nombre del evento al que quieres unir la funcion de controlador.&lt;br /&gt;
*'''unidoA:''' El [[elemento]] al que deseas unir el controlador. El controlador solo será llamado cuando el evento al que está unido sea provocado para este elemento, o uno de sus hijos. Generalmente, puede ser el elemento raíz (queriendo decir que el controlador será llamado cuando el evento sea provocado para ''cualquier'' elemento).&lt;br /&gt;
*'''funcionControlador:''' La función de controlador que deseas llamar cuando el evento sea provocado. Esta función pasará todos los parámetros del evento como argumentos, pero no es requerido ya que los toma todos.&lt;br /&gt;
&lt;br /&gt;
===Argumentos Opcionales===&lt;br /&gt;
*'''getPropagated:''' Un boolean que representa si el controlador será provocado si el evento fue propagado hacia arriba o hacia abajo del árbol de elementos (comenzando del origen), y no provocado directamente sobre unidoA (esto es, si los controladores que estan están unidos tienen este argumento establecido en ''false'' solo serán profocados si ''source == this'').&lt;br /&gt;
{{New_feature|3.0139|1.3.1|&lt;br /&gt;
*'''prioridad :''' Un string que representa la prioridad del orden de provocaión relativo a otros controladores de eventos con el mismo nombre. Los valores posibles son:&lt;br /&gt;
**'''high :''' alto&lt;br /&gt;
**'''normal : ''' normal&lt;br /&gt;
**'''low :''' bajo&lt;br /&gt;
''Tambien es posible agregar un mejor control de prioridad by añadiendo un número positivo o negativo al string de prioridad. Por ejemplo (en orden de prioridad de preferencia): &amp;quot;high+4&amp;quot; &amp;quot;high&amp;quot; &amp;quot;high-1&amp;quot; &amp;quot;normal-6&amp;quot; &amp;quot;normal-7&amp;quot; &amp;quot;low+1&amp;quot; &amp;quot;low&amp;quot; &amp;quot;low-1&amp;quot;''&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Devuelve===&lt;br /&gt;
Devuelve ''true'' si el controlador de eventos fue unido con éxito. Devuelve ''false'' si el evento especificado se pudo encontrar o ningún parámetro es válido.&lt;br /&gt;
&lt;br /&gt;
==Ejemplo==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Servidor&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
En este ejemplo de servidor se envía un mensaje a todos dentro del servidor cuando un jugador aparece.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- obtiene el elemento raíz&lt;br /&gt;
rootElement = getRootElement()&lt;br /&gt;
-- define nuestra función de controlador&lt;br /&gt;
function onPlayerSpawnHandler ( elJugador )&lt;br /&gt;
	-- obtiene el nombre del jugador&lt;br /&gt;
	local nombreJugador = getPlayerName( elJugador )&lt;br /&gt;
	-- muestra en la ventana de chat que han aparecido&lt;br /&gt;
	outputChatBox ( &amp;quot;¡Ha aparecido &amp;quot; .. nombreJugador .. &amp;quot;!&amp;quot; )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
addEventHandler( &amp;quot;onPlayerSpawn&amp;quot;, rootElement, onPlayerSpawnHandler )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Cambios==&lt;br /&gt;
{{ChangelogHeader}}&lt;br /&gt;
{{ChangelogItem|1.3.0-9.03795|Añadido argumento de prioridad}}&lt;br /&gt;
&lt;br /&gt;
==Vea tambien==&lt;br /&gt;
{{Funciones de eventos}}&lt;br /&gt;
[[en:addEventHandler]]&lt;br /&gt;
[[ru:addEventHandler]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Funciones_de_eventos&amp;diff=30682</id>
		<title>Template:Funciones de eventos</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Funciones_de_eventos&amp;diff=30682"/>
		<updated>2012-05-14T02:54:33Z</updated>

		<summary type="html">&lt;p&gt;Kzman: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[[ES/addEvent|addEvent]]&lt;br /&gt;
*[[ES/addEventHandler|addEventHandler]]&lt;br /&gt;
*[[ES/cancelEvent|cancelEvent]]&lt;br /&gt;
*[[ES/getCancelReason|getCancelReason]]&lt;br /&gt;
*[[ES/removeEventHandler|removeEventHandler]]&lt;br /&gt;
*[[ES/triggerClientEvent|triggerClientEvent]]&lt;br /&gt;
*[[ES/triggerEvent|triggerEvent]]&lt;br /&gt;
*[[ES/wasEventCancelled|wasEventCancelled]]&lt;br /&gt;
{{New items|3.0151|1.3.1|&lt;br /&gt;
*[[ES/triggerLatentClientEvent|triggerLatentClientEvent]]&lt;br /&gt;
*[[ES/getLatentEventHandles|getLatentEventHandles]]&lt;br /&gt;
*[[ES/getLatentEventStatus|getLatentEventStatus]]&lt;br /&gt;
*[[ES/cancelLatentEvent|cancelLatentEvent]]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;noinclude&amp;gt;[[en:Template:Event functions]]&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Funciones_de_eventos&amp;diff=30681</id>
		<title>Template:Funciones de eventos</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Funciones_de_eventos&amp;diff=30681"/>
		<updated>2012-05-14T02:51:51Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;*addEvent *addEventHandler *cancelEvent *getCancelReason *[[ES/removeEventHandler|removeEventHand...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[[ES/addEvent|addEvent]]&lt;br /&gt;
*[[ES/addEventHandler|addEventHandler]]&lt;br /&gt;
*[[ES/cancelEvent|cancelEvent]]&lt;br /&gt;
*[[ES/getCancelReason|getCancelReason]]&lt;br /&gt;
*[[ES/removeEventHandler|removeEventHandler]]&lt;br /&gt;
*[[ES/triggerClientEvent|triggerClientEvent]]&lt;br /&gt;
*[[ES/triggerEvent|triggerEvent]]&lt;br /&gt;
*[[ES/wasEventCancelled|wasEventCancelled]]&lt;br /&gt;
{{New items|3.0151|1.3.1|&lt;br /&gt;
*[[ES/triggerLatentClientEvent|triggerLatentClientEvent]]&lt;br /&gt;
*[[ES/getLatentEventHandles|getLatentEventHandles]]&lt;br /&gt;
*[[ES/getLatentEventStatus|getLatentEventStatus]]&lt;br /&gt;
*[[ES/cancelLatentEvent|cancelLatentEvent]]&lt;br /&gt;
}}&lt;br /&gt;
[[en:Template:Event functions]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=PL/Zdarzenia_po_stronie_klienta&amp;diff=30680</id>
		<title>PL/Zdarzenia po stronie klienta</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=PL/Zdarzenia_po_stronie_klienta&amp;diff=30680"/>
		<updated>2012-05-14T00:52:55Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwikis&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;client&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
Ta strona zawiera listę wszystkich [[event|wydarzeń]] '''po stronie klienta''', które zostały zaimplementowane i są dostępne w Deathmatch mod. To request a function or event, use [[Requested Functions and Events]].&lt;br /&gt;
&lt;br /&gt;
'''[[event|Zdarzenia]] po stronie klienta można znaleźć tutaj: [[Server Scripting Events|Zdarzenia po stronie serwera]]&lt;br /&gt;
&lt;br /&gt;
==Colshape events==&lt;br /&gt;
{{Client_colshape_events}}&lt;br /&gt;
&lt;br /&gt;
==Zdarzenia elementy==&lt;br /&gt;
{{Client_element_events}}&lt;br /&gt;
&lt;br /&gt;
==Zdarzenia GUI==&lt;br /&gt;
{{GUI_events}}&lt;br /&gt;
&lt;br /&gt;
==Zdarzenia Gracza==&lt;br /&gt;
{{Client_player_events}}&lt;br /&gt;
&lt;br /&gt;
==Zdarzenia zasobu==&lt;br /&gt;
{{Client_resource_events}}&lt;br /&gt;
&lt;br /&gt;
==Zdarzenia pojazdu==&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
&lt;br /&gt;
==Inne zdarzenia==&lt;br /&gt;
{{Client_other_events}}&lt;br /&gt;
&lt;br /&gt;
[[ru:Client Scripting Events]]&lt;br /&gt;
[[en:Client Scripting Events]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Client_Scripting_Events&amp;diff=30679</id>
		<title>Client Scripting Events</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Client_Scripting_Events&amp;diff=30679"/>
		<updated>2012-05-14T00:51:49Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;client&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
This page lists all '''client-side''' scripting [[event]]s that have been implemented and are available in the Deathmatch mod. To request a function or event, use [[Requested Functions and Events]].&lt;br /&gt;
&lt;br /&gt;
'''Server-side scripting events can be found here: [[Server Scripting Events]]&lt;br /&gt;
&lt;br /&gt;
==Colshape events==&lt;br /&gt;
{{Client_colshape_events}}&lt;br /&gt;
&lt;br /&gt;
==Element events==&lt;br /&gt;
{{Client_element_events}}&lt;br /&gt;
&lt;br /&gt;
==GUI events==&lt;br /&gt;
{{GUI_events}}&lt;br /&gt;
&lt;br /&gt;
==Marker events==&lt;br /&gt;
{{Client_marker_events}}&lt;br /&gt;
&lt;br /&gt;
==Ped events==&lt;br /&gt;
{{Client_ped_events}}&lt;br /&gt;
&lt;br /&gt;
==Pickup events==&lt;br /&gt;
{{Client_pickup_events}}&lt;br /&gt;
&lt;br /&gt;
==Player events==&lt;br /&gt;
{{Client_player_events}}&lt;br /&gt;
&lt;br /&gt;
==Projectile events==&lt;br /&gt;
{{Client_projectile_events}}&lt;br /&gt;
&lt;br /&gt;
==Resource events==&lt;br /&gt;
{{Client_resource_events}}&lt;br /&gt;
&lt;br /&gt;
==Sound events==&lt;br /&gt;
{{Sound_events}}&lt;br /&gt;
&lt;br /&gt;
==Vehicle events==&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
&lt;br /&gt;
==Other events==&lt;br /&gt;
{{Client_other_events}}&lt;br /&gt;
&lt;br /&gt;
[[pl:Zdarzenia_po_stronie_klienta]]&lt;br /&gt;
[[ru:Client Scripting Events]]&lt;br /&gt;
[[es:Client Scripting Events]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/Client_Scripting_Events&amp;diff=30678</id>
		<title>ES/Client Scripting Events</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/Client_Scripting_Events&amp;diff=30678"/>
		<updated>2012-05-14T00:51:48Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (EN)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;client&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
Esta página contiene una lista de todos los [[evento]]s de script del '''lado del cliente''' que han sido implementados y estan disponibles en el mod Deathmatch. Para pedir una función o evento, usa el [[Requested Functions and Events|Pedido de Funciones y Eventos]] [[Image:flag_us.png|En Inglés|20px]].&lt;br /&gt;
&lt;br /&gt;
'''Los eventos de script de servidor se encuentran aquí: [[Server Scripting Events]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&lt;br /&gt;
==Colshape events [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_colshape_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de elementos [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_element_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de GUI [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{GUI_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de marcadores [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_marker_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de peds [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_ped_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de pickups [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_pickup_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de jugadores [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_player_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de proyectiles [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_projectile_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de resources [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_resource_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de sonidos [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Sound_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de vehículos [[Image:flag_es.png|En Español|20px]]==&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
&lt;br /&gt;
==Otros eventos [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_other_events}}&lt;br /&gt;
&lt;br /&gt;
[[pl:Zdarzenia_po_stronie_klienta]]&lt;br /&gt;
[[ru:Client Scripting Events]]&lt;br /&gt;
[[en:Client Scripting Events]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/Client_Scripting_Events&amp;diff=30677</id>
		<title>ES/Client Scripting Events</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/Client_Scripting_Events&amp;diff=30677"/>
		<updated>2012-05-14T00:50:50Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Traducido parcialmente&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pageclass class=&amp;quot;client&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
Esta página contiene una lista de todos los [[evento]]s de script del '''lado del cliente''' que han sido implementados y estan disponibles en el mod Deathmatch. Para pedir una función o evento, usa el [[Requested Functions and Events|Pedido de Funciones y Eventos]] [[Image:flag_us.png|En Inglés|20px]].&lt;br /&gt;
&lt;br /&gt;
'''Los eventos de script de servidor se encuentran aquí: [[Server Scripting Events]] [[Image:flag_us.png|En Inglés|20px]]&lt;br /&gt;
&lt;br /&gt;
==Colshape events [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_colshape_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de elementos [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_element_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de GUI [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{GUI_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de marcadores [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_marker_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de peds [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_ped_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de pickups [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_pickup_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de jugadores [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_player_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de proyectiles [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_projectile_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de resources [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_resource_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de sonidos [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Sound_events}}&lt;br /&gt;
&lt;br /&gt;
==Eventos de vehículos [[Image:flag_es.png|En Español|20px]]==&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
&lt;br /&gt;
==Otros eventos [[Image:flag_us.png|En Inglés|20px]]==&lt;br /&gt;
{{Client_other_events}}&lt;br /&gt;
&lt;br /&gt;
[[pl:Zdarzenia_po_stronie_klienta]]&lt;br /&gt;
[[ru:Client Scripting Events]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientTrailerDetach&amp;diff=30676</id>
		<title>OnClientTrailerDetach</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientTrailerDetach&amp;diff=30676"/>
		<updated>2012-05-14T00:41:32Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This event is triggered when a trailer gets detached from its towing vehicle.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
vehicle towedBy&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''towedBy:''' the vehicle that was towing the trailer.&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of this event is the trailer that is now detached.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example outputs to the player that's towing the trailer that &amp;quot;The vehicle is now detached&amp;quot;. (TESTED!)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientTrailerDetach&amp;quot;,root,function(towedBy)&lt;br /&gt;
	player = getVehicleOccupant(towedBy,0)&lt;br /&gt;
	outputChatBox(&amp;quot;The vehicle is now detached.&amp;quot;,player)&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
===Client vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;br /&gt;
[[es:onClientTrailerDetach]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientTrailerAttach&amp;diff=30675</id>
		<title>OnClientTrailerAttach</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientTrailerAttach&amp;diff=30675"/>
		<updated>2012-05-14T00:40:55Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
This event is triggered by a trailer when it gets attached to a towing vehicle.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
vehicle towedBy&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''towedBy:''' the vehicle that is now towing the trailer.&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of this event is the trailer that is now being towed.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example shows on chat name of vehicle, what attach a trailer.&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 onAttach(vehicle)&lt;br /&gt;
	local name = getVehicleName(vehicle)&lt;br /&gt;
	outputChatBox(&amp;quot;You were attach the trailer by &amp;quot;..name)&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onClientTrailerAttach&amp;quot;, getRootElement(), onAttach)&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;
===Client vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;br /&gt;
[[es:onClientTrailerAttach]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientVehicleStartExit&amp;diff=30674</id>
		<title>OnClientVehicleStartExit</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientVehicleStartExit&amp;diff=30674"/>
		<updated>2012-05-14T00:40:29Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
This event is triggered when a player starts exiting a vehicle. Once the exiting animation completes, [[onClientVehicleExit]] is triggered.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player thePlayer, int seat, int door&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''thePlayer:''' the player who started exiting the vehicle.&lt;br /&gt;
*'''seat:''' the number of the seat that the player was sitting on.&lt;br /&gt;
{{New feature/item|3.0110|1.1||&lt;br /&gt;
*'''door:''' the number of the door that the player is using to leave.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of this event is the vehicle that the player started to exit.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example outputs to the player that he's leaving the drivers seat. (TESTED!)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientVehicleStartExit&amp;quot;,root,function(player,seat,door)&lt;br /&gt;
	if(seat==0)and(door==0)then&lt;br /&gt;
		outputChatBox(&amp;quot;You are leaving the drivers seat.&amp;quot;,player)&lt;br /&gt;
	end&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
===Client vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;br /&gt;
[[es:onClientVehicleStartExit]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientVehicleStartEnter&amp;diff=30673</id>
		<title>OnClientVehicleStartEnter</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientVehicleStartEnter&amp;diff=30673"/>
		<updated>2012-05-14T00:40:04Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This event is triggered when a player starts entering a vehicle. Once the entering animation completes, [[onClientVehicleEnter]] is triggered.&lt;br /&gt;
&lt;br /&gt;
==Parameters== &lt;br /&gt;
{{Deprecated_feature|3|1.0|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player thePlayer, int seat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
{{new_feature/item|3|1.0||&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player thePlayer, int seat, int door&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
*'''thePlayer:''' the player that just started entering a vehicle.&lt;br /&gt;
*'''seat:''' the number of the seat he is going to sit on.&lt;br /&gt;
{{new_feature/item|3|1.0||&lt;br /&gt;
*'''door:''' An integer of which door the player used (0-3). 0 is driver side door, 1 is front passenger, 2 is back left, 3 is back right.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of this event is the vehicle the player is entering.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example outputs if the player is sitting in the drivers seat. (TESTED!)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientVehicleStartEnter&amp;quot;,root,function(player,seat,door)&lt;br /&gt;
	if(seat==0)and(door==0)then&lt;br /&gt;
		outputChatBox(&amp;quot;You are going to sit in the drivers seat.&amp;quot;,player)&lt;br /&gt;
	end&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
===Client vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;br /&gt;
[[es:onClientVehicleStartEnter]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientVehicleExplode&amp;diff=30672</id>
		<title>OnClientVehicleExplode</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientVehicleExplode&amp;diff=30672"/>
		<updated>2012-05-14T00:38:16Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
This event is triggered when a vehicle explodes.&lt;br /&gt;
&lt;br /&gt;
==Parameters== &lt;br /&gt;
This event has no parameters.&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of this event is the vehicle that exploded.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example will output some text to chat on vehicle explosion&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleExplode&amp;quot;, getRootElement(), function()&lt;br /&gt;
  local modelname = getVehicleName(source)&lt;br /&gt;
  outputChatBox(modelname..&amp;quot; just exploded!&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 vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;br /&gt;
[[es:onClientVehicleExplode]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientVehicleExit&amp;diff=30671</id>
		<title>OnClientVehicleExit</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientVehicleExit&amp;diff=30671"/>
		<updated>2012-05-14T00:37:29Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This event gets fired when a player gets out of a vehicle.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player thePlayer, int seat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''thePlayer:''' the player that exited the vehicle&lt;br /&gt;
*'''seat:''' the number of the seat that the player was sitting on. 0 = driver, higher numbers are passenger seats.&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of the event is the vehicle that the player exited.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This code updates a GUI label with the name of the vehicle the local player is in.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
lblVehicle = guiCreateLabel(10, 200, 150, 20, &amp;quot;Currently on foot&amp;quot;, false)&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleEnter&amp;quot;, getRootElement(),&lt;br /&gt;
    function(thePlayer, seat)&lt;br /&gt;
        if thePlayer == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Currently in a &amp;quot; .. getVehicleName(source))&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleExit&amp;quot;, getRootElement(),&lt;br /&gt;
    function(thePlayer, seat)&lt;br /&gt;
        if thePlayer == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Currently on foot&amp;quot;)&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;
==See Also==&lt;br /&gt;
===Client vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;br /&gt;
[[es:onClientVehicleExit]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleExit&amp;diff=30670</id>
		<title>ES/onClientVehicleExit</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleExit&amp;diff=30670"/>
		<updated>2012-05-14T00:37:28Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (EN)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
Este evento se activa cuando un jugador sale de un vehículo.&lt;br /&gt;
&lt;br /&gt;
==Parámetros==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player elJugador, int asiento&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''elJugador:''' el jugador que salió del vehículo&lt;br /&gt;
*'''asiento:''' el número de asiento donde el jugador estaba sentado. 0 = conductor, los números más altos son de pasajeros.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al vehículo desde donde salió el jugador.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
Este código actualiza una etiqueta GUI con el nombre del vehículo en el que estaba el jugador.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
lblVehicle = guiCreateLabel(10, 200, 150, 20, &amp;quot;Actualmente a pie&amp;quot;, false)&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleEnter&amp;quot;, getRootElement(),&lt;br /&gt;
    function(elJugador, asiento)&lt;br /&gt;
        if elJugador == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Actualmente en un &amp;quot; .. getVehicleName(source))&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleExit&amp;quot;, getRootElement(),&lt;br /&gt;
    function(elJugador, asiento)&lt;br /&gt;
        if elJugador == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Actualmente a pie&amp;quot;)&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;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;br /&gt;
[[en:onClientVehicleExit]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientVehicleEnter&amp;diff=30669</id>
		<title>OnClientVehicleEnter</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientVehicleEnter&amp;diff=30669"/>
		<updated>2012-05-14T00:36:16Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This event gets fired when a player enters a vehicle.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player thePlayer, int seat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''thePlayer:''' the player that entered the vehicle&lt;br /&gt;
*'''seat:''' the number of the seat that the player is now sitting on. 0 = driver, higher numbers are passenger seats.&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of the event is the vehicle that the player entered.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This code updates a GUI label with the name of the vehicle the local player is in.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
lblVehicle = guiCreateLabel(10, 200, 150, 20, &amp;quot;Currently on foot&amp;quot;, false)&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleEnter&amp;quot;, getRootElement(),&lt;br /&gt;
    function(thePlayer, seat)&lt;br /&gt;
        if thePlayer == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Currently in a &amp;quot; .. getVehicleName(source))&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
addEventHandler(&amp;quot;OnClientVehicleExit&amp;quot;, getRootElement(),&lt;br /&gt;
    function(thePlayer, seat)&lt;br /&gt;
        if thePlayer == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Currently on foot&amp;quot;)&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;
==See Also==&lt;br /&gt;
===Client vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;br /&gt;
[[es:onClientVehicleEnter]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleEnter&amp;diff=30668</id>
		<title>ES/onClientVehicleEnter</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleEnter&amp;diff=30668"/>
		<updated>2012-05-14T00:36:15Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (EN)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
Este evento se activa cuando un jugador entra a un vehículo.&lt;br /&gt;
&lt;br /&gt;
==Parametros==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player elJugador, int asiento&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''elJugador:''' el jugador que entró al vehículo&lt;br /&gt;
*'''asiento:''' el número de asiento donde el jugador esta sentado. 0 = conductor, los números más altos son de pasajeros.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al vehículo donde entró el jugador.&lt;br /&gt;
&lt;br /&gt;
==Ejemplo==&lt;br /&gt;
En este ejemplo se actualiza una etiqueta GUI con el nombre del vehículo en el cual está el jugador.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
lblVehicle = guiCreateLabel(10, 200, 150, 20, &amp;quot;Actualmente a pie&amp;quot;, false)&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleEnter&amp;quot;, getRootElement(),&lt;br /&gt;
    function(elJugador, asiento)&lt;br /&gt;
        if elJugador == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Actualmente en un &amp;quot; .. getVehicleName(source))&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
addEventHandler(&amp;quot;OnClientVehicleExit&amp;quot;, getRootElement(),&lt;br /&gt;
    function(elJugador, asiento)&lt;br /&gt;
        if elJugador == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Actualmente a pie&amp;quot;)&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;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;br /&gt;
[[en:onClientVehicleEnter]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientVehicleRespawn&amp;diff=30667</id>
		<title>OnClientVehicleRespawn</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientVehicleRespawn&amp;diff=30667"/>
		<updated>2012-05-14T00:35:22Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (ES)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
This event is triggered when a vehicle respawns.&lt;br /&gt;
&lt;br /&gt;
==Parameters== &lt;br /&gt;
This event has no parameters.&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of this event is the vehicle that respawned.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example outputs to the console that a vehicle has respawned.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientVehicleRespawn&amp;quot;,root,function()&lt;br /&gt;
	outputConsole(&amp;quot;A vehicle has respawned.&amp;quot;)&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
===Client vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;br /&gt;
[[es:onClientVehicleRespawn]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleRespawn&amp;diff=30666</id>
		<title>ES/onClientVehicleRespawn</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleRespawn&amp;diff=30666"/>
		<updated>2012-05-14T00:35:21Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Added interwiki (EN)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
Este evento es provocado cuando un vehículo cuando un vehículo reaparece.&lt;br /&gt;
&lt;br /&gt;
==Parametros== &lt;br /&gt;
Este evento no tiene parámetrós.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
El origen de este evento es el vehículo que reaparece.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
Este ejemplo muestra en la consola que un vehículo ha reaparecido.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientVehicleRespawn&amp;quot;,root,function()&lt;br /&gt;
	outputConsole(&amp;quot;Un vehículo ha reaparecido.&amp;quot;)&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;br /&gt;
[[en:onClientVehicleRespawn]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientVehicleCollision&amp;diff=30665</id>
		<title>OnClientVehicleCollision</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientVehicleCollision&amp;diff=30665"/>
		<updated>2012-05-14T00:15:39Z</updated>

		<summary type="html">&lt;p&gt;Kzman: tested by me&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New feature/item|3.0130|1.3|3653|&lt;br /&gt;
Added in MTA SA 1.3&lt;br /&gt;
}}&lt;br /&gt;
{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
This event is triggered when a vehicle collides with peds/vehicles/objects.&lt;br /&gt;
&lt;br /&gt;
==Parameters== &lt;br /&gt;
'''Note:''' ''theHitElement'' will be nil or false if it's a default SA object and it will trigger twice for vehicles because one vehicle hit another and one got hit by another.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
entity theHitElement, float force, int bodypart, float collisionX, float collisionY, float collisionZ, float velocityX, float velocityY, float velocityZ, float hitElementForce, int model&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''theHitElement:''' the entity that took damage&lt;br /&gt;
*'''force:''' the force of the damage (Note: this is NOT the damage it is a force value which is then multiplied by the vehicles collision damage multiplier. for an example of this see below) &lt;br /&gt;
*'''bodyPart:''' the bodypart that hit the other element&lt;br /&gt;
*'''collisionX:''' the X position the collision took place&lt;br /&gt;
*'''collisionY:''' the Y position the collision took place&lt;br /&gt;
*'''collisionZ:''' the Z position the collision took place&lt;br /&gt;
*'''velocityX:''' the X velocity of the source before the collision took place&lt;br /&gt;
*'''velocityY:''' the Y velocity of the source before the collision took place&lt;br /&gt;
*'''velocityZ:''' the Z velocity of the source before the collision took place&lt;br /&gt;
*'''hitElementforce:''' 0 for non vehicles or the force of the other vehicle&lt;br /&gt;
*'''model:''' model of the hit element (useful to detect building collisions as hitElement will be nil)&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The source of this event is the vehicle that collided with something.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleCollision&amp;quot;, root,&lt;br /&gt;
    function(collider,force, bodyPart, x, y, z, vx, vy, vz)&lt;br /&gt;
         if ( source == getPedOccupiedVehicle(localPlayer) ) then&lt;br /&gt;
             -- force does not take into account the collision damage multiplier (this is what makes heavy vehicles take less damage than banshees for instance) so take that into account to get the damage delt&lt;br /&gt;
             local fDamageMultiplier = getVehicleHandling(source).collisionDamageMultiplier&lt;br /&gt;
             -- Create a marker (I've scaled this down to 1% of the actual damage as we get huge markers else)&lt;br /&gt;
             local m = createMarker(x, y, z, &amp;quot;corona&amp;quot;, force * fDamageMultiplier * 0.01, 0, 9, 231)&lt;br /&gt;
             -- Destroy the marker in 2 seconds&lt;br /&gt;
             setTimer(destroyElement, 2000, 1, m)&lt;br /&gt;
         end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
&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;
-- This code works because onClientVehicleCollision is triggered before any SA reaction to the collision, therefore we can update the knocked off bike status just before the collision and stop the falling off effect happening :)&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleCollision&amp;quot;, root,&lt;br /&gt;
    function ( hit ) &lt;br /&gt;
        -- firstly did we trigger this event&lt;br /&gt;
        if ( source == getPedOccupiedVehicle(localPlayer) ) then&lt;br /&gt;
            -- knock off defaults to false&lt;br /&gt;
            local knockOff = false &lt;br /&gt;
            -- if our hit element is nil (we just hit an SA map object)&lt;br /&gt;
            if ( hit == nil ) then &lt;br /&gt;
                -- set knockOff to true &lt;br /&gt;
                knockOff = true &lt;br /&gt;
            end &lt;br /&gt;
            -- update our can be knocked off bike status accordingly&lt;br /&gt;
            setPedCanBeKnockedOffBike(localPlayer, knockOff) &lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
==See Also==&lt;br /&gt;
===Client vehicle events===&lt;br /&gt;
{{Client_vehicle_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientTrailerDetach&amp;diff=30664</id>
		<title>ES/onClientTrailerDetach</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientTrailerDetach&amp;diff=30664"/>
		<updated>2012-05-14T00:08:57Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;{{Client event}} __NOTOC__ Este evento es provocado cuando un tráiler se desacopla de su vehiculo de remolque.  ==Parámetros== &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt; vehicle remolcadoPor &amp;lt;/syntaxhighlight&amp;gt; *'''re...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
Este evento es provocado cuando un tráiler se desacopla de su vehiculo de remolque.&lt;br /&gt;
&lt;br /&gt;
==Parámetros==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
vehicle remolcadoPor&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''remolcadoPor:''' el vehículo que remolcaba al tráiler.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al tráiler que está siendo desacoplado.&lt;br /&gt;
&lt;br /&gt;
==Ejemplo== &lt;br /&gt;
En este ejemplo se le indica al jugador que ya no está remolcando su tráiler.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientTrailerDetach&amp;quot;,root,function(remolcador)&lt;br /&gt;
	jugador = getVehicleOccupant(remolcador,0)&lt;br /&gt;
	outputChatBox(&amp;quot;El vehículo está desacoplado.&amp;quot;, jugador)&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;br /&gt;
&lt;br /&gt;
[[en:onClientTrailerDetach]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientTrailerAttach&amp;diff=30663</id>
		<title>ES/onClientTrailerAttach</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientTrailerAttach&amp;diff=30663"/>
		<updated>2012-05-14T00:02:34Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;{{Client event}} __NOTOC__  Este evento es provocado cuando un tráiler se acopla a un vehiculo de remolque.  ==Parámetros== &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt; vehicle remolcadoPor &amp;lt;/syntaxhighlight&amp;gt; *'''remol...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
Este evento es provocado cuando un tráiler se acopla a un vehiculo de remolque.&lt;br /&gt;
&lt;br /&gt;
==Parámetros==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
vehicle remolcadoPor&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''remolcadoPor:''' el vehículo que remolca al tráiler.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al tráiler que está siendo remolcado.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
En este ejemplo se envía al chat el nombre del vehículo que acopla a un trailer.&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 onAttach(vehicle)&lt;br /&gt;
	local name = getVehicleName(vehicle)&lt;br /&gt;
	outputChatBox(name..&amp;quot; acopló el remolque&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onClientTrailerAttach&amp;quot;, getRootElement(), onAttach)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;br /&gt;
&lt;br /&gt;
[[en:onClientTrailerAttach]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleStartExit&amp;diff=30662</id>
		<title>ES/onClientVehicleStartExit</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleStartExit&amp;diff=30662"/>
		<updated>2012-05-13T23:54:42Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;{{Client event}} __NOTOC__  Este evento es provocado cuando un jugador comienza a salir de un vehículo. Una vez que la animación para salir se complete, se provoca el evento [[...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
Este evento es provocado cuando un jugador comienza a salir de un vehículo. Una vez que la animación para salir se complete, se provoca el evento [[onClientVehicleExit]].&lt;br /&gt;
&lt;br /&gt;
==Parámetros== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player elJugador, int asiento, int puerta&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''elJugador:''' el jugador que ha comenzado a salir del vehículo.&lt;br /&gt;
*'''asiento:''' el número de asiento en el cual estaba sentado.&lt;br /&gt;
*'''puerta:''' un entero que correspondiente a la puerta que el jugador   estaba usando (0-3). 0 es la del conductor, 1 el pasajero del frente, 2 es la trasera izquierda, 3 es la trasera derecha.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al vehículo que el jugador intenta entrar.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
En este ejemplo se muestra si el jugador está saliendo del asiento del conductor.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientVehicleStartExit&amp;quot;,root,function(jugador, asiento, puerta)&lt;br /&gt;
	if(asiento==0)and(puerta==0)then&lt;br /&gt;
		outputChatBox(&amp;quot;Estás saliendo de la silla del conductor.&amp;quot;, jugador)&lt;br /&gt;
	end&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;br /&gt;
&lt;br /&gt;
[[en:onClientVehicleStartExit]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleStartEnter&amp;diff=30661</id>
		<title>ES/onClientVehicleStartEnter</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleStartEnter&amp;diff=30661"/>
		<updated>2012-05-13T23:48:43Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;{{Client event}} __NOTOC__ Este evento es provocado cuando un jugador comienza a entrar a un vehículo. Una vez que la animación para entrar se complete, se provoca el evento [[...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
Este evento es provocado cuando un jugador comienza a entrar a un vehículo. Una vez que la animación para entrar se complete, se provoca el evento [[onClientVehicleEnter]].&lt;br /&gt;
&lt;br /&gt;
==Parámetros== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player elJugador, int asiento, int puerta&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''elJugador:''' el jugador que ha comenzado a entrar al vehículo.&lt;br /&gt;
*'''asiento:''' el número de asiento al cual se va a sentar.&lt;br /&gt;
*'''puerta:''' un entero que correspondiente a la puerta que el jugador   intenta entrar (0-3). 0 es la del conductor, 1 el pasajero del frente, 2 es la trasera izquierda, 3 es la trasera derecha.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al vehículo que el jugador intenta entrar.&lt;br /&gt;
&lt;br /&gt;
==Ejemplo==&lt;br /&gt;
En este ejemplo se muestra si el jugador se está sentando en el asiento del conductor.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientVehicleStartEnter&amp;quot;, root, function(jugador, asiento, puerta)&lt;br /&gt;
	if(asiento==0) and (puerta==0)then&lt;br /&gt;
		outputChatBox(&amp;quot;Te vas a sentar en la silla del conductor.&amp;quot;, jugador)&lt;br /&gt;
	end&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;br /&gt;
&lt;br /&gt;
[[en:onClientVehicleStartEnter]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleExplode&amp;diff=30660</id>
		<title>ES/onClientVehicleExplode</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleExplode&amp;diff=30660"/>
		<updated>2012-05-13T23:37:40Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;{{Client event}} __NOTOC__  Este evento es provocado cuando un vehículo explota.  ==Parametros==  Este evento no tiene parámetros.  ==Origen== La variable source de este evento...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
Este evento es provocado cuando un vehículo explota.&lt;br /&gt;
&lt;br /&gt;
==Parametros== &lt;br /&gt;
Este evento no tiene parámetros.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al vehículo que explotó.&lt;br /&gt;
&lt;br /&gt;
==Ejemplo== &lt;br /&gt;
Este ejemplo enviará un texto hacia el chat cuando un vehículo explote&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleExplode&amp;quot;, getRootElement(), function()&lt;br /&gt;
  local modelname = getVehicleName(source)&lt;br /&gt;
  outputChatBox(&amp;quot;¡&amp;quot;..modelname..&amp;quot; ha explotado!&amp;quot;)&lt;br /&gt;
end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;br /&gt;
&lt;br /&gt;
[[EN:onClientVehicleExplode]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleExit&amp;diff=30659</id>
		<title>ES/onClientVehicleExit</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleExit&amp;diff=30659"/>
		<updated>2012-05-13T23:32:56Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;{{Client event}} __NOTOC__ Este evento se activa cuando un jugador sale de un vehículo.  ==Parámetros== &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt; player elJugador, int asiento &amp;lt;/syntaxhighlight&amp;gt; *'''elJugador:''' el j...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
Este evento se activa cuando un jugador sale de un vehículo.&lt;br /&gt;
&lt;br /&gt;
==Parámetros==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player elJugador, int asiento&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''elJugador:''' el jugador que salió del vehículo&lt;br /&gt;
*'''asiento:''' el número de asiento donde el jugador estaba sentado. 0 = conductor, los números más altos son de pasajeros.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al vehículo desde donde salió el jugador.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
Este código actualiza una etiqueta GUI con el nombre del vehículo en el que estaba el jugador.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
lblVehicle = guiCreateLabel(10, 200, 150, 20, &amp;quot;Actualmente a pie&amp;quot;, false)&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleEnter&amp;quot;, getRootElement(),&lt;br /&gt;
    function(elJugador, asiento)&lt;br /&gt;
        if elJugador == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Actualmente en un &amp;quot; .. getVehicleName(source))&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleExit&amp;quot;, getRootElement(),&lt;br /&gt;
    function(elJugador, asiento)&lt;br /&gt;
        if elJugador == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Actualmente a pie&amp;quot;)&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;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleEnter&amp;diff=30658</id>
		<title>ES/onClientVehicleEnter</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleEnter&amp;diff=30658"/>
		<updated>2012-05-13T23:27:07Z</updated>

		<summary type="html">&lt;p&gt;Kzman: Created page with &amp;quot;{{Client event}} __NOTOC__ Este evento se activa cuando un jugador entra a un vehículo.  ==Parametros== &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt; player elJugador, int asiento &amp;lt;/syntaxhighlight&amp;gt; *'''elJugador:''' el ju...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
Este evento se activa cuando un jugador entra a un vehículo.&lt;br /&gt;
&lt;br /&gt;
==Parametros==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
player elJugador, int asiento&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*'''elJugador:''' el jugador que entró al vehículo&lt;br /&gt;
*'''asiento:''' el número de asiento donde el jugador esta sentado. 0 = conductor, los números más altos son de pasajeros.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
La variable source de este evento corresponde al vehículo donde entró el jugador.&lt;br /&gt;
&lt;br /&gt;
==Ejemplo==&lt;br /&gt;
En este ejemplo se actualiza una etiqueta GUI con el nombre del vehículo en el cual está el jugador.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
lblVehicle = guiCreateLabel(10, 200, 150, 20, &amp;quot;Actualmente a pie&amp;quot;, false)&lt;br /&gt;
addEventHandler(&amp;quot;onClientVehicleEnter&amp;quot;, getRootElement(),&lt;br /&gt;
    function(elJugador, asiento)&lt;br /&gt;
        if elJugador == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Actualmente en un &amp;quot; .. getVehicleName(source))&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
addEventHandler(&amp;quot;OnClientVehicleExit&amp;quot;, getRootElement(),&lt;br /&gt;
    function(elJugador, asiento)&lt;br /&gt;
        if elJugador == getLocalPlayer() then&lt;br /&gt;
            guiSetText(lblVehicle, &amp;quot;Actualmente a pie&amp;quot;)&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;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/OnClientVehicleRespawn&amp;diff=30657</id>
		<title>ES/OnClientVehicleRespawn</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/OnClientVehicleRespawn&amp;diff=30657"/>
		<updated>2012-05-13T23:18:38Z</updated>

		<summary type="html">&lt;p&gt;Kzman: moved ES/OnClientVehicleRespawn to ES/onClientVehicleRespawn: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[ES/onClientVehicleRespawn]]&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleRespawn&amp;diff=30656</id>
		<title>ES/onClientVehicleRespawn</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=ES/onClientVehicleRespawn&amp;diff=30656"/>
		<updated>2012-05-13T23:18:38Z</updated>

		<summary type="html">&lt;p&gt;Kzman: moved ES/OnClientVehicleRespawn to ES/onClientVehicleRespawn: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
Este evento es provocado cuando un vehículo cuando un vehículo reaparece.&lt;br /&gt;
&lt;br /&gt;
==Parametros== &lt;br /&gt;
Este evento no tiene parámetrós.&lt;br /&gt;
&lt;br /&gt;
==Origen==&lt;br /&gt;
El origen de este evento es el vehículo que reaparece.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
Este ejemplo muestra en la consola que un vehículo ha reaparecido.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;addEventHandler(&amp;quot;onClientVehicleRespawn&amp;quot;,root,function()&lt;br /&gt;
	outputConsole(&amp;quot;Un vehículo ha reaparecido.&amp;quot;)&lt;br /&gt;
end)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vea también==&lt;br /&gt;
===Eventos cliente de vehículos===&lt;br /&gt;
{{Eventos cliente de vehículos}}&lt;br /&gt;
===Funciones cliente de eventoss===&lt;br /&gt;
{{Funciones cliente de eventos}}&lt;/div&gt;</summary>
		<author><name>Kzman</name></author>
	</entry>
</feed>