⚙️V2 -> Compilação Completa

Página destinada ao tutorial de como usar a proteção v2 da LockCode.

A Proteção v2 visa simplificar a proteção básica dos seus recursos. Siga os passos abaixo para configurar corretamente:

1 - Atualizando o meta.xml

Para integrar a proteção, você precisa adicionar a seguinte linha ao seu arquivo meta.xml:

<oop>true</oop>

O que é OOP?

A Programação Orientada a Objetos (OOP) no Multi Theft Auto (MTA) ajuda a estruturar e organizar o código de forma mais eficiente. Permite a criação de classes e objetos com atributos e comportamentos específicos, o que melhora a reutilização de código, legibilidade e manutenção. Além disso, oferece encapsulamento para proteger detalhes internos de implementação. Mesmo sem OOP habilitado, utilitários como Vector e Matrix estão disponíveis para cálculos matemáticos no ambiente 3D.

2 - Reescrevendo o server.lua

Você precisará ajustar seu script principal para funcionar corretamente com a proteção. Em vez de ter o código diretamente no arquivo server.lua, você deve encapsulá-lo em uma função resourceStart, seguida de um:

if (_AuthCheck[1] ~= 'Liberado') then 
    return 
end
local Job = {
	Markers = {
		'end' = nil;
	}
}
Job.Markers['end'] = createMarker( 0, 0, 0, "cylinder", 1.5, 255, 255, 255, 255)

function inicio(source) 
	outputChatBox ("[Script Scooby] Dirija até o local markado no seu GPS.", source, 255, 255, 255, true)
end
addCommandHandler("aceitar", inicio)

function finalizar (source)
	givePlayerMoney (source, 1000)
	outputChatBox ("Recebidos R$1000.", source, 255, 255, 255, true)
end
addEventHandler("onMarkerHit", Job.Markers['end'], finalizar)
function inicio(source) 
	outputChatBox ("[Script Scooby] Dirija até o local markado no seu GPS.", source, 255, 255, 255, true)
end
addCommandHandler("aceitar", inicio)

function finalizar (source)
	givePlayerMoney (source, 1000)
	outputChatBox ("Recebidos R$1000.", source, 255, 255, 255, true)
end
addEventHandler("onMarkerHit", Job.Markers['end'], finalizar)

function resourceStart()
	local Job = {
		Markers = {
			'end' = nil;
		}
	}
	Job.Markers['end'] = createMarker( 0, 0, 0, "cylinder", 1.5, 255, 255, 255, 255)
end
addEventHandler("onResourceStart", resourceRoot, resourceStart)

3 - Adição / Criação de arquivo Config.lua

Para os seus clientes adicionarem uma licença, você deverá criar um arquivo de configuração, e adiciona-lo no seu Meta.XML com cache false e type shared:

<script src="config.lua" type="shared" cache="false"/>

4 - Zip e Upload na LockCode

Após ajustar os arquivos, compacte a pasta em um arquivo zip. Em seguida, acesse a página de compilação da LockCode e faça o upload do arquivo zip.

Atualizado