-
Notifications
You must be signed in to change notification settings - Fork 10
/
client.lua
89 lines (80 loc) · 3.54 KB
/
client.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
local isAntiLagEnabled = true
RegisterCommand("antilag", function()
isAntiLagEnabled = not isAntiLagEnabled
PlaySoundFrontend(-1, 'CONFIRM_BEEP', 'HUD_MINI_GAME_SOUNDSET', true)
message("~" ..
(isAntiLagEnabled and "g" or "r") ..
"~Antilag is now " .. (isAntiLagEnabled and "enabled" or "disabled") .. " for you~")
end, false)
local reverse = 0
CreateThread(function()
while true do
local sleep = 1000
local player = PlayerPedId()
local veh = GetVehiclePedIsIn(player, false)
local delay = math.random(25, Config.explosionSpeed)
if GetPedInVehicleSeat(GetVehiclePedIsIn(PlayerPedId()), -1) == player and isAntiLagEnabled then
sleep = 0
local RPM = GetVehicleCurrentRpm(veh, player)
local gear = GetVehicleCurrentGear(veh)
for _, cars in pairs(Config.Cars) do
local vehicleModel = GetEntityModel(veh, player)
if GetHashKey(cars) == vehicleModel then
if gear ~= reverse then
if not IsEntityInAir(veh) then
if not IsControlPressed(1, 71) and not IsControlPressed(1, 72) then
if RPM > Config.RPM then
TriggerServerEvent("flames", VehToNet(veh))
TriggerServerEvent("sound_server:PlayWithinDistance", 25.0,
tostring(math.random(1, 6)),
0.9)
SetVehicleTurboPressure(veh, 25)
Wait(delay)
end
end
end
end
end
end
end
Wait(sleep)
end
end)
local exhausts = { "exhaust", "exhaust_2", "exhaust_3", "exhaust_4" }
local fxName = "veh_backfire"
local fxGroup = "core"
RegisterNetEvent('sound_client:PlayWithinDistance')
AddEventHandler('sound_client:PlayWithinDistance', function(coords, disMax, audoFile, audioVol)
local entityCoords = GetEntityCoords(PlayerPedId())
local distance = #(entityCoords - coords)
local distanceRatio = distance / disMax -- calculate the distance ratio
local adjustedVolume = audioVol / distanceRatio -- adjust volume based on distance ratio
if (distance <= disMax) then
SendNUIMessage({
transactionType = 'playSound',
transactionFile = audoFile,
transactionVolume = adjustedVolume -- use the adjusted volume
})
end
end)
RegisterNetEvent("client_flames")
AddEventHandler("client_flames", function(vehicle)
if NetworkDoesEntityExistWithNetworkId(vehicle) then
for _, bones in pairs(exhausts) do
local boneIndex = GetEntityBoneIndexByName(NetToVeh(vehicle), bones)
if boneIndex ~= -1 then
UseParticleFxAssetNextCall(fxGroup)
local startParticle = StartParticleFxLoopedOnEntityBone(fxName, NetToVeh(vehicle), 0.0, 0.0, 0.0, 0.0,
0.0,
0.0,
GetEntityBoneIndexByName(NetToVeh(vehicle), bones), Config.flameSize, 0.0, 0.0, 0.0)
StopParticleFxLooped(startParticle, true)
end
end
end
end)
function message(text)
SetNotificationTextEntry("STRING")
AddTextComponentString(text)
DrawNotification(false, false)
end