Jump to content

Chamar uma variavel de um outro script


Recommended Posts

Posted

to fazendo um script e preciso q ele pegue uma variavel q ta em outro script, outra resource msm, teria q pegar essa variavel exportando mas n to conseguindo fazer

Exemplo: 

SERVER_PASSWORD = "Mw4U8Bq!##K%lBBXC0*BFLUgOTY!%Zkdv4MhD@CtP^D&ZUOfd3"

function getServerPassword() -- Função q quero exportar exportada
	return SERVER_PASSWORD
end

Meta: 

	<script src="SKServerIP.lua" type="server" /> 
	<export function="getServerPassword" type="server" />
	<min_mta_version server="1.5.6-9.18728" client="1.5.6-9.18728" /> 
	<download_priority_group>2</download_priority_group> 

E no outro script q quero pegar o SERVER_PASSWORD ta assim:

function teste ()
	local senha = exports["SKServerIP"]:getServerPassword () or 0
	if (senha ~= "Mw4U8Bq!##K%lBBXC0*BFLUgOTY!%Zkdv4MhD@CtP^D&ZUOfd3") then
    	outputChatBox ("teste")
    end
end
addEventHandler ("onResourceStart", resourceRoot, teste)

E no debug da esse erro se referindo a linha 2 desse ultimo script:
Acce
ss denied @ "call" [string "?"] 

Posted
20 hours ago, KiritoAguiar said:

to fazendo um script e preciso q ele pegue uma variavel q ta em outro script, outra resource msm, teria q pegar essa variavel exportando mas n to conseguindo fazer

Exemplo: 

SERVER_PASSWORD = "Mw4U8Bq!##K%lBBXC0*BFLUgOTY!%Zkdv4MhD@CtP^D&ZUOfd3"

function getServerPassword() -- Função q quero exportar exportada
	return SERVER_PASSWORD
end

Meta: 

	<script src="SKServerIP.lua" type="server" /> 
	<export function="getServerPassword" type="server" />
	<min_mta_version server="1.5.6-9.18728" client="1.5.6-9.18728" /> 
	<download_priority_group>2</download_priority_group> 

E no outro script q quero pegar o SERVER_PASSWORD ta assim:

function teste ()
	local senha = exports["SKServerIP"]:getServerPassword () or 0
	if (senha ~= "Mw4U8Bq!##K%lBBXC0*BFLUgOTY!%Zkdv4MhD@CtP^D&ZUOfd3") then
    	outputChatBox ("teste")
    end
end
addEventHandler ("onResourceStart", resourceRoot, teste)

E no debug da esse erro se referindo a linha 2 desse ultimo script:
Acce
ss denied @ "call" [string "?"] 

O nome do resource é SKServerIP? Pois percebi que é o mesmo nome do arquivo .lua, talvez você tenha confundido...

A sintaxe é assim: exports["NomeDoMod"]:getServerPassword () ou exports.NomeDoMod:getServerPassword ()

 

Te ajudei? Me ajude também deixando seu Thanks! :Dspacer.png

 

Discord: _muelzera_

  • Moderators
Posted

Assim como lhe respondi no privado, o erro acontece pois ele não consegue modificar uma função nativa do MTA getServerPassword

Troque o nome da função por alguma que não seja nativa, por exemplo getServerPass e o script funcionará normalmente.

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanks! spacer.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.

Posted
15 hours ago, Lord Henry said:

Assim como lhe respondi no privado, o erro acontece pois ele não consegue modificar uma função nativa do MTA getServerPassword

Troque o nome da função por alguma que não seja nativa, por exemplo getServerPass e o script funcionará normalmente.

Mas não é possível sobrescrever funções nativas? Pelo que eu li nesse tópico sobre proteção de scripts achei que fosse possível...

Te ajudei? Me ajude também deixando seu Thanks! :Dspacer.png

 

Discord: _muelzera_

  • Moderators
Posted (edited)

É possível de outra forma. Se utilizar call dai não funciona.

Edited by Lord Henry

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanks! spacer.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...