Hello ladies and gentlemen, I decided to share my implementation of the closing system for vRP. The resource allows you to interact with the doors on the item in the inventory (key) or on the perm in the player’s group. I also added a door position check before fixing it to prevent it from freezing in the semi-open position.
https://github.com/XXanderWP/vRP_doorsControl
Nice work man, I only had to change the language to English and the perm for the Captain’s office for it to work with Dunko’s 6.6v of vrp. Works great though!!
is it possible to make a permisson so its locked for citizens, and its only police who can open it?
Hey Nice script!
How Can I make That only police Can open The Doors without A key?
I have updated the code so that the keys work and made it compatible with vrpex, also language,fix notify, removed unnecessary {},key names/permissions names:
(police.key & captain.key)
["Captain Key"] = {"🔑 Captains Office", "", nil, 0.01},
["LSPD Key"] = {"🔑 LSPD", "", nil, 0.01}
to fix for vanilla vrp do:
if vRP.getInventoryItemAmount({user_id, "#"..doorList[id].key..".>0"}) or vRP.hasPermission({user_id,doorList[id].permission}) then
For VRPEX use:
server.lua
--[[-----------------
vRP_doorsControl By XanderWP - Lee Fall VRPEX Edit from Ukraine & UK with <3
------------------------]]--
local Tunnel = module("vrp", "lib/Tunnel")
local Proxy = module("vrp", "lib/Proxy")
vRP = Proxy.getInterface("vRP")
vRPclient = Tunnel.getInterface("vRP","doorsControl")
doorList = {
[1] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[2] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[3] = {freeze = true, key = "Captain Key", permission="captain.key", name = "Captain room"},
[4] = {freeze = true, key = "LSPD key", permission="police.key", name = "LSPD"},
[5] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[6] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[7] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[8] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[9] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[10] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[11] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[12] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[13] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[14] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[15] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[16] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[17] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[18] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[19] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[20] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[21] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[22] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
}
RegisterServerEvent('door:status')
AddEventHandler('door:status', function(id, status)
user_id = vRP.getUserId(source)
player = vRP.getUserSource(user_id)
if vRP.hasPermission(user_id, "#"..doorList[id].key..".>0") or vRP.hasPermission(user_id,doorList[id].permission) then
doorList[id].freeze=status
TriggerClientEvent('door:statusSend', -1, id, status)
if status then
vRPclient._notify(player, "Door ~r~closed ~y~with ~b~Key "..doorList[id].name)
else
vRPclient._notify(player, "Door ~g~open ~y~with ~b~Key "..doorList[id].name)
end
else
vRPclient._notify(player, "~r~Need ~b~Key "..doorList[id].name)
end
end)
RegisterServerEvent('door:load')
AddEventHandler('door:load', function(id, status)
TriggerClientEvent('door:loadSend', -1, doorList)
end)
local function doorSync()
TriggerClientEvent('door:loadSend', -1, doorList)
SetTimeout(5000, doorSync)
end
doorSync()
client.lua
--[[-----------------
vRP_doorsControl By XanderWP Lee Fall VRPEX Edit from Ukraine & UK with <3
------------------------]]--
local LockHotkey = {0,108}
doorList = {
-- Mission Row To locker room & roof
[1] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_gendoor004", ["x"]= 449.69815063477, ["y"]= -986.46911621094,["z"]= 30.689594268799,["locked"]= true,["txtX"]=450.104,["txtY"]=-986.388,["txtZ"]=31.739},
-- Mission Row Armory
[2] = { ["ishash"] = 0, ["objName"] = "v_ilev_arm_secdoor", ["x"]= 452.61877441406, ["y"]= -982.7021484375,["z"]= 30.689598083496,["locked"]= true,["txtX"]=453.079,["txtY"]=-982.600,["txtZ"]=31.739},
-- Mission Row Captain Office
[3] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_gendoor002", ["x"]= 447.23818969727, ["y"]= -980.63006591797,["z"]= 30.689598083496,["locked"]= true,["txtX"]=447.200,["txtY"]=-980.010,["txtZ"]=31.739},
-- Mission Row To downstairs right
[4] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_gendoor005", ["x"]= 443.97, ["y"]= -989.033,["z"]= 30.6896,["locked"]= true,["txtX"]=444.020,["txtY"]=-989.445,["txtZ"]=31.739},
-- Mission Row To downstairs left
[5] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_gendoor005", ["x"]= 445.37, ["y"]= -989.705,["z"]= 30.6896,["locked"]= true,["txtX"]=445.350,["txtY"]=-989.445,["txtZ"]=31.739},
-- Mission Row Main cells
[6] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 464.0, ["y"]= -992.265,["z"]= 24.9149,["locked"]= true,["txtX"]=463.465,["txtY"]=-992.664,["txtZ"]=25.064},
-- Mission Row Cell 1
[7] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 462.381, ["y"]= -993.651,["z"]= 24.9149,["locked"]= true,["txtX"]=461.806,["txtY"]=-993.308,["txtZ"]=25.064},
-- Mission Row Cell 2
[8] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 462.331, ["y"]= -998.152,["z"]= 24.9149,["locked"]= true,["txtX"]=461.806,["txtY"]=-998.800,["txtZ"]=25.064},
-- Mission Row Cell 3
[9] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 462.704, ["y"]= -1001.92,["z"]= 24.9149,["locked"]= true,["txtX"]=461.806,["txtY"]=-1002.450,["txtZ"]=25.064},
-- Mission Row Backdoor in
[10] = { ["ishash"] = 0, ["objName"] = "v_ilev_gtdoor", ["x"]= 464.126, ["y"]= -1002.78,["z"]= 24.9149,["locked"]= true,["txtX"]=464.100,["txtY"]=-1003.538,["txtZ"]=26.064},
-- Mission Row Backdoor out
[11] = { ["ishash"] = 0, ["objName"] = "v_ilev_gtdoor", ["x"]= 464.18, ["y"]= -1004.31,["z"]= 24.9152,["locked"]= true,["txtX"]=464.100,["txtY"]=-1003.538,["txtZ"]=26.064},
-- Mission Row Rooftop In
[12] = { ["ishash"] = 0, ["objName"] = "v_ilev_gtdoor02", ["x"]= 465.467, ["y"]= -983.446,["z"]= 43.6918,["locked"]= true,["txtX"]=464.361,["txtY"]=-984.050,["txtZ"]=44.834},
-- Mission Row Rooftop Out
[13] = { ["ishash"] = 0, ["objName"] = "v_ilev_gtdoor02", ["x"]= 462.979, ["y"]= -984.163,["z"]= 43.6919,["locked"]= true,["txtX"]=464.361,["txtY"]=-984.050,["txtZ"]=44.834},
--- Центральные двери в ПД
[14] = { ["ishash"] = 1, ["objName"] = 320433149, ["x"]= 434.7479, ["y"]= -982.2151,["z"]= 30.83926,["locked"]= true,["txtX"]=999999,["txtY"]=99999999,["txtZ"]=9999999},
[15] = { ["ishash"] = 1, ["objName"] = -1215222675, ["x"]= 434.7479, ["y"]= -981.6184,["z"]= 30.83926,["locked"]= true,["txtX"]=434.427,["txtY"]=-981.95184,["txtZ"]=31.710},
--- Брифинг комната
[17] = { ["ishash"] = 1, ["objName"] = -131296141, ["x"]= 443.0298, ["y"]= -992.941,["z"]= 30.8393,["locked"]= true,["txtX"]=443.0298,["txtY"]=-992.941,["txtZ"]=31.8393},
[16] = { ["ishash"] = 1, ["objName"] = -131296141, ["x"]= 443.0298, ["y"]= -993.5412,["z"]= 30.8393,["locked"]= true,["txtX"]=443.0298,["txtY"]=-993.5412,["txtZ"]=31.8393},
--- Задние двери
[19] = { ["ishash"] = 1, ["objName"] = -2023754432, ["x"]= 468.9679, ["y"]= -1014.452,["z"]= 26.53623,["locked"]= true,["txtX"]=468.9679,["txtY"]=-1014.452,["txtZ"]=27.53623},
[18] = { ["ishash"] = 1, ["objName"] = -2023754432, ["x"]= 468.3716, ["y"]= -1014.452,["z"]= 26.53623,["locked"]= true,["txtX"]=468.3716,["txtY"]=-1014.452,["txtZ"]=27.53623},
[21] = { ["ishash"] = 1, ["objName"] = 749848321, ["x"]= 461.2865, ["y"]= -985.3206,["z"]= 30.83926,["locked"]= true,["txtX"]=461.507,["txtY"]=-985.9053,["txtZ"]=31.6895},
[20] = { ["ishash"] = 1, ["objName"] = -2023754432, ["x"]= 452.6248, ["y"]= -987.3626,["z"]= 30.83926,["locked"]= true,["txtX"]=451.95,["txtY"]=-987.230,["txtZ"]=31.6895},
[22] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 462.504, ["y"]= -1001.92,["z"]= 24.9149,["locked"]= true,["txtX"]=999999,["txtY"]=99999999,["txtZ"]=9999999},
}
local firstLoad = false
function DrawText3d(x,y,z, text)
local onScreen,_x,_y=World3dToScreen2d(x,y,z)
local px,py,pz=table.unpack(GetGameplayCamCoords())
if onScreen then
SetTextScale(0.2, 0.2)
SetTextFont(0)
SetTextProportional(1)
SetTextColour(255, 255, 255, 255)
SetTextDropshadow(0, 0, 0, 0, 55)
SetTextEdge(2, 0, 0, 0, 150)
SetTextDropShadow()
SetTextOutline()
SetTextEntry("STRING")
SetTextCentre(1)
AddTextComponentString(text)
SetDrawOrigin(x,y,z, 0)
DrawText(0.0, 0.0)
ClearDrawOrigin()
end
end
Citizen.CreateThread(function()
while firstLoad == false do
TriggerServerEvent('door:load')
Citizen.Wait(1000)
end
end)
RegisterNetEvent('door:statusSend')
AddEventHandler('door:statusSend', function(i, status)
doorList[i]["locked"]=status
local closeDoor = GetClosestObjectOfType(doorList[i]["x"], doorList[i]["y"], doorList[i]["z"], 1.0, hash, false, false, false)
locked, heading = GetStateOfClosestDoorOfType(hash, doorList[i]["x"], doorList[i]["y"], doorList[i]["z"], locked, heading)
if heading < -0.01 or heading > 0.01 then
syncFail = true
else
syncFail = false
end
if doorList[i]["locked"] == true and syncFail == true then
FreezeEntityPosition(closeDoor, false)
else
FreezeEntityPosition(closeDoor, doorList[i]["locked"])
end
end)
RegisterNetEvent('door:loadSend')
AddEventHandler('door:loadSend', function(doorL)
for i,v in pairs(doorL) do
doorList[i]["locked"]=v.freeze
local closeDoor = GetClosestObjectOfType(doorList[i]["x"], doorList[i]["y"], doorList[i]["z"], 1.0, hash, false, false, false)
locked, heading = GetStateOfClosestDoorOfType(hash, doorList[i]["x"], doorList[i]["y"], doorList[i]["z"], locked, heading)
if heading < -0.01 or heading > 0.01 then
syncFail = true
else
syncFail = false
end
if doorList[i]["locked"] == true and syncFail == true then
FreezeEntityPosition(closeDoor, false)
else
FreezeEntityPosition(closeDoor, doorList[i]["locked"])
end
end
firstLoad = true
end)
Citizen.CreateThread(function()
while true do
for i = 1, #doorList do
local playerCoords = GetEntityCoords( GetPlayerPed(-1) )
if doorList[i]["ishash"] == 0 then
hash = GetHashKey(doorList[i]["objName"])
else
hash = doorList[i]["objName"]
end
local closeDoor = GetClosestObjectOfType(doorList[i]["x"], doorList[i]["y"], doorList[i]["z"], 1.0, hash, false, false, false)
--SetEntityMaxHealth(closeDoor, 1000)
local objectCoordsDraw = GetEntityCoords( closeDoor )
local playerDistance = GetDistanceBetweenCoords(playerCoords.x, playerCoords.y, playerCoords.z, doorList[i]["x"], doorList[i]["y"], doorList[i]["z"], true)
locked, heading = GetStateOfClosestDoorOfType(hash, doorList[i]["x"], doorList[i]["y"], doorList[i]["z"], locked, heading)
if(playerDistance < 1.15) then
SetEntityHealth(closeDoor, 1000)
ClearEntityLastDamageEntity(closeDoor)
SetEntityCanBeDamaged(closeDoor, false)
if doorList[i]["locked"] == true then
DrawText3d(doorList[i]["txtX"], doorList[i]["txtY"], doorList[i]["txtZ"], "~b~Door ~r~Locked")
else
DrawText3d(doorList[i]["txtX"], doorList[i]["txtY"], doorList[i]["txtZ"], "~b~Door ~g~Is Unlocked")
end
if IsControlJustPressed(table.unpack(LockHotkey)) then
if doorList[i]["locked"] == true then
--FreezeEntityPosition(closeDoor, false)
if(i==10 or i==11) then
TriggerServerEvent('door:status', 10, false)
TriggerServerEvent('door:status', 11, false)
elseif(i==14 or i==15) then
TriggerServerEvent('door:status', 14, false)
TriggerServerEvent('door:status', 15, false)
elseif(i==12 or i==13) then
TriggerServerEvent('door:status', 12, false)
TriggerServerEvent('door:status', 13, false)
elseif(i==9 or i==21) then
TriggerServerEvent('door:status', 9, false)
TriggerServerEvent('door:status', 21, false)
else
TriggerServerEvent('door:status', i, false)
end
else
--FreezeEntityPosition(closeDoor, true)
if(i==10 or i==11) then
TriggerServerEvent('door:status', 10, true)
TriggerServerEvent('door:status', 11, true)
elseif(i==14 or i==15) then
TriggerServerEvent('door:status', 14, true)
TriggerServerEvent('door:status', 15, true)
elseif(i==12 or i==13) then
TriggerServerEvent('door:status', 12, true)
TriggerServerEvent('door:status', 13, true)
elseif(i==9 or i==21) then
TriggerServerEvent('door:status', 9, true)
TriggerServerEvent('door:status', 21, true)
else
TriggerServerEvent('door:status', i, true)
end
end
end
if heading < -0.01 or heading > 0.01 then
syncFail = true
else
syncFail = false
end
if firstLoad == true then
if doorList[i]["locked"] == true and syncFail == true then
FreezeEntityPosition(closeDoor, false)
else
FreezeEntityPosition(closeDoor, doorList[i]["locked"])
end
end
else
if heading < -0.01 or heading > 0.01 then
syncFail = true
else
syncFail = false
end
if doorList[i]["locked"] == true and syncFail == true then
FreezeEntityPosition(closeDoor, false)
else
FreezeEntityPosition(closeDoor, doorList[i]["locked"])
end
end
end
Citizen.Wait(0)
end
end)
Nice work Xander
vRP community love u Xander ! and for you itemdrops to !
On my server after reboot all door are close? Any idea ?
@XanderWP Hi there, first thank you for your scrip that’s an awesome idea !!
I’m trying to add other doors so i have it door name but i don’t know how to find exact coord can you help me about this point ? Use a tool or idk ?
Modules save doors state in array, not in database. I think that no reason to save doors state after reboot, if realy
Suffice it to specify approximate coordinates. Use the function to find the nearest object and not the coordinate object)
Thank you man! I realy forgot some Russian words in code (at first all users text was into Russian for my server). And about vrpex, thx too
is as follows, then everything works fine in VRP, you need to get the ‘Genrp’ code just below the XXander download file and replace the client and server.lua from the original ‘’ downloaded ‘’ files after you replace it, you should change the shortcut key that is at number 4 that is located on the local client.lua/ LockHotkey = {0,54}’ '0.54 is the letter ‘’ E ‘’, but the original comes with another key.
Once you have done this, you need to change the permissions that are on the server.lua
change the permissions for the name of the police command, ex …
[1] = {freeze = true, key = “LSPD Key”, permission = “Sargent police”, name = “Sargent police”}
Sorry, my English is bad, I’m Brazilian.
Brasil **********
Hi guys i hope that you can help put a bit here. I now tried for a few hours to add more doors, the pd in shady shores and the pd in north. But i cant seam to get them to work. I use CodeWalker do get the Name off the doors, and the cords, and i change the number to 23 foreksamble cause this is the next in row. But nothing. Anybody have an guide ore tell what i am doing wrong here. thanks
Im wondering how i add it to because my police captains group is Police Captain what would i do for the permissions in vrp_doorcontrol
Is it poseble to add more doors in other places like “Michaels house, Franklings house and The Lost MC” If so, how do i add and find their “cords”
Awesome script tho!
how did you translate to English bud sorry im still new to this
and i use dunkos 6.6 zap hosted server
server.lua (3.1 KB)
I take no credit at all for this script, this is all the work of @XanderWP . Literally all I did was change the language to English and updated the perm for the captain’s office so that it is unlockable for people that use Dunko’s 6.6 VRP
@county_ofblaine just replace the server.lua file with this if you like or use it to guide yourself through editing what you have
Added Sandy & Paleto PD and Michael’s mansion
server.lua
[1] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[2] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[3] = {freeze = true, key = "Captain Key", permission="captain.key", name = "Captain room"},
[4] = {freeze = true, key = "LSPD key", permission="police.key", name = "LSPD"},
[5] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[6] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[7] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[8] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[9] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[10] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[11] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[12] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[13] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[14] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[15] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[16] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[17] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[18] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[19] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[20] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[21] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[22] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[23] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[24] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[25] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[26] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[27] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[28] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[29] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[30] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[31] = {freeze = true, key = "Mansion1", permission="police.key", name = "Mansion 1"},
[32] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[33] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[34] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[35] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[36] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[37] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[38] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[39] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[40] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[41] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[42] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
[43] = {freeze = true, key = "LSPD Key", permission="police.key", name = "LSPD"},
Client
-- Mission Row To locker room & roof
[1] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_gendoor004", ["x"]= 449.69815063477, ["y"]= -986.46911621094,["z"]= 30.689594268799,["locked"]= true,["txtX"]=450.104,["txtY"]=-986.388,["txtZ"]=31.739},
-- Mission Row Armory
[2] = { ["ishash"] = 0, ["objName"] = "v_ilev_arm_secdoor", ["x"]= 452.61877441406, ["y"]= -982.7021484375,["z"]= 30.689598083496,["locked"]= true,["txtX"]=453.079,["txtY"]=-982.600,["txtZ"]=31.739},
-- Mission Row Captain Office
[3] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_gendoor002", ["x"]= 447.23818969727, ["y"]= -980.63006591797,["z"]= 30.689598083496,["locked"]= true,["txtX"]=447.200,["txtY"]=-980.010,["txtZ"]=31.739},
-- Mission Row To downstairs right
[4] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_gendoor005", ["x"]= 443.97, ["y"]= -989.033,["z"]= 30.6896,["locked"]= true,["txtX"]=444.020,["txtY"]=-989.445,["txtZ"]=31.739},
-- Mission Row To downstairs left
[5] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_gendoor005", ["x"]= 445.37, ["y"]= -989.705,["z"]= 30.6896,["locked"]= true,["txtX"]=445.350,["txtY"]=-989.445,["txtZ"]=31.739},
-- Mission Row Main cells
[6] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 464.0, ["y"]= -992.265,["z"]= 24.9149,["locked"]= true,["txtX"]=463.465,["txtY"]=-992.664,["txtZ"]=25.064},
-- Mission Row Cell 1
[7] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 462.381, ["y"]= -993.651,["z"]= 24.9149,["locked"]= true,["txtX"]=461.806,["txtY"]=-993.308,["txtZ"]=25.064},
-- Mission Row Cell 2
[8] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 462.331, ["y"]= -998.152,["z"]= 24.9149,["locked"]= true,["txtX"]=461.806,["txtY"]=-998.800,["txtZ"]=25.064},
-- Mission Row Cell 3
[9] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 462.704, ["y"]= -1001.92,["z"]= 24.9149,["locked"]= true,["txtX"]=461.806,["txtY"]=-1002.450,["txtZ"]=25.064},
-- Mission Row Backdoor in
[10] = { ["ishash"] = 0, ["objName"] = "v_ilev_gtdoor", ["x"]= 464.126, ["y"]= -1002.78,["z"]= 24.9149,["locked"]= true,["txtX"]=464.100,["txtY"]=-1003.538,["txtZ"]=26.064},
-- Mission Row Backdoor out
[11] = { ["ishash"] = 0, ["objName"] = "v_ilev_gtdoor", ["x"]= 464.18, ["y"]= -1004.31,["z"]= 24.9152,["locked"]= true,["txtX"]=464.100,["txtY"]=-1003.538,["txtZ"]=26.064},
-- Mission Row Rooftop In
[12] = { ["ishash"] = 0, ["objName"] = "v_ilev_gtdoor02", ["x"]= 465.467, ["y"]= -983.446,["z"]= 43.6918,["locked"]= true,["txtX"]=464.361,["txtY"]=-984.050,["txtZ"]=44.834},
-- Mission Row Rooftop Out
[13] = { ["ishash"] = 0, ["objName"] = "v_ilev_gtdoor02", ["x"]= 462.979, ["y"]= -984.163,["z"]= 43.6919,["locked"]= true,["txtX"]=464.361,["txtY"]=-984.050,["txtZ"]=44.834},
--- Центральные двери в ПД
[14] = { ["ishash"] = 1, ["objName"] = 320433149, ["x"]= 434.7479, ["y"]= -982.2151,["z"]= 30.83926,["locked"]= true,["txtX"]=999999,["txtY"]=99999999,["txtZ"]=9999999},
[15] = { ["ishash"] = 1, ["objName"] = -1215222675, ["x"]= 434.7479, ["y"]= -981.6184,["z"]= 30.83926,["locked"]= true,["txtX"]=434.427,["txtY"]=-981.95184,["txtZ"]=31.710},
--- Брифинг комната
[17] = { ["ishash"] = 1, ["objName"] = -131296141, ["x"]= 443.0298, ["y"]= -992.941,["z"]= 30.8393,["locked"]= true,["txtX"]=443.0298,["txtY"]=-992.941,["txtZ"]=31.8393},
[16] = { ["ishash"] = 1, ["objName"] = -131296141, ["x"]= 443.0298, ["y"]= -993.5412,["z"]= 30.8393,["locked"]= true,["txtX"]=443.0298,["txtY"]=-993.5412,["txtZ"]=31.8393},
--- Задние двери
[19] = { ["ishash"] = 1, ["objName"] = -2023754432, ["x"]= 468.9679, ["y"]= -1014.452,["z"]= 26.53623,["locked"]= true,["txtX"]=468.9679,["txtY"]=-1014.452,["txtZ"]=27.53623},
[18] = { ["ishash"] = 1, ["objName"] = -2023754432, ["x"]= 468.3716, ["y"]= -1014.452,["z"]= 26.53623,["locked"]= true,["txtX"]=468.3716,["txtY"]=-1014.452,["txtZ"]=27.53623},
[21] = { ["ishash"] = 1, ["objName"] = 749848321, ["x"]= 461.2865, ["y"]= -985.3206,["z"]= 30.83926,["locked"]= true,["txtX"]=461.507,["txtY"]=-985.9053,["txtZ"]=31.6895},
[20] = { ["ishash"] = 1, ["objName"] = -2023754432, ["x"]= 452.6248, ["y"]= -987.3626,["z"]= 30.83926,["locked"]= true,["txtX"]=451.95,["txtY"]=-987.230,["txtZ"]=31.6895},
[22] = { ["ishash"] = 0, ["objName"] = "v_ilev_ph_cellgate", ["x"]= 462.504, ["y"]= -1001.92,["z"]= 24.9149,["locked"]= true,["txtX"]=999999,["txtY"]=99999999,["txtZ"]=9999999},
---Michale slide Gate
[23] = { ["ishash"] = 0, ["objName"] = "prop_lrggate_02_ld", ["x"]= -844.051, ["y"]= 155.9619,["z"]= 66.03221,["locked"]= true,["txtX"]=-844.051,["txtY"]=155.9619,["txtZ"]=68.03221},
---front doors
[24] = { ["ishash"] = 0, ["objName"] = "v_ilev_mm_doorm_l", ["x"]= -816.716, ["y"]= 179.098,["z"]= 72.82738,["locked"]= true,["txtX"]=-816.716,["txtY"]=179.098,["txtZ"]=72.82738},
[25] = { ["ishash"] = 0, ["objName"] = "v_ilev_mm_doorm_r", ["x"]= -816.1068, ["y"]= 177.5109,["z"]= 72.82738,["locked"]= true,["txtX"]=-816.1068,["txtY"]=177.5109,["txtZ"]=72.82738},
---garage
[26] = { ["ishash"] = 0, ["objName"] = "prop_ld_garaged_01", ["x"]= -815.2816, ["y"]= 185.975,["z"]= 72.99993,["locked"]= true,["txtX"]=-815.2816,["txtY"]=185.975,["txtZ"]=72.99993},
---BACKDOORS
[27] = { ["ishash"] = 0, ["objName"] = "prop_bh1_48_backdoor_l", ["x"]= -793.3943, ["y"]= 180.5075,["z"]= 73.04045,["locked"]= true,["txtX"]=-793.3943,["txtY"]=180.5075,["txtZ"]=73.04045},
[28] = { ["ishash"] = 0, ["objName"] = "prop_bh1_48_backdoor_r", ["x"]= -794.1853, ["y"]= 182.568,["z"]= 73.04045,["locked"]= true,["txtX"]=-794.1853,["txtY"]=182.568,["txtZ"]=73.04045},
[29] = { ["ishash"] = 0, ["objName"] = "prop_bh1_48_backdoor_l", ["x"]= -796.5657, ["y"]= 177.2214,["z"]= 73.04045,["locked"]= true,["txtX"]=-796.5657,["txtY"]=177.2214,["txtZ"]=73.04045},
[30] = { ["ishash"] = 0, ["objName"] = "prop_bh1_48_backdoor_r", ["x"]= -794.5051, ["y"]= 178.0124,["z"]= 73.04045,["locked"]= true,["txtX"]=-794.5051,["txtY"]=178.0124,["txtZ"]=73.04045},
---FRONT GATE
[31] = { ["ishash"] = 0, ["objName"] = "prop_bh1_48_gate_1", ["x"]= -848.9343, ["y"]= 179.3079,["z"]= 70.0247,["locked"]= true,["txtX"]=-848.9343,["txtY"]=179.3079,["txtZ"]=70.0247},
---BLANE PALETO PD
[32] = { ["ishash"] = 0, ["objName"] = "v_ilev_shrfdoor", ["x"]= 1855.685, ["y"]= 3683.93,["z"]= 34.59282,["locked"]= true,["txtX"]=1855.685,["txtY"]=3683.93,["txtZ"]=34.59282},
[33] = { ["ishash"] = 0, ["objName"] = "v_ilev_shrf2door", ["x"]= -442.66, ["y"]= 6015.222,["z"]= 31.86633,["locked"]= true,["txtX"]=-442.66,["txtY"]=6015.222,["txtZ"]=31.86633},
[34] = { ["ishash"] = 0, ["objName"] = "v_ilev_shrf2door", ["x"]= -444.4985, ["y"]= 6017.06,["z"]= 31.86633,["locked"]= true,["txtX"]=-444.4985,["txtY"]=6017.06,["txtZ"]=31.86633},
--Paleto Gate
[35] = { ["ishash"] = 0, ["objName"] = "prop_gate_docks_ld", ["x"]= -455.9511, ["y"]= 6030.322,["z"]= 30.32649,["locked"]= true,["txtX"]=-455.9511,["txtY"]=6030.322,["txtZ"]=32.32649},
---Sandy Gates
[36] = { ["ishash"] = 0, ["objName"] = "prop_gate_docks_ld", ["x"]= 1859.391, ["y"]= 3672.711,["z"]= 32.88976,["locked"]= true,["txtX"]=1859.391,["txtY"]=3672.711,["txtZ"]=32.88976},
[37] = { ["ishash"] = 0, ["objName"] = "prop_gate_docks_ld", ["x"]= 1848.789, ["y"]= 3666.619,["z"]= 32.99977,["locked"]= true,["txtX"]=1848.789,["txtY"]=3666.619,["txtZ"]=32.99977},
[38] = { ["ishash"] = 0, ["objName"] = "prop_gate_docks_ld", ["x"]= 1857.352, ["y"]= 3720.851,["z"]= 31.99996,["locked"]= true,["txtX"]=1857.352,["txtY"]=3720.851,["txtZ"]=31.99996},
[39] = { ["ishash"] = 0, ["objName"] = "prop_gate_docks_ld", ["x"]= 1866.792, ["y"]= 3677.049,["z"]= 32.68667,["locked"]= true,["txtX"]=1866.792,["txtY"]=3677.049,["txtZ"]=32.68667},
[40] = { ["ishash"] = 0, ["objName"] = "prop_gate_docks_ld", ["x"]= 1878.89, ["y"]= 3685.57,["z"]= 32.35416,["locked"]= true,["txtX"]=1878.89,["txtY"]=3685.57,["txtZ"]=32.35416},
---mission row
[41] = { ["ishash"] = 0, ["objName"] = "prop_gate_docks_ld", ["x"]= 415.19, ["y"]= -1014.893,["z"]= 28.21,["locked"]= true,["txtX"]=415.19,["txtY"]=-1014.893,["txtZ"]=30.21},
[42] = { ["ishash"] = 0, ["objName"] = "prop_gate_docks_ld", ["x"]= 415.86, ["y"]= -1027.04,["z"]= 28.15,["locked"]= true,["txtX"]=415.86,["txtY"]=-1027.04,["txtZ"]=30.15},
[43] = { ["ishash"] = 0, ["objName"] = "prop_fnclink_09gate1", ["x"]= 422.67, ["y"]= -999.96,["z"]= 31.00,["locked"]= true,["txtX"]=422.67,["txtY"]=-999.96,["txtZ"]=31.00,
Someone else have a huge fps drop with this script? Like, without any resources only this my fps drop from 60 to like 30 ~ 35 @XanderWPcan u give me a light to fix this?