ES/Scripts de Cliente: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
mNo edit summary
No edit summary
Line 1: Line 1:
==¿Qué son?==
==¿Qué son?==


Los scripts de cliente son los que corren la parte del usuario de MTA. Esto implica tener más información detallada de un jugador específico, pero no de los demás, mientras manejamos al primero.
Los scripts de cliente son los que corren directamente en el computador del jugador. Esto implica poder realizar mas funciones que desde el servidor no se podrían hacer (Por ejemplo poner imágenes o alguna ventana).
 
En este lado de MTA, se maneja la parte visual y de audio.


==¿Cómo funcionan?==
==¿Cómo funcionan?==
La parte cliente trabaja de forma parecida y a la vez diferente, a la parte servidor. Se pueden sincronizar ambas partes usando el sistema de eventos. Ambos lados, cliente y servidor, no pueden trabajar en un mismo archivo. Cada lado debe tener su propio archivo de script.
La parte cliente trabaja de forma parecida y a la vez diferente, a la parte servidor. Se pueden sincronizar ambas partes usando el sistema de eventos.


Por ejemplo, para el archivo cliente:
Por ejemplo, para el archivo cliente:
Line 13: Line 11:
<syntaxhighlight lang="xml">
<syntaxhighlight lang="xml">
<meta>
<meta>
<script src="guitest.lua" type="client" /> <!-- 'type="client"' indica que el archivo en cuestión es cliente. -->
<script src="guitest.lua" type="client" /> <!-- 'type="client"' indica que el archivo en cuestión se trabaja desde el PC del jugador. -->
<info author="IJs" />
<info author="IJs" />
</meta>
</meta>

Revision as of 01:01, 5 November 2011

¿Qué son?

Los scripts de cliente son los que corren directamente en el computador del jugador. Esto implica poder realizar mas funciones que desde el servidor no se podrían hacer (Por ejemplo poner imágenes o alguna ventana).

¿Cómo funcionan?

La parte cliente trabaja de forma parecida y a la vez diferente, a la parte servidor. Se pueden sincronizar ambas partes usando el sistema de eventos.

Por ejemplo, para el archivo cliente:


<meta>
	<script src="guitest.lua" type="client" /> <!-- 'type="client"' indica que el archivo en cuestión se trabaja desde el PC del jugador. -->
	<info author="IJs" />
</meta>


Si queremos iniciar un evento del cliente desde el servidor, entonces primero hay que agregar el evento en el cliente con addEvent. Luego, se debe arreglar un manejador de este evento. Y en el lado servidor, se debe usar triggerClientEvent ( jugador, "nombreDeEvento", jugador, argumentos ... ) para iniciar el evento. Este proceso de sincronía se puede hacer al revés también, con triggerServerEvent.

Por ejemplo:


Script de cliente:

function showObjectBrowser(id)
   -- El código aquí...
end

addEvent("doShowObjectBrowser", true) -- Agregamos el evento...
addEventHandler("doShowObjectBrowser", getRootElement(), showObjectBrowser) -- Y el manejador, que indica que al iniciarse el evento, llame a la función "showObjectBrowser"...


Script de servidor:

triggerClientEvent ( unJugador, "doShowObjectBrowser", getRootElement(), 1034 )


Traductores

  • Benxamix2/The Kid