PAIN RP for your roleplay server
Everything is configurable,
you can easily add a trigger or a menu (includ) depending on what you want to do, for example in your EMS or Police or admin menu.
Adding reality to your RP server
Force the player to respect his pain in RP.
Fully configurable
- Add an injury time
- Yo can choose the time
- The duration of pain persists after a disconnection
- Easily added yo your EMS menu
You can adjust by (config file)
- Impossible to shoot
- Impossible to fight
- impossible to drive
- impossible to jump
- impossible to fly
- Walk injured
You also have admin commands to manually add a pain to a player
Config File
Config = {}
Config.SharedObject = 'esx:getSharedObject' -- Trigger for Shared Objet ESX 1.1 (optionnal)
Config.Notifcation = 'esx:showNotification' -- Trigger for notification ESX (optionnal)
Config.Injured = "move_m@injured" -- Animations for Injured
Config.framework = "1.2" --ESX/QB Version 1.1 or 1.2 or qb
Config.MinorInjury = "Minor Injury" -- Traduction for Minor Injury
Config.MediumInjury = "Medium Injury" -- Traduction for Medium Injury
Config.HeavyInjury = "Heavy Injury" -- Traduction for Heavy Injury
Config.SevereInjury = "Severe Injury" -- Traduction for Severe Injury
Config.CriticalInjury = "Critical Injury" -- Traduction for Critical Injury
Config.MainTitle = "Pain" -- Traduction for Pain
Config.DescTitle = "Pain" -- Traduction for Pain
Config.SubTitle = "Pain" -- Traduction for Pain
Config.MenuMinorInjury = "Minor Injury" -- Traduction for Minor Injury
Config.MenuMediumInjury = "Medium Injury" -- Traduction for Medium Injury
Config.MenuHeavyInjury = "Heavy Injury" -- Traduction for Heavy Injury
Config.MenuSevereInjury = "Severe Injury" -- Traduction for Severe Injury
Config.MenuCriticalInjury = "Critical Injury" -- Traduction for Critical Injury
Config.NoPlayerFound = "No player found" -- Traduction for No player found
Config.Injury = "You are injured" -- Traduction for You are injured
Config.AlreaydyInjured = "You are already injured" -- Traduction for You are already injured
Config.ApplyPainForce = "You are applying pain force" -- Traduction for You are applying pain force
Config.TimeMinor = 100 --Time in minutes
Config.TimeMedium = 30 --Time in minutes
Config.TimeHeavy = 60 --Time in minutes
Config.TimeSevere = 90 --Time in minutes
Config.TimeCritical = 120 --Time in minutes
Config.AntiWeapon = true --Anti Weapon
Config.WalkInjured = true --Walk Injured
Config.AntiCombatMelee = true --Anti Combat Melee
Config.AntiVehicle = true --Anti Vehicle
Config.AntiJumping = true --Anti Jumping
Config.AntiFly = true --Anti Fly
Example
--INSTALLATION
--Add the rsd_pain.sql to your database
--Do not rename the script name "rsd_pain"
-- UNCOMMENT LIB MYSQL IN FXMANIFEST.LUA (ox, mysql ...)
--ensure rsd_pain in your server.cfg
------------IMPORTANT------------
-- MENU AVAILABLE WITH /openPainMenu
-- You can use this command in your menu or in your script
-- Just remember to use it with the conditions you want
-- ONLY FOR ESX FOR NOW, COMMAND ADMIN WITH ESSENTIAL
-- /pain [ID] [TIME]
-- /endpain [ID]
--EXEMPLE TriggerClientEvent in ESX
local closestPlayer, closestDistance = ESX.Game.GetClosestPlayer()
if closestPlayer == -1 or closestDistance > 2.5 then
ESX.ShowNotification("No player Found")
else
local oPed = GetPlayerPed(closestPlayer)
local player = NetworkGetPlayerIndexFromPed(oPed)
playerTarget = GetPlayerServerId(player)
end
ESX.TriggerServerCallback('rsd_pain:verifpain', function(verifpain) --If Already have pain
if not verifpain then
TriggerServerEvent("rsd_pain:leger", playerTarget) --"rsd_pain:leger" is an exemple you can use this ->
end
end, playerTarget)
--"rsd_pain:leger" for Config.TimeMinor with custom time
--"rsd_pain:moyen" for Config.TimeMedium with custom time
--"rsd_pain:lourd" for Config.TimeHeavy with custom time
--"rsd_pain:grave" for Config.TimeSevere with custom time
--"rsd_pain:engage" for Config.TimeCritical with custom time
--EXEMPLE FOR USE TRIGGER IN DEATHSCREEN
ESX.TriggerServerCallback('rsd_pain:verifpain', function(verifpain) --If Already have pain
if not verifpain then
TriggerServerEvent("rsd_pain:leger", GetPlayerServerId(PlayerId())) --"rsd_pain:leger" is an exemple you can use this ->
end
end, GetPlayerServerId(PlayerId()))
--"rsd_pain:leger" for Config.TimeMinor with custom time
--"rsd_pain:moyen" for Config.TimeMedium with custom time
--"rsd_pain:lourd" for Config.TimeHeavy with custom time
--"rsd_pain:grave" for Config.TimeSevere with custom time
--"rsd_pain:engage" for Config.TimeCritical with custom time
--EXEMPLE FOR QBCORE CALLBACK
QBCore.Functions.TriggerCallback('rsd_pain:verifpain', function(verifpain) --If Already have pain
if not verifpain then
TriggerServerEvent("rsd_pain:leger", GetPlayerServerId(PlayerId())) --"rsd_pain:leger" is an exemple you can use this ->
end
end, GetPlayerServerId(PlayerId()))
--"rsd_pain:leger" for Config.TimeMinor with custom time
--"rsd_pain:moyen" for Config.TimeMedium with custom time
--"rsd_pain:lourd" for Config.TimeHeavy with custom time
--"rsd_pain:grave" for Config.TimeSevere with custom time
--"rsd_pain:engage" for Config.TimeCritical with custom time
Code is accessible | No / Fivem Escrow |
Subscription-based | No |
Lines (approximately) | 1250 |
Requirements | No |
Support | Yes |
Other FiveM & RedM Resources
FiveM
- RSD PauseMenu NUI with REPORT
- RSD SkyDiving NUI
- RSD WindSurf
- RSD PauseMenu NUI
- RSD LoadingScreen
- RSD WashMachine NUI
- RSD Interact
- RSD Advent Calendar NUI
MLO & MAPPING
- RSD[MLO] Rancho Aztecas
- RSD[MLO] Little-Seoul Mafia/Yakuza/Triad V2
- RSD[MLO] Luckywheels Motorcycle
- RSD[MLO] Seoul Base
- RSD[MLO] Kortz Center Bunker
- RSD[MLO] Secret Base
And more