0% acharam este documento útil (0 voto)
88 visualizações11 páginas

Programação Lua para FiveM: Guia Completo

ebook_completo_lua_fivem

Enviado por

vitinhoooprime
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
88 visualizações11 páginas

Programação Lua para FiveM: Guia Completo

ebook_completo_lua_fivem

Enviado por

vitinhoooprime
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

■ Guia Completo de Programação em Lua para

FiveM

Autor: Seu Nome


Objetivo: Ensinar Lua passo a passo com foco no desenvolvimento de scripts para FiveM.
Capítulo 1 – Introdução
Lua é uma linguagem de programação leve, criada no Brasil, usada extensivamente no FiveM para
criação de scripts. Neste capítulo você entenderá por que Lua é importante e dará seus primeiros
passos.

Exemplo: Primeiro script Lua (Hello World)


print("Hello, FiveM!")
Capítulo 2 – Fundamentos da Linguagem Lua
Antes de mergulhar no FiveM, você precisa entender os fundamentos da linguagem.

Variáveis e Tipos de Dados


local nome = "Kaio"
local dinheiro = 1500
local online = true

Estruturas de Controle
if dinheiro > 1000 then
print("Você está rico!")
else
print("Ainda falta um pouco...")
end

Funções
function somar(a, b)
return a + b
end

print(somar(10, 20))
Capítulo 3 – Estrutura de Scripts no FiveM
Um recurso no FiveM geralmente contém um arquivo [Link] e scripts separados para client
e server.
-- [Link]
fx_version "cerulean"
game "gta5"

client_script "[Link]"
server_script "[Link]"

Exemplo: Criando um comando /salve


-- [Link]
RegisterCommand("salve", function()
TriggerEvent("chat:addMessage", {args = {"Servidor", "Salve, jogador!"}})
end)
Capítulo 4 – Manipulação de Jogadores e Veículos
Aqui você aprenderá a usar natives para controlar pedestres e veículos.
-- Teleportar jogador
RegisterCommand("tp", function(source, args)
local ped = PlayerPedId()
SetEntityCoords(ped, 200.0, 200.0, 200.0)
end)
Capítulo 5 – Banco de Dados e Persistência
No FiveM, usamos oxmysql para salvar dados. Exemplo básico:
-- [Link]
local oxmysql = [Link]

RegisterCommand("addmoney", function(source, args)


local userId = source
local value = tonumber(args[1])
oxmysql:insert("INSERT INTO users_money (user, money) VALUES (?, ?)", {userId, value})
end)
Capítulo 6 – Criando Sistemas Completos
Aqui juntamos tudo: dinheiro, empregos e inventário.
-- Sistema de emprego simples
RegisterCommand("minerar", function(source)
local xPlayer = source
TriggerClientEvent("chat:addMessage", source, {args = {"Minerador", "Você ganhou 100$"}})
end)
Capítulo 7 – Recursos Avançados
Trabalhando com menus e callbacks.
-- Exemplo de callback NUI
RegisterNUICallback("comprarItem", function(data, cb)
print("Jogador comprou: " .. [Link])
cb("ok")
end)
Capítulo 8 – Boas Práticas e Segurança
Sempre valide os dados no servidor. Não confie apenas no client.
-- Exemplo de validação no server
RegisterNetEvent("darDinheiro")
AddEventHandler("darDinheiro", function(valor)
local src = source
if valor < 10000 then
print("Jogador "..src.." recebeu: $"..valor)
else
print("Tentativa suspeita detectada!")
end
end)
Capítulo 9 – Projeto Final
Criar um sistema de loja completa com estoque, dinheiro e banco de dados.
-- [Link]
RegisterCommand("compraragua", function()
TriggerServerEvent("loja:comprar", "agua", 10)
end)

-- [Link]
RegisterNetEvent("loja:comprar")
AddEventHandler("loja:comprar", function(item, preco)
local src = source
print("Jogador "..src.." comprou "..item.." por $"..preco)
end)
Apêndice
Links úteis:
• [Link]
• [Link]
• [Link]

Você também pode gostar