Когда человека арестовали и он покидает зону тюрьмы его автоматически кидает в розыск. Помогите
Могу для основы и примера дать тебе систему:
Когда определённая профа покидает определенные границы вектора - проигрывается mp3
Можешь попробовать поэкспериментировать.
V1 = Vector(-8169, 3418, -39),--пример чисел
V2 = Vector(-7738, 2747, -276),--пример чисел
hook.Add('Think','WantedZone',function()
for k,v in pairs(ents.FindInBox(v1,v2) do
if v:IsPlayer() then
if v:IsArrested() then
if v:GetNetVar('IsWanted') then return end
rp.Notify(v, NOTIFY_ERROR, 'Ты сбежал!')
v:Wanted(v, 'Побег с тюрьмы')
end
end
end
end
end
)
Может быть не самым эффективным
v1-это первый вектор v2-второй.
upd-1)Не поставил ещё один end
этот скрипт куда?
на сервер
умный ответ от умного человека. Конкретнее пожалуйста
Тебе сказали на сервер. Любая sv часть, что не понятного?
лучше использовать но ещё лучше будет использовать 1) Готовый триггер на проходах при создании карты 2) Отдельную сущность за место триггера.
local V1 = Vector(-8169, 3418, -39) --пример чисел
local V2 = Vector(-7738, 2747, -276) --пример чисел
local ents_FindInBox = ents.FindInBox
local IArrest = FindMetaTable('Player').IsArrested -- SUP
local Wanted = FindMetaTable('Player').Wanted
hook.Add('Think', 'WantedZone', function()
local e = ents_FindInBox(V1, V2)
for i = 1, #e do
local v = e[i]
if not v:IsPlayer() or not IArrest(v) then continue end
rp.Notify(v, NOTIFY_ERROR, 'Ты сбежал!')
Wanted(v, v, 'Побег с тюрьмы')
end
end)
да сори я просто третий день в этой теме и не правильно понял ответ “на сервер”, еще раз прошу прощение за мой ответ
Есть три типа файлов: client, server, shared. Клиентские файлы запускаются только на клиенте (у игроков), серверные только на сервере (у игроков закрыт к ним доступ), а shared запускается и на клиенте и на сервере (фактически то же самое, что и продублировать код и на клиенте и на сервере).
Тут чел имеет в виду то, что ты должен засунуть этот код в серверный файл (создать новый или найти существующий). Самый простой вариант это сделать - создать аддон, в который ты будешь помещать эти маленькие скриптики. Для этого создай в garrysmod/addons
папку, например, smallscripts
. Далее в ней создай такую структуру:
smallscripts/lua/autorun/server/
- для серверных скриптовsmallscripts/lua/autorun/client/
- для клиентских скриптовsmallscripts/lua/autorun/
- для shared-скриптов
Поскольку этот скрипт серверный, то закидывай его в папку server и он автоматически будет запускаться вместе с сервером
Подробнее про это все можешь почитать тут: