Files
Elite-Gaming-FiveM/resources/fzt_fov-main/server/main.lua
T
KingMcDonalds d96c871c41 adding liverys
2025-02-06 03:13:23 -08:00

71 lines
2.8 KiB
Lua

-- Este archivo es parte del proyecto fzt_Fov.
-- Copyright (c) 2025 fourztL. Todos los derechos reservados.
-- Este proyecto está distribuido bajo la Licencia Creative Commons Attribution-NonCommercial 4.0 International (CC-BY-NC-4.0).
-- Para más detalles, consulta el archivo LICENSE.
local QBCore = exports['qb-core']:GetCoreObject()
-- Agrega la tabla a tu Database
exports.oxmysql:execute([[
ALTER TABLE players
ADD COLUMN esMiope TINYINT(1) NOT NULL DEFAULT 0;
]], {}, function(result)
if result then
print("Campo 'esMiope' agregado correctamente a la tabla 'players'.")
else
print("Error al agregar el campo 'esMiope'.")
end
end)
-- Evento para cargar los datos del jugador al iniciar sesión
RegisterNetEvent('QBCore:Server:OnPlayerLoaded', function()
local src = source
local Player = QBCore.Functions.GetPlayer(src)
if not Player then return end
-- Consultar el estado de miopía desde la base de datos
exports.oxmysql:execute('SELECT esMiope FROM players WHERE citizenid = ?', {Player.PlayerData.citizenid}, function(result)
if result and result[1] then
local esMiope = result[1].esMiope == 1
Player.Functions.SetMetaData("esMiope", esMiope)
TriggerClientEvent('fzt_fov:setMiopia', src, esMiope)
else
local esMiope = false
Player.Functions.SetMetaData("esMiope", esMiope)
TriggerClientEvent('fzt_fov:setMiopia', src, esMiope)
end
end)
end)
-- Comando para cambiar el estado de miopía (opcional, para pruebas)
QBCore.Commands.Add("setmiopia", "Establecer estado de miopía", {}, false, function(source, args)
local Player = QBCore.Functions.GetPlayer(source)
if not Player then return end
local esMiope = tonumber(args[1]) == 1
Player.Functions.SetMetaData("esMiope", esMiope)
-- Guardar el cambio en la base de datos usando oxmysql
exports.oxmysql:execute('UPDATE players SET esMiope = ? WHERE citizenid = ?', {esMiope and 1 or 0, Player.PlayerData.citizenid})
TriggerClientEvent('fzt_fov:setMiopia', source, esMiope)
TriggerClientEvent("QBCore:Notify", source, "Miopía " .. (esMiope and "activada" or "desactivada"), "success")
end)
-- Evento para actualizar el estado de los lentes desde el qb-radialmenu
RegisterNetEvent("fzt_fov:updateGlasses", function(drawable, texture)
local src = source
local Player = QBCore.Functions.GetPlayer(src)
if not Player then return end
local props = Player.PlayerData.metadata["props"] or {}
props["glasses"] = { drawable = drawable, texture = texture }
Player.Functions.SetMetaData("props", props)
local isWearingGlasses = drawable ~= 0 and drawable ~= -1
TriggerClientEvent("fzt_fov:setGlassesState", src, isWearingGlasses)
--print("Lentes actualizados (radial menu). Drawable:", drawable, "Texture:", texture)
end)