Skip to content

✂️ Hairdresser

Documentation relating to the kd_hairdresser.

1. Installation

kd_hairdresser works on all frameworks compatible with jo_libs (the list).

To install kd_hairdresser :

  • Download the library: jo_libs
  • Unzip the folder and drop it in your resource folder
  • Download kd_hairdresser from your keymaster
  • Unzip the folder and drop it in your resource folder
  • Add this ensure in your server.cfg
    • ensure jo_libs
    • ensure kd_hairdresser

Congratulation, the Hairdresser script is ready to be use !


Be sure you have oxmysql ensure in your server.cfg

2. Usage

You have two way to use my script :

Go on the shop (marker on the map) and use the command /barber to seat on the chair and open the menu.

Go on the shop and use the prompt to seat on the chair and open the menu

Use my mouse selection and right click on the barber chair to seat on it and open the menu.

For developer, you can force the reload of hair and beard with the client event


3. Config.lua file


Config = {}
Config.debug = false
Config.commandName = "barber" --use false to disable it
Config.audioVolume = 0.5 --value between 0.0 and 1.0
Config.displayBlips = true --display blip on the map
Config.displayPromptDistance = 3.0 -- distance to display the prompt (use false to disable it)

Config.oldVORPChar = false --(Only for VORP users) to use the C# version of VORP Character

Config.prices = {
  hair = 3.75, --Price for hair
  beard = 2.5, --Price for beard
  hair_accessories = 1.0 --Price for hair_accessories

Config.shops = { --list of hairdresser shops

Config.keys = {
	enter = "INPUT_FRONTEND_RB", --key to open the store

--Client side
Config.displayTip = function(text)

4. For developper

Two client events are fired when you use the script :

  1. When you open the menu : kd_hairdresser:event:Open
  2. When you close the menu : kd_hairdresser:event:Close


Filters are the new way to modify data used by the script. These filters are fired at a specific point in time during the execution of the script. But contrary to events, filters are synchronous.

  • Syntax:
-- @param <actionName> - name of the action
-- @param <argumentList> - list of arguments which are passed
exports.kd_haidresser:registerFilter(<actionName>, function(variable)
  -- Add your new data here
	return variable -- Don't forget to return the value

Client canOpenMenu

Fires before sit on the chair. Return false to disable the menu

-- @param canUse - boolean
exports.kd_haidresser:registerFilter('canOpenMenu', function(canOpen)
	return canOpen

Last updated: