πŸ”₯All scripts on our website are 50% off!πŸ”₯
Logo

Rewards

The reward can be of type "money", "item" or "weapon".

Money Reward

rewardType = "money",
rewardItemsOrWeapons = {},
rewardMoney = 2500

Item Reward

rewardType = "item",
rewardItemsOrWeapons = {
    {itemName = "water", amount = 2},
    {itemName = "sandwich", amount = 1}
},
rewardMoney = 0

Weapon Reward

rewardType = "weapon",
rewardItemsOrWeapons = {
    {itemName = "weapon_pistol", amount = 1}
},
rewardMoney = 0

Server Configuration Functions

Give Items

function GiveItemToPlayer(playerID, itemName, amount)
    if Config.Framework == "esx" then
        local xPlayer = ESX.GetPlayerFromId(playerID)
        xPlayer.addInventoryItem(itemName, amount)
        return true
    else
        local xPlayer = QBCore.Functions.GetPlayer(playerID)
        xPlayer.Functions.AddItem(itemName, amount)
        return true
    end
end

Give Money

function GiveMoneyToPlayer(playerID, amount)
    if Config.Framework == "esx" then
        local xPlayer = ESX.GetPlayerFromId(playerID)
        xPlayer.addMoney(amount)
        return true
    else
        local xPlayer = QBCore.Functions.GetPlayer(playerID)
        xPlayer.Functions.AddMoney('cash', amount, "Reward")
        return true
    end
end

Give Weapons

function GiveWeaponToPlayer(playerID, weapon, amount)
    if Config.Framework == "esx" then
        local xPlayer = ESX.GetPlayerFromId(playerID)
        xPlayer.addWeapon(weapon, amount)
        return true
    else
        local xPlayer = QBCore.Functions.GetPlayer(playerID)
        xPlayer.Functions.AddItem(weapon, amount)
        return true
    end
end

Give Vehicles

function GiveVehicleToPlayer(playerID, vehicleProps)
    if Config.Framework == "esx" then
        local xPlayer = ESX.GetPlayerFromId(playerID)
        SqlFunc(Config.Mysql, 'execute',
            'INSERT INTO owned_vehicles (owner, plate, vehicle, stored) VALUES (@owner, @plate, @vehicle, @stored)', {
                ['@owner'] = xPlayer.identifier,
                ['@plate'] = vehicleProps.plate,
                ['@vehicle'] = json.encode(vehicleProps),
                ['@stored'] = 1
            })
        return true
    else
        local xPlayer = QBCore.Functions.GetPlayer(playerID)
        SqlFunc(Config.Mysql, 'execute',
            'INSERT INTO player_vehicles (citizenid, plate, mods, stored) VALUES (@citizenid, @plate, @mods, @state)', {
                ['@citizenid'] = Player.PlayerData.citizenid,
                ['@plate'] = vehicleProps.plate,
                ['@mods'] = json.encode(vehicleProps),
                ['@state'] = 1
            })
        return true
    end
end