Jump to content

Source não é reconhecido


Recommended Posts

Tentei fazer um addCommandHandler e o elemento para ativar as funções utilizei como se fosse source, porém ele retorna nil... Qual motivo do erro? E como posso contorna-lo?
 

function pos (cmd)
	local x, y, z = getElementPosition(source)
	local loc = getZoneName ( x, y, z )
	local city = getZoneName ( x, y, z, true )
	outputChatBox("Posição"..loc..". Cidade: "..city, source, 255, 255, 255, true)
end
addCommandHandler("ajuda", pos)

ele está retornando o source como nil...

Link to comment
2 hours ago, Jhon. said:

Tentei fazer um addCommandHandler e o elemento para ativar as funções utilizei como se fosse source, porém ele retorna nil... Qual motivo do erro? E como posso contorna-lo?
 


function pos (source, cmd)
	local x, y, z = getElementPosition(source)
	local loc = getZoneName ( x, y, z )
	local city = getZoneName ( x, y, z, true )
	outputChatBox("Posição"..loc..". Cidade: "..city, source, 255, 255, 255, true)
end
addCommandHandler("ajuda", pos)

ele está retornando o source como nil...

source, tem que ser definido nos parâmetros ali dentro da function

 

 

  • Thanks 1
Link to comment
10 hours ago, Jhon. said:

Tentei fazer um addCommandHandler e o elemento para ativar as funções utilizei como se fosse source, porém ele retorna nil... Qual motivo do erro? E como posso contorna-lo?
 


function pos (cmd)
	local x, y, z = getElementPosition(source)
	local loc = getZoneName ( x, y, z )
	local city = getZoneName ( x, y, z, true )
	outputChatBox("Posição"..loc..". Cidade: "..city, source, 255, 255, 255, true)
end
addCommandHandler("ajuda", pos)

ele está retornando o source como nil...

Esse comando está no lado server, certo?  Como o BlackSCR já respondeu, o source é passado como argumento nesse caso, ficando assim:

function pos (source, cmd)

...............

end

Parâmetros do addCommandHandler no server-side:

player playerSource, string commandName [, string argumento1, string argumento2, ... ] 

 

Parâmetros do addCommandHandler no client-side:

string commandName [, string argumento1, string argumento2, ... ] 

No client side não precisa declarar o source como argumento, ele é o localPlayer!

Recomendo que coloque sua função no lado do client.

Dá uma estudada melhor na página da wiki, está tudo detalhado aqui: addCommandHandler

Edited by Boechat
  • 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...