0.0.1
This commit is contained in:
141
resources/[esx_addons]/esx_garage/server/main.lua
Normal file
141
resources/[esx_addons]/esx_garage/server/main.lua
Normal file
@@ -0,0 +1,141 @@
|
||||
RegisterServerEvent('esx_garage:updateOwnedVehicle')
|
||||
AddEventHandler('esx_garage:updateOwnedVehicle', function(stored, parking, Impound, data, spawn)
|
||||
local source = source
|
||||
local xPlayer = ESX.Player(source)
|
||||
MySQL.update('UPDATE owned_vehicles SET `stored` = @stored, `parking` = @parking, `pound` = @Impound, `vehicle` = @vehicle WHERE `plate` = @plate AND `owner` = @identifier',
|
||||
{
|
||||
['@identifier'] = xPlayer.getIdentifier(),
|
||||
['@vehicle'] = json.encode(data.vehicleProps),
|
||||
['@plate'] = data.vehicleProps.plate,
|
||||
['@stored'] = stored,
|
||||
['@parking'] = parking,
|
||||
['@Impound'] = Impound
|
||||
})
|
||||
|
||||
if stored then
|
||||
xPlayer.showNotification(TranslateCap('veh_stored'))
|
||||
else
|
||||
ESX.OneSync.SpawnVehicle(data.vehicleProps.model, spawn, data.spawnPoint.heading,data.vehicleProps, function(vehicle)
|
||||
local vehicle = NetworkGetEntityFromNetworkId(vehicle)
|
||||
Wait(300)
|
||||
TaskWarpPedIntoVehicle(GetPlayerPed(source), vehicle, -1)
|
||||
end)
|
||||
end
|
||||
end)
|
||||
|
||||
RegisterServerEvent('esx_garage:setImpound')
|
||||
AddEventHandler('esx_garage:setImpound', function(Impound, vehicleProps)
|
||||
local source = source
|
||||
local xPlayer = ESX.Player(source)
|
||||
|
||||
MySQL.update('UPDATE owned_vehicles SET `stored` = @stored, `pound` = @Impound, `vehicle` = @vehicle WHERE `plate` = @plate AND `owner` = @identifier',
|
||||
{
|
||||
['@identifier'] = xPlayer.getIdentifier(),
|
||||
['@vehicle'] = json.encode(vehicleProps),
|
||||
['@plate'] = vehicleProps.plate,
|
||||
['@stored'] = 2,
|
||||
['@Impound'] = Impound
|
||||
})
|
||||
|
||||
xPlayer.showNotification(TranslateCap('veh_impounded'))
|
||||
end)
|
||||
|
||||
|
||||
ESX.RegisterServerCallback('esx_garage:getVehiclesInParking', function(source, cb, parking)
|
||||
local xPlayer = ESX.Player(source)
|
||||
|
||||
MySQL.query('SELECT * FROM `owned_vehicles` WHERE `owner` = @identifier AND `parking` = @parking AND `stored` = 1',
|
||||
{
|
||||
['@identifier'] = xPlayer.getIdentifier(),
|
||||
['@parking'] = parking
|
||||
}, function(result)
|
||||
|
||||
local vehicles = {}
|
||||
for i = 1, #result, 1 do
|
||||
table.insert(vehicles, {
|
||||
vehicle = json.decode(result[i].vehicle),
|
||||
plate = result[i].plate
|
||||
})
|
||||
end
|
||||
|
||||
cb(vehicles)
|
||||
end)
|
||||
end)
|
||||
|
||||
ESX.RegisterServerCallback('esx_garage:checkVehicleOwner', function(source, cb, plate)
|
||||
local xPlayer = ESX.Player(source)
|
||||
|
||||
MySQL.query('SELECT COUNT(*) as count FROM `owned_vehicles` WHERE `owner` = @identifier AND `plate` = @plate',
|
||||
{
|
||||
['@identifier'] = xPlayer.getIdentifier(),
|
||||
['@plate'] = plate
|
||||
}, function(result)
|
||||
|
||||
if tonumber(result[1].count) > 0 then
|
||||
return cb(true)
|
||||
else
|
||||
return cb(false)
|
||||
end
|
||||
end)
|
||||
end)
|
||||
|
||||
-- Pounds part
|
||||
ESX.RegisterServerCallback('esx_garage:getVehiclesImpounded', function(source, cb)
|
||||
local xPlayer = ESX.Player(source)
|
||||
|
||||
MySQL.query('SELECT * FROM `owned_vehicles` WHERE `owner` = @identifier AND `stored` = 0',
|
||||
{
|
||||
['@identifier'] = xPlayer.getIdentifier(),
|
||||
}, function(result)
|
||||
local vehicles = {}
|
||||
|
||||
for i = 1, #result, 1 do
|
||||
table.insert(vehicles, {
|
||||
vehicle = json.decode(result[i].vehicle),
|
||||
plate = result[i].plate
|
||||
})
|
||||
end
|
||||
|
||||
cb(vehicles)
|
||||
end)
|
||||
end)
|
||||
|
||||
ESX.RegisterServerCallback('esx_garage:getVehiclesInPound', function(source, cb, Impound)
|
||||
local xPlayer = ESX.Player(source)
|
||||
|
||||
MySQL.query('SELECT * FROM `owned_vehicles` WHERE `owner` = @identifier AND `pound` = @Impound AND `stored` = 2',
|
||||
{
|
||||
['@identifier'] = xPlayer.getIdentifier(),
|
||||
['@Impound'] = Impound
|
||||
}, function(result)
|
||||
local vehicles = {}
|
||||
|
||||
for i = 1, #result, 1 do
|
||||
table.insert(vehicles, {
|
||||
vehicle = json.decode(result[i].vehicle),
|
||||
plate = result[i].plate
|
||||
})
|
||||
end
|
||||
|
||||
cb(vehicles)
|
||||
end)
|
||||
end)
|
||||
|
||||
ESX.RegisterServerCallback('esx_garage:checkMoney', function(source, cb, amount)
|
||||
local xPlayer = ESX.Player(source)
|
||||
|
||||
cb(xPlayer.getMoney() >= amount)
|
||||
end)
|
||||
|
||||
RegisterServerEvent("esx_garage:payPound")
|
||||
AddEventHandler("esx_garage:payPound", function(amount)
|
||||
local source = source
|
||||
local xPlayer = ESX.Player(source)
|
||||
|
||||
if xPlayer.getMoney() >= amount then
|
||||
xPlayer.removeMoney(amount, "Impound Fee")
|
||||
xPlayer.showNotification(TranslateCap('pay_Impound_bill', amount))
|
||||
else
|
||||
xPlayer.showNotification(TranslateCap('missing_money'))
|
||||
end
|
||||
end)
|
||||
Reference in New Issue
Block a user