PT-BR/Scripts do Cliente

From Multi Theft Auto: Wiki
Revision as of 17:59, 31 July 2013 by Ninguem (talk | contribs)
Jump to navigation Jump to search

Como sabemos scrips do lado client são scripts executados dentro do lado client deathmatch mod. Isto significa que têm acesso a mais informações sobre o mundo do jogo, mas poucas informações sobre o resto dos jogadores no jogo. Isso é útil para coisas que precisam ser feitas do lado do cliente, como efeitos visuais, criação e manipulação de elementos gráficos.

Como ele funciona?

Os scripts do lado client seguem o mesmo padrão como os scripts do lado server. Vamos tentar fornecer a funcionalidade necessária para os scripts do lado cliente. A interface entre o lado server e cliente é feita usando o sistema com o mesmo evento que já temos. Os scripts do lado cliente e o server necessitam estar em dois arquivos diferentes, que estão incluídas a partir do recurso (no metafile) usando uma tag <script> (e atributo do type).

Por Exemplo:

<!-- GUI (cliente) script teste -->
<meta>
	<script src="guitest.lua" type="client" />
	<info author="IJs" />
</meta>

Se você quiser disparar um evento do lado cliente a partir do lado server, primeiro você deve registrar o evento do lado cliente usando o addEvent. Depois, você deve anexar um manipulador para o evento como você faria em um script do lado do servidor. Depois, no script do lado servidor, você deverá chamar o evento triggerClientEvent ( player, "nomeDoEvento", fromElement, args ... ) que irá acionar o evento do lado do cliente. O mesmo pode ser feito disparando o evento do lado servidor do script com o triggerServerEvent.

Por Exemplo:

Lado Cliente:

function showObjectBrowser(id)
   -- codigo aqui
end

addEvent("doShowObjectBrowser", true)
addEventHandler("doShowObjectBrowser", getRootElement(), showObjectBrowser)

Lado Server:

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