Ir para conteúdo
  • 0

Como Saber O Nome Das Variaveis Das Tabelas Retornadas Por Funçoes?


sabrina9292

Pergunta

Bom pessoal...

Concerteza vou ter dificuldade de explicar qual e minha duvida, mas vamos la...

 

Eu tenho dificuldade em saber o que algumas funçoes retornam, entao recorro a funçao "print", voces nem imaginam o quanto as coisas ficam mais claras para mim

 

Pois eh...

Existe algumas funçoes que retornam tabelas, e mesmo eu pedindo pra printar o que estas funçoes retornam, na tentativa de finalmente conseguir compreender qual e o retorno da funçao, nao da certo, a menos que eu saiba qual e a(s) variaveis contidas na tabela retornada pelo funçao...

 

O que ja era dificil, se torna ainda mais dificil...

"Como saber qual e o nome das variaveis que tem nas tabelas que algumas funçoes retornam?"

 

Minha dificuldade e tao grande que faz ser dificil eu citar alguns exemplos... Mas eu sei de duas funçoes que retornam tabelas com variaveis...

 

Exemplo

 

1-getCreaturePosition(cid)

2-getCreatureOutfit(cid)

 

Entao...

 

Obs.: Essas duas funçoes retornam tabelas com algumas variaveis, eu so consegui descobrir os nomes destas por base do chutometro e do que era mais pravavel de ser retornado

 

Se eu coloco:

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

 print(getCreaturePosition(cid))
 print(getCreatureOutfit(cid))
end

 

Vai gerar apenas uma linha invisivel no executavel do servidor...

 

Entao e necessario fazer algo tipo assim:

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
local position, outfit = getCreaturePosition(cid), getCreatureOutfit(cid)

 print(position.x)
 print(outfit.lookHead)
end

 

Obs.: Eu sei das outras variaveis das duas funçoes, mas acho que nao e necessario citar (o topico ja esta ficando grande ohmy.png )

 

Entao...

Gostaria de saber se tem alguma tecnica mais pratica para saber o nome das variaves contida nas tabelas que algumas funçoes retornam, sem ser na base do chutometro laugh.png

 

Desde ja...

Muito Obrigada

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

as variáveis de uma tabela são chamadas de index. Para descobri-los, você pode passar um pairs na tabela e printar o index.

 

Fiz uma função aqui:

 

function getIndex(value)
local str = nil

if type(value) == "table" then
for a, b in pairs(value) do
str = str and str .. "," .. a .. "=" .. b or a .. "=" .. b
end
end

return str
end

 

Usa por exemplo: print(getIndex(getPlayerPosition(cid)))

 

vai retornar uma string, por exemplo "x=160, y=50, z=7" (não necessariamente nesta ordem).

 

Pode usar com qualquer tabela que os index e os valores não sejam outras tabelas.

Editado por Demonbholder
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...