[PAID] [vRP + ESX + QBCore] d7y_Bundles

Bundles

Hello And Welcome !

d7y_Bundles :package:

About The Script :

The script is simply a package system through which you can adjust packages of a specific group with the features in the video, enabling or disabling any choice for any package.

Features :

- Add an infinite number of bundles.

- Nice and light menu

- Support [vRP - QBCore - ESX] Frameworks

- Webhook for each process in the menu for each bundle

- Control is easier and faster with arrows. You’re never going to use the mouse.

- The menu options [Tattoo menu - Skins menu - Guns colors Menu - Teleport menu - Take weapons - Full Heal- Full Armour- Full Hunger and thirst ]

- You can add an infinite number in the Menu of skins, Gunscolors and teleports, and delete some features from the bundle or add some features to them

- It will assist you with server income and provide your players with bundles to purchase.

Configration File

Configration

Config.lua

Config = {}

Config.Framework = 'vRP' -- vRP or QBcore or ESX

Config.HowtoOpen = { -- Open Options
    ["Key"] = {
        status = true, -- if you want to open it with KeaBoard Key 
        value = 38, -- F9  KEY CODE From This Website  https://docs.fivem.net/docs/game-references/controls/#controls
    },
    ["Command"] = {
        status = true, -- if you want to open it with Command
        value = "bundles", -- Command
    },
}

Config.Buttons = { -- KEY CODES From This Website  https://docs.fivem.net/docs/game-references/controls/#controls
    ["UP"] = 27,
    ["Down"] = 173,
    ["Left"] = 174,
    ["Right"] = 175,
    ["Enter"] = 176,
    ["Back"] = 177,
}

Config.bundles = { -- Bundles
    -- For Adding More Bundles Copy From Here
    ["VIP"] = {
        Label = "VIP",
        PermCode = "player.group.add", -- in vRP this mean Permission and in QBcore it means group [ithink] and in ESX it means job
        Color = [[
            background-image: linear-gradient(-225deg,
                    #e7cd71 0%,
                    #bca142 29%,
                    #d2be76 67%,
                    #d7b537 100%);
        ]],
        Choices = {
            -- Heal
            ["Heal"] = { -- Full Heal
                Status = true, -- Choice Status enable/disable 
                TimeOut = 10000, -- 10 sec -- timeout to prevent Spam
            },
            -- Armour
            ["Armour"] = { -- Full Armour
                Status = true, -- Choice Status enable/disable 
                TimeOut = 10000, -- 10 sec -- timeout to prevent Spam
            },
            -- Weapon
            ["Weapon"] = { -- Take Certain Weapons
                Status = true, -- Choice Status enable/disable 
                TimeOut = 10000, -- 10 sec -- timeout to prevent Spam
            },
            -- Skin
            ["Skins"] = { -- Skins Menu
                Status = true, -- Choice Status enable/disable 
                TimeOut = 10000, -- 10 sec -- timeout to prevent Spam
            },
            -- Tatoos
            ["Tatoos"] = { -- Tatoo Menu
                Status = true, -- Choice Status enable/disable 
                TimeOut = 1000, -- 1 sec -- timeout to prevent Spam
            },
            -- Teleports
            ["teleport"] = { -- Teleport Menu
                Status = true, -- Choice Status enable/disable 
                TimeOut = 1000, -- 1 sec -- timeout to prevent Spam
            },
            -- Full Hunger
            ["Hunger"] = { -- Full Hunger and Thirst -- you can change the code from the bottom of the config file
                Status = true, -- Choice Status enable/disable 
                TimeOut = 10000, -- 10 sec -- timeout to prevent Spam
            },
            ["WeaponColor"] = { -- Colors Weapons (URL USED Not Tint) (local only for the player)
                Status = true, -- Choice Status enable/disable 
                TimeOut = 1000, -- 10 sec -- timeout to prevent Spam
            },

        },
        Skins = { -- Skins Menu (you can add an infinite number of skins)
            -- For Adding More Skins Copy From Here
            ["gangf"] = { -- key skin you must change it when adding another skin
                name = "Gang Female", -- Skin Name
                image = "./icons/thief.png", -- Image url
                model = "g_f_importexport_01", -- Model 
            },
            -- And Stop Here
            -- And Copy Under This Comment
        },
        Weapons = { -- Weapons
            -- For Adding More Weapons Copy From Here 
            ["WEAPON_APPISTOL"] = { -- Weapon Code
                ammo = 250, -- Ammo
            },
            -- And Stop Here
            -- And Copy Under This Comment
        },
        WeaponColor = { -- Weapon Colors
            -- For Adding More Weapon Colors Copy From Here 
            ["Galaxy"] = { -- key Color you must change it when adding another Color
                name = "Galaxy", -- Color Name
                url = "https://thumbs.gfycat.com/AcclaimedSolidAntelope-size_restricted.gif", -- url image
            },
            -- And Stop Here
            -- And Copy Under This Comment
            ["DarkMatter"] = { -- key Color you must change it when adding another skin
                name = "Dark Matter", -- Color Name
                url = "https://64.media.tumblr.com/820cbdaca85e9cc93f1913d85f684aca/1f7712b7b0daf22e-5a/s500x750/c66da85d0c24f99ee7e073b4ec64b6ae70cd3c92.gif", -- url image
            },
        },
        Teleports = { -- Teleports
            -- For Adding More Teleport Point Copy From Here  
            ['policest'] = { -- key Teleport you must change it when adding another Teleport point
                name = "Police Station",
                image = "./icons/police-station.png",
                coords = { 431.65, -976.18, 30.71 },
            },
            -- And Stop Here
            -- And Copy Under This Comment
        },
        Tatoos = { -- Tatoos
            ["Torso"] = { -- Torso
                Status = true, -- Choice Status enable/disable 
            },
            ["Head"] = { -- Head
                Status = true, -- Choice Status enable/disable 
            },
            ["Left Arm"] = { -- Left Arm
                Status = true, -- Choice Status enable/disable 
            },
            ["Right Arm"] = { -- Right Arm
                Status = true, -- Choice Status enable/disable 
            },
            ["Right Leg"] = { -- Right Leg
                Status = true, -- Choice Status enable/disable 
            },
            ["Left Leg"] = { -- Left Leg
                Status = true, -- Choice Status enable/disable 
            },
        },
    },
    -- And Stop Here
    -- And Copy Under This Comment
}

-- Arrows audio Effect
Config.ArrowAudio =
    "https://cdn.discordapp.com/attachments/709149349522964642/1009905329196245042/250_clicks_collection-59616_mp3cut.net.mp3"
-- Enter/Back audio Effect
Config.EnterAudio =
    "https://cdn.discordapp.com/attachments/709149349522964642/1009906813946306560/250_clicks_collection-59616_mp3cut.net_2.mp3"

Config.Lang = {
    -- Main Menu
    ["teleport"] = "Teleports",
    ["Heal"] = "Full Heal",
    ["Armour"] = "Full Armour",
    ["Weapon"] = "Take Guns",
    ["Skins"] = "Skins Menu",
    ["Tatoos"] = "Tatoos Menu",
    ["Hunger"] = "Full Hunger",
    ["WeaponColor"] = 'Guns Colors',
    -- Tatoo Menu
    ["Torso"] = "Torso",
    ["Head"] = "Head",
    ["Left Arm"] = "Left Arm",
    ["Right Arm"] = "Right Arm",
    ["Right Leg"] = "Right Leg",
    ["Left Leg"] = "Left Leg",
    -- Webhook Thing 
    ["cmdname1"] = "Player Name : ",
    ["cmdname2"] = "Choice : ",
    ["status"] = "Description : ",
    -- Menus
    ["main"] = "Main",
    ["TatooMenu"] = "Tatoo",
    -- Desc : 
    ["HealDESC"] = "The Player Used Full Heall.",
    ["ArmourDESC"] = "The Player Used Full Armour",
    ["teleportDESC"] = "Player Teleport To : ",
    ["WeaponDESC"] = "These weapons have been taken by this player : ",
    ["SkinDESC"] = "The Player has changed his skin to : ",
    ["TatoosDESC"] = "The player has modified the tattoo on his body : ",
    ["TatoosRDESC"] = "The player removed the tattoo from his body.",
    ["HungerDesc"] = "The Player Used Full Hunger",
    ["WeaponColorDESC"] = "The Player changed the color of his weapon to : ",
}

Config.Image = {
    -- main
    ["teleport"] = "./icons/teleportation.png",
    ["Heal"] = "./icons/health.png",
    ["Armour"] = "./icons/shield.png",
    ["Weapon"] = "./icons/weapons.png",
    ["Skins"] = "./icons/skins.png",
    ["Tatoos"] = "./icons/tatoos.png",
    ["Hunger"] = "./icons/hunger.png",
    ["WeaponColor"] = './icons/spray.png',
    -- Tatoo
    ["Torso"] = "./icons/torso.png",
    ["Head"] = "./icons/head.png",
    ["Left Arm"] = "./icons/arm-left.png",
    ["Right Arm"] = "./icons/arm-right.png",
    ["Right Leg"] = "./icons/right-leg.png",
    ["Left Leg"] = "./icons/left-leg.png",

}

Config.messages = {
    YourNotAllowed = "You are not authorized to use this choice.",
    HealthsFull = 'healed successfully',
    ArmourFull = 'Armoured Successfully',
    WeaponGived = "Weapon gived Successfully",
    OpertainSucces = "operation accomplished successfully",
    TpSuccess = "Teleportes Successfully",
    ChangeModelSuccess = "Skin Changed Successfully",
    ThereIsSomthingWrong = "An error occurred, try again",
    bundle = "bundle",
    Torso = "Torso",
    Head = "Head",
    LeftArm = "Left Arm",
    RightArm = "Right Arm",
    RightLeg = "Right Leg",
    LeftLeg = "Left Leg",
    TatoApplied = "The tattoo has been placed successfully !",
    TatoRemoved = "The tattoo has been removed successfully",
    HungerFull = "Hunger and thirst have been successfully filled",
    YouCantDoThisNow = "You cannot use this choice at the moment",
}

Config.Notify = function(message, audio)
    GangNotify(message, audio)
end

Config.S_Notify = function(source, message, audio)
    S_GangNotify(source, message, audio)
end
function S_GangNotify(source, message, audio)
    local Theme = "default"
    if audio == "AUDIO_ERROR" then
        Theme = "error"
    end
    TriggerClientEvent("D7-Notify:sendAdvanced", source, message, "~h~Brhom", "Menu Manager", "CHAR_MANUEL", 5000, nil,
        true, Theme, audio)
end

function GangNotify(message, audio)
    local Theme = "default"
    if audio == "AUDIO_ERROR" then
        Theme = "error"
    end
    TriggerEvent("D7-Notify:sendAdvanced", message, "~h~Brhom", "Menu Manager", "CHAR_MANUEL", 5000, nil, true, Theme,
        audio)
end

Config.GetID = function(source)
    if Config.Framework == 'vRP' then
        return module("vrp", "lib/Proxy").getInterface("vRP").getUserId({ source })
    else
        return source
    end
end
-- Framework Things
ESX = nil;
QBCore = nil;
vRP = nil;
Config.hasPermission = function(source, PermCode)
    if Config.Framework == 'vRP' then
        if vRP == nil then
            vRP = module("vrp", "lib/Proxy").getInterface("vRP")
        end
        local user_id = source
        return vRP.hasPermission({ user_id, PermCode })
    elseif Config.Framework == "QBcore" then
        if QBCore == nil then
            QBCore = exports['qb-core']:GetCoreObject()
        end
        local QBCore = exports['qb-core']:GetCoreObject()
        return QBCore.Functions.HasPermission(source, PermCode)
    elseif Config.Framework == "ESX" then
        if ESX == nil then

            TriggerEvent("esx:getSharedObject", function(obj)
                ESX = obj;
            end)
            while ESX == nil do
                Wait(1)
            end
        end
        local xPlayer = ESX.GetPlayerFromId(source)
        return xPlayer.job.name == PermCode
    else
        return false
    end
end

Config.FullHunger = function(source, user_id, bundle)
    if Config.Framework == 'vRP' then
        if vRP == nil then
            vRP = module("vrp", "lib/Proxy").getInterface("vRP")
        end
        vRP.setHunger({ user_id, 0 })
        vRP.setThirst({ user_id, 0 })
    elseif Config.Framework == "QBcore" then
        -- i don't know how it works in QBCore but i think this should work
        if QBCore == nil then
            QBCore = exports['qb-core']:GetCoreObject()
        end
        local QBCore = exports['qb-core']:GetCoreObject()
        local Player = ESX.GetPlayerFromId(source)
        Player.Functions.SetMetaData("thirst", 100)
        Player.Functions.SetMetaData("hunger", 100)
        Player.Functions.Save()
    elseif Config.Framework == "ESX" then
        -- i don't know how it works in Esx but i think this should work
        if ESX == nil then

            TriggerEvent("esx:getSharedObject", function(obj)
                ESX = obj;
            end)
            while ESX == nil do
                Wait(1)
            end
        end
        TriggerClientEvent('esx_status:add', source, 'hunger', 500000)
        TriggerClientEvent('esx_status:add', source, 'thirst', 500000)
    end

end



Tebex And Price

Price : $30
Tebex

Video

Code is accessible No
Subscription-based No
Lines (approximately) 600+
Requirements No
Support Yes

Other Releases

d7y_GunGame :dart:
d7y_ElimnatedKill :black_flag:
d7y_Pause⏸
d7y_Bloodshot :drop_of_blood:
d7y_KillRole :gun: