local QBCore = exports['qb-core']:GetCoreObject() local rentedVehicles = {} -- Kiralama yapılıp yapılamayacağını kontrol et QBCore.Functions.CreateCallback('rental:canRent', function(source, cb) local identifiers = QBCore.Functions.GetPlayer(source).PlayerData.citizenid if rentedVehicles[identifiers] == nil then cb(true) else cb(false) end end) RegisterNetEvent('rental:chargeAndSpawn', function(price, vehicleModel, npcId) local src = source local Player = QBCore.Functions.GetPlayer(src) if not Player then return end if Player.Functions.RemoveMoney('cash', price) then local plate = GeneratePlate() rentedVehicles[Player.PlayerData.citizenid] = {vehicle = vehicleModel, plate = plate, timer = GetGameTimer()} TriggerClientEvent('rental:spawnVehicle', src, vehicleModel, plate, npcId) TriggerClientEvent('QBCore:Notify', src, "Ödemeniz alındı, araç hazırlanıyor.", "success") TriggerClientEvent('vehiclekeys:client:SetOwner', src, plate) SetTimeout(Config.RentalTime, function() local rentInfo = rentedVehicles[Player.PlayerData.citizenid] if rentInfo then rentedVehicles[Player.PlayerData.citizenid] = nil TriggerClientEvent('rental:clearRentalClient', src, npcId) TriggerClientEvent('vehiclekeys:client:RemoveOwner', src, rentInfo.plate) TriggerClientEvent('rental:deleteVehicle', src, rentInfo.plate) end end) else TriggerClientEvent('QBCore:Notify', src, "Yeterli paranız yok!", "error") end end) -- Araç silme komutu client'ta RegisterNetEvent('rental:deleteVehicle', function(plate) local src = source TriggerClientEvent('rental:deleteVehicleClient', src, plate) end) function GeneratePlate() local plate = "RENT"..math.random(1000,9999) return plate end