[ESX][QB] vms_clothestore | Clothes Store

[TEBEX] $ BUY IT HERE

[SHOWCASE] vms_clothestore


Compatibility with ESX and QB-Core
Compatibility with esx_skin / qb-clothing / fivem-appearance / illenium-appearance
Automatic adaptation of the camera to a given body part
Possibility to set the animation that the ped performs during character clothing
Interaction sounds can be turned off
Ability to disable/enable individual categories for each stores (you can do jewelry shop only with chains, earrings, watches)
The ability to use the script with a marker or with a trigger that will be called, for example, by npctalk
Ability to set access to player’s dressing room in stores
Ability to set the possibility to save the created outfits after buy
The ability to change the values ​​on the sliders using the arrows on the keyboard or with mouse.
Compatible with other resolutions
Full JS translation.
Full support.

Config = {}
Config.Core = "ESX" -- "ESX" / "QB-Core"
Config.CoreExport = function()
    return exports['es_extended']:getSharedObject() -- ESX
    -- return exports['qb-core']:GetCoreObject() -- QB-CORE
end

Config.Notification = function(message, time, type)
    if type == "success" then
        exports["vms_notify"]:Notification("CLOTHES STORE", message, time, "#27FF09", "fa-solid fa-shirt")
        -- TriggerEvent('esx:showNotification', message)
        -- TriggerEvent('QBCore:Notify', message, 'success', time)
    elseif type == "error" then
        exports["vms_notify"]:Notification("CLOTHES STORE", message, time, "#FF0909", "fa-solid fa-shirt")
        -- TriggerEvent('esx:showNotification', message)
        -- TriggerEvent('QBCore:Notify', message, 'error', time)
    end
end

Config.Hud = {
    Enable = function()
        -- exports['hud']:DisplayHud(true)
    end,
    Disable = function()
        -- exports['hud']:DisplayHud(false)
    end
}

-- @ Config.KeyOpen - https://docs.fivem.net/docs/game-references/controls/
Config.KeyOpen = 38 -- [E]

-- @ Config.SkinManager - ESX: "esx_skin" / "fivem-appearance" / "illenium-appearance"
-- @ Config.SkinManager - QB-Core: "qb-clothing" / "fivem-appearance" / "illenium-appearance"
Config.SkinManager = "esx_skin"

-- @ Config.ChangeClothes - Menu for choosing whether to buy new clothes or change into your clothes
Config.ChangeClothes = true

-- @ Config.SaveClothesMenu - Clothes saving
Config.SaveClothesMenu = true

-- @ Config.Menu ESX: "esx_context" <-- Required esx_context
-- @ Config.Menu ESX: "esx_menu_default" <-- Required esx_menu_default & esx_menu_dialog
-- @ Config.Menu QB-Core: "qb-menu" <-- Required qb-menu & qb-input
Config.Menu = "esx_context"
Config.ESXMenuDefault_Align = 'left' -- works only for esx_menu_default
Config.ESXContext_Align = 'left' -- works only for esx_context


Config.SoundsEffects = true -- if you want to sound effects by clicks set true
Config.BlurBehindPlayer = true -- to see it you need to have PostFX upper Very High or Ultra


Config.ClothingPedAnimation = {"anim@heists@heist_corona@team_idles@male_a", "idle"} -- animation of the player during character creation
Config.DefaultCamDistance = 0.95 -- camera distance from player location (during character creation)
Config.CameraHeight = {
    ['masks'] = {z_height = 0.65, fov = 30.0},
    ['hats'] = {z_height = 0.65, fov = 30.0},
    ['torsos'] = {z_height = 0.15, fov = 75.0},
    ['bproofs'] = {z_height = 0.15, fov = 75.0},
    ['pants'] = {z_height = -0.425, fov = 75.0},
    ['shoes'] = {z_height = -0.6, fov = 75.0},
    ['chains'] = {z_height = 0.25, fov = 75.0},
    ['glasses'] = {z_height = 0.65, fov = 30.0},
    ['watches'] = {z_height = -0.025, fov = 75.0},
    ['ears'] = {z_height = 0.65, fov = 30.0},
    ['bags'] = {z_height = 0.15, fov = 75.0},
}

Config.Translate = {
    ['blip.clothesstore'] = 'Clothes Store',
    ['blip.maskstore'] = 'Mask Store',
    
    ['you_paid'] = 'You paid %s$ for the clothes',
    ['saved_clothes'] = 'You saved the clothes with a name %s',
    ['enought_money'] = 'You dont have enough money',
    
    ['select_option'] = {name = 'Select option', icon = 'fas fa-check-double'},
    ['manage_header'] = {name = 'Manage clothes', icon = 'fas fa-tshirt'}, 
    ['wardrobe_header'] = {name = 'Wardrobe', icon = 'fas fa-tshirt'}, 

    ['open_wardrobe'] = {name = 'Open Wardrobe', icon = 'fas fa-shirt'},
    ['open_manage'] = {name = 'Manage clothes', icon = 'fas fa-shirt'},
    ['open_store'] = {name = 'Open Store', icon = 'fas fa-bag-shopping'},
    
    ['menu:header'] = {name = 'Do you want save this outfit?', icon = 'fas fa-check-double'},
    ['menu:yes'] = {name = 'Yes', icon = 'fas fa-check-circle'},
    ['menu:no'] = {name = 'No', icon = 'fas fa-window-close'},
    
    ['title_remove'] = {name = 'You want to remove %s?', icon = 'fas fa-shirt'},
    ['remove_yes'] = {name = 'Yes', icon = 'fas fa-check'},
    ['remove_no'] = {name = 'No', icon = 'fas fa-xmark'},

    ['esx_menu_default:header'] = 'Name your outfit',
    ['esx_context:title'] = {name = 'Enter name of outfit', icon = 'fas fa-shirt'},
    ['esx_context:placeholder_title'] = 'Outfit Name',
    ['esx_context:placeholder'] = 'Outfit name in wardrobe..',
    ['esx_context:confirm'] = {name = 'Confirm', icon = 'fas fa-check-circle'},

    ['qb-input:header'] = 'Name your outfit',
    ['qb-input:submitText'] = 'Save Outfit',
    ['qb-input:text'] = 'Outfit Name',
}

Config.Stores = {
    [1] = {
        coords = vector3(-1337.84, -1277.81, 4.0),
        price = 500,
        blip = {
            sprite = 362,
            display = 4,
            scale = 0.95,
            color = 5,
            name = Config.Translate['blip.maskstore'],
        },
        marker = {
            size = vec(1.85, 1.85, 0.95),
            color = {255, 205, 0, 125},
            rotate = false,
            bobUpAndDown = false
        },
        categories = {
            ['masks'] = true,
            ['hats'] = false,
            ['torsos'] = false,
            ['bproofs'] = false,
            ['pants'] = false,
            ['shoes'] = false,
            ['chains'] = false,
            ['glasses'] = false,
            ['watches'] = false,
            ['ears'] = false,
            ['bags'] = false,
        }
    },
    [...]
}

Resmon while not using:

not use

Resmon while using:

use

:anger: You can check my others scripts :anger:
vms_charcreator
vms_multichars + vms_identity
vms_tattooshop
vms_barber
vms_pausemenu
vms_skydiving
vms_races
vms_drivingschool
vms_boatschool
vms_flyingschool
vms_bank
vms_notify
vms_shops
vms_redeem
vms_garage
vms_jobcenter
interact

Code is accessible Yes / No
Subscription-based No
Lines (approximately) +1815 Lua + JS
Requirements ESX / QB-Core
Support Yes
4 Likes

Very nice script ! +1

1 Like

thank you :hugs:

1 Like

:computer: UPDATE 1.0.1

  • Added possibility of deleting clothes from wardrobe on ESX (esx_skin / fivem-appearance) and QB (qb-clothing)
  • Fixed wardrobe of ESX with fivem-appearance
  • Added vests

:computer: UPDATE 1.0.2

  • Fixed changing the texture value to 0 (e.g tshirt_2) when changing an main item (e.g tshirt_1)

:computer: UPDATE 1.0.3

[/] Fixed skin saving after wearing one of the outfits from the wardrobe for qb-clothing
[+] Added client exports OpenManage & OpenWardrobe for use in custom scripts
[+] Added Config.Hud, to hide your hud in menu

:computer: UPDATE 1.0.4

[/] Supporting for illenium-appearance

awesome release

1 Like

:computer: UPDATE 1.0.5

[/] Fixed reload of skins after wearing clothes from wardrobe for illenium-appearance
[+] Added choice of payment - cash, bank


:computer: UPDATE 1.0.6

[+] Added Config.BlockedClothes - now you can block clothing by id in the clothing store, for example, police uniforms, so that nobody wears them
[+] Added id option to marker settings

:computer: UPDATE 1.0.7

[+] Added Config.Interact and functionality ESX.ShowHelpNotification for esx while not using any textui

:computer: UPDATE 1.0.8

[+] Added notification when a set of clothes is removed from the wardrobe
[+] Added Config.EnableHandsUpButtonUI - if this is true, there will be a button to raise hands on the UI on the right of the cancel button (Config.HandsUpKey continues to be active)
[+] Added Config.HandsUpKey & Config.HandsUpAnimation

will there be an update with ox_lib menu?

Hi, it is compatibile with ox_lib, on the 1.0.9 version, I forgot to write about it here

image

:computer: UPDATE 1.0.9

[+] Added to Config.BlockedClothes gender, you can set blocked values for male and female other
[+] Added an additional check to see if the player should have access to the ability to open the menu (The lock was made so that your TextUI would not display all the time when, for example, using the clothing store or using the wardrobe menu)
[+] Compatibility with ox_lib (context & input)

Is ui accessible to edit something? And how about adding boss clothes? (Boss of job could create outfits and save it to group menu or sth like that)

yes, html, css and js is open in escrow as well as open source.
vms_clothestore does not have the ability to set up a dressing room for jobs, there is only a dressing room with private clothes there

:computer: UPDATE 1.1.0

[/] Fixed esx_menu_default for ESX fivem-appearance/illenium-appearance
[/] Fixed loading Config.BlockedClothes for ESX fivem-appearance/illenium-appearance
[/] Moved Config.BlockedClothes to each store separately for blockedClothes - following requests to be able to set different blocked values in each store, from now on there is such a possibility
[+] Added Config.UseQSInventory & Config.QSInventoryName to compatibility with qs-inventory clothing system
[+] Added check for length of saved clothes name to wardrobe entered in esx_context & esx_menu_dialog
[/] Fixed display of name in manage esx_menu_default menu for ESX illenium-appearance
[/] Improved display of category name with hats
[+] Added one missing Binco clothing store near the beach