-
Notifications
You must be signed in to change notification settings - Fork 0
/
client.lua
86 lines (80 loc) · 2.77 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
local time = 0
local count = 0
--==================================
--==== SAFE ZONE SCRIPT MADE BY ====
--==== Le Bookmaker ====
--==== Bonermanceer ====
--==== ENJOY ====
--==================================
-- Disable Weapon Attack and Melee Attack
Citizen.CreateThread(function()
while not NetworkIsPlayerActive(PlayerId()) do
Citizen.Wait(0)
end
while true do
Citizen.Wait(10)
for i = 1, #Config.zones, 1 do
local playerPed = PlayerPedId()
local coords = GetEntityCoords(playerPed)
local betweencoords = GetDistanceBetweenCoords(coords, Config.zones[i].x, Config.zones[i].y, Config.zones[i].z, true)
local distance = false
--print(betweencoords)
if betweencoords <= Config.safeRadius then
time = 0
count = 0
TriggerEvent('vorp_safeZone:startTimerIn')
NetworkSetFriendlyFireOption(false)
ClearPlayerWantedLevel(PlayerId())
end
if betweencoords >= Config.safeRadius then
if time < 100 then
time = time + 1
--print(count)
DrawTxt(Language.translate[Config.lang]['out'], 0.50, 0.95, 0.3, 0.3, true, 255, 255, 255, 255, true)
NetworkSetFriendlyFireOption(true)
if time == 100 then
count = count + 1
if count < 8 then
time = 0
end
if count > 8 then
Citizen.Wait(30000)
count = 0
time = 0
break
end
end
end
end
end
end
end)
RegisterNetEvent('vorp_safeZone:startTimerIn')
AddEventHandler('vorp_safeZone:startTimerIn', function()
--print('InSafeZone')
DrawTxt(Language.translate[Config.lang]['in'], 0.50, 0.95, 0.3, 0.3, true, 255, 255, 255, 255, true)
DisablePlayerFiring(playerPed, true) -- Disables firing all together if they somehow bypass inzone Mouse Disable
DisableControlAction(0, 0x07CE1E61, true) -- Disable attack control
DisableControlAction(0, 0xB2F377E8, true) -- Disable MeleeAttack control
end)
-- Creating Blip at the locations.
Citizen.CreateThread(function()
while not NetworkIsPlayerActive(PlayerId()) do
Citizen.Wait(0)
end
for i = 1, #Config.zones, 1 do
--Citizen.InvokeNative(0x554d9d53f696d002, 1560611276, Config.zones[i].x, Config.zones[i].y, Config.zones[i].z) -- Add blip icon<
Citizen.InvokeNative(0x45f13b7e0a15c880, -1282792512, Config.zones[i].x, Config.zones[i].y, Config.zones[i].z, Config.safeRadius) -- Add yellow zone
end
end)
function DrawTxt(str, x, y, w, h, enableShadow, col1, col2, col3, a, centre)
local str = CreateVarString(10, "LITERAL_STRING", str)
SetTextScale(w, h)
SetTextColor(math.floor(col1), math.floor(col2), math.floor(col3), math.floor(a))
SetTextCentre(centre)
if enableShadow then
SetTextDropshadow(1, 0, 0, 0, 255)
end
Citizen.InvokeNative(0xADA9255D, 1)
DisplayText(str, x, y)
end