Jump to content

Retornando mais de um valor


Recommended Posts

Posted (edited)

Olá, pessoal...

Em um script, chamo uma exportação que fiz de outro script.

Essa função exportada retorna mais de um valor, como eu separo-os na função que o chamou?

Função que chama a exportação:

function Login()
	account = getAccountName(getPlayerAccount(source))
	info = Login:getNumInfo(account)
end
addEventHandler("onPlayerLogin", getRootElement(), Login)

Função exportada: 

function getNumInfo(account)
	local data = dbPoll(dbQuery(databDB, "SELECT * FROM Contas WHERE User = ?", account), -1)
	if type(data) == "table" and #data ~= 0 then
		n1 = data[1]["Vr1"]
		n2 = data[1]["Vr2"]
		return n1, n2
	end
end

 

EDIT: *Consegui fazer-lo com gettok.*

Edited by Kaarpas
Posted

Na linguagem Lua você consegue facilmente retornar diversos valores de uma função. Basta usar vírgula entre os dados. Exemplo:

function teste()
	return 10, 20, 30
end
n1, n2, n3 = teste()
print(n1.. " "..n2.." "..n3)

 

  • Moderators
Posted

Apenas insira outra variável, para receber o segundo valor da função.

function Login()
	account = getAccountName(getPlayerAccount(source))
	info, info2 = Login:getNumInfo(account)
end
addEventHandler("onPlayerLogin", getRootElement(), Login)

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

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...