Jump to content

Para que servem essas duas funções?


Recommended Posts

Sempre que eu abro algum script mais avançado para editar sempre me deparo com duas linhas/conjuntos de código que eu nunca entendo, uma é
for v, in players do - algo assim, não faço idéia do que seja isso e ja tentei procurar na wiki do mta e não tem nada a respeito disso.

a outra é geralmente veh[player] - sei que ela cria um veículo associado ao player para facilitar depois para ser destruído ou algo assim, mas eu posso usar esse [player] em outras ocasiões também? quais seriam?

Link to comment
  • Other Languages Moderators

Vc está precisando estudar mais lógica de programação. Pois em ambos os casos vc saberia se soubesse lógica de programação. Isso não aparece diretamente na Wiki pois não se trata de funções nem eventos do MTA. Assim como não aparece nada diretamente relacionado a if, elseif e else.

for i,v in ipairs (getElementsByType ("player")) do
    outputChatBox (getPlayerName(v))
end

Isso é um loop que passa por todos os jogadores conectados no servidor. É usado quando vc quer executar o código repetidas vezes para cada jogador. No exemplo acima, ele manda no chat os nicks de cada jogador conectado no servidor. (Manda no chat os nomes de todos os elementos do tipo "player")

Sobre sua outra pergunta: veh[player] só existe se veh for uma tabela e ela possuir algum item indexado com o valor da variável player.

local veh = {} -- Cria a tabela veh vazia.

addCommandHandler ("carro", function (thePlayer)) -- Script server-side, thePlayer é o jogador que executou o comando /carro
    veh[thePlayer] = createVehicle ()... -- Cria um veículo, adiciona esse veículo na tabela e usa o jogador como índice.
end)

thePlayer não existirá fora dessa função. Mas veh[thePlayer] ainda pode ser acessado em outras partes do script usando outra variável no lugar de thePlayer, desde que ela seja o mesmo jogador.

 

  • Thanks 1
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...