User Interface created originally for ESX and then adapted for VRP/VRPEX.
It was nice to play GTA5 RP and learn LUA in order to code the Trew HUD UI, but after so many struggles with not only the FiveM community and with the thing itself, I decided that I will no longer improve this project. It's been 6 months since the last time I played GTA5 RP and it makes no sense to continue this.
If you want to fork this project or send pull request, feel free to do it. It has been a nice ride. :) BALLAS FOREVER!
- Extract the .zip or Open the .zip.
- Place
trew_hud_ui
in your resources directory. - Add
start trew_hud_ui
to your server.cfg
- esx_basicneeds
- esx_status
- LegacyFuel (it should be started BEFORE the trew_hud_ui)
-
Go to es_extended config.lua and turn Config.EnableHud to false
-
If needed, go to esx_basicneeds main.lua and replace this code
TriggerEvent('esx_status:registerStatus', 'hunger', 1000000, '#CFAD0F', function(status) return true end, function(status) status.remove(1000) end) TriggerEvent('esx_status:registerStatus', 'thirst', 1000000, '#0C98F1', function(status) return true end, function(status) status.remove(750) end)
for this one
-
TriggerEvent('esx_status:registerStatus', 'hunger', 1000000, '#CFAD0F', function(status) return false end, function(status) status.remove(1000) end) TriggerEvent('esx_status:registerStatus', 'thirst', 1000000, '#0C98F1', function(status) return false end, function(status) status.remove(750) end)
Inside config.lua you will see a Config.vRP with certain items needed to set up properly, like black money. Since black money is considered an item on VRP/VRPEX versions, you need to put the ID of said item on this configuration. On most VRP versions, the ID is dirty_money.
Config.vRP
Special settings for vRP/vRPEX
- items
- blackMoney: The item ID for Black Money.
Config.Locale
The language. Default is en.
Config.serverLogo
Logo for your server. It’s suggested that you upload a PNG file to websites like imgur.com and then paste the link there.
Config.font
Font configuration for the UI. Default is Montserrat and the link points up to Google Fonts. It’s suggested that you look up for a font there and place the name and the link on it’s location.
- name: The name of the font
- link: CSS Stylesheet file link for the font
Config.date
Date format for the GPS location.
-
format:
- default: It’s the default format;
- withWeekDay: Format that shows week day names, like monday, tuesday, wednesday, etc;
- withHours: Format that shows the current time in game;
- withWeekAndHours: A mix of withWeekDay and withHours.
- simple: Format that shows only day and month;
- simpleWithHours: Same as simple, but also showing the time.
-
AmPm: set it to true if you want to use AM/PM time format, false if you don’t.
Config.voice
Voice settings for the UI. OneSync compatible
-
levels:
- default: Distance in meters for a default distance. Default is 5.0;
- shout: Distance in meters for a shout distance. Default is 12.0;
- whisper: Distance in meters for a whisper distance. Default is 1.0;
- current: It’s important that this is left unchanged.
-
keys:
- distance: Distance in meters for a default distance. Default is HOME.
Config.vehicle
Vehicle and speedometer settings
- speedUnit: It should be set either KMH or MPH. Default is KMH;
- maxSpeed: The top speed the Speedometer is allowed to go. Default is 240;
- keys:
- seatbelt: Buckle/unbuckle seatbelt. Default is K;
- cruiser: Activate/deactivate cruiser speed. Default is CAPS;
- signalLeft: Activate/deactivate car left signal. Default is LEFT;
- signalRight: Activate/deactivate car right signal. Default is RIGHT;
- signalBoth: Activate/deactivate car danger signal. Default is DOWN;
Config.ui
Display or hide elements of the HUD
- showJob: Displays the job name. Default is true;
- showWalletMoney: Displays the money on your wallet. Default is true;
- showBankMoney: Displays the money on your bank account. Default is true;
- showBlackMoney: Displays the black money you have. Default is true;
- showSocietyMoney: If you are the boss of a job, it displays the money you have in the society vault. Default is true; (Society money only works on ESX)
- showDate: Displays the date. Default is true;
- showLocation: Displays the location. Default is true;
- showHealth: Displays your health. Default is true;
- showArmor: Displays your armor. Default is true;
- showStamina: Displays your stamina. Default is true;
- showHunger: Displays hunger. Default is true;
- showThirst: Displays thirst. Default is true;
- showMinimap: Displays the minimap while off the vehicle. Default is false;
- showVoice: Displays/use the voice controller. Default is true;
- showWeapons: Displays the weapons you have on your hand, with ammo. Default is true;
You can create custom indicators for status you already have, like stress status, drunken, shit, piss, you name it! You would just have to use the new exports functions. I would recommend you create a new script with the code and load it below trew_hud_ui on your server.cfg.
exports.trew_hud_ui.createStatus
Creates a new indicator after the existing ones.
Example:
local STRESS_ACTIVE = false
AddEventHandler('playerSpawned', function()
if STRESS_ACTIVE == false then
exports.trew_hud_ui:createStatus({
status = 'stress',
color = '#FF0090',
icon = '<i class="fas fa-brain"></i>'
});
STRESS_ACTIVE = true
end
end)
Usage:
- status: The status ID. It's purely to identify it;
- color: The color you want for the status;
- icon: The HTML code for the icon. You can search on FontAwesome for an icon and when you find one of your liking, change it there.
exports.trew_hud_ui.setStatus
It is what makes the status update. It should be set on a Wait() timer to update on whenever your custom status is. The example below ticks while getting from a custom status registered on esx_status.
Example:
Citizen.CreateThread(function()
while true do
Citizen.Wait(1000)
local STRESS_STATUS
TriggerEvent('esx_status:getStatus', 'stress', function(status)
STRESS_STATUS = status.getPercent()
end)
exports.trew_hud_ui:setStatus({
name = 'stress',
value = STRESS_STATUS
});
end
end)
Usage:
- name: The name of the status. It should be correspondent with the ID when you created it;
- value: The percentage value for the status, from 0 to 100.
/toggleui
Enables/Disables HUD information elements, like and job all types money. Useful for streamers.
Usage example: /toggleui
This HUD is the product of 4 months of work, craft and creativity. While now I'm giving it for free, if you want to help, consider donating any ammount you want to. It will be really appreciated. :)