QBESXStandalone
Agency-Vehiclekeys V2 Экспорты & API
Универсальные ключи для автомобилей FiveM на QBCore, Qbox, ESX или полностью в standalone-режиме.
v2.0.0Платно5 Страницы

01Клиентские экспорты
| Экспорт | Описание |
|---|---|
HasKeys(plate) | Возвращает true, если у игрока есть ключ от этого номера: owner, shared или temporary. Служебные автомобили открываются по модели и здесь не учитываются. |
GetKeys() | Все ключи игрока в виде списка { plate, kind }. Значение kind: owner, shared или temp. |
ToggleLock(vehicle) | Запирает или отпирает автомобиль, на который у игрока есть ключ, с той же анимацией и проверками, что и G. Если игрок не находится в автомобиле, используется ближайший в радиусе досягаемости. |
ToggleEngine() | Запускает или останавливает двигатель автомобиля, которым управляет игрок, как U. |
OpenMenu() | Открывает связку ключей, например из радиального меню или приложения для телефона. |
CloseMenu() | Закрывает связку ключей и возвращает управление мышью игре. |
IsMenuOpen() | Возвращает true, пока связка ключей открыта. |
useLockpick() | Начинает попытку взлома замка автомобиля перед игроком или заводит автомобиль напрямую, если игрок на водительском сиденье. Предназначено для предметов ox_inventory: client = { export = 'Agency-Vehiclekeys.useLockpick' }. |
02Серверные экспорты
| Экспорт | Описание |
|---|---|
GiveKeys(source, plate, mode, hours) | Выдаёт ключ. Режим 'temp' (по умолчанию) выдаёт временный ключ, при необходимости на указанное количество часов, а 'perm' , постоянный ключ, который сохраняется. Можно указать source или identifier. |
RemoveKeys(source, plate) | Забирает выданный ключ shared или temporary. Возвращает true, если такой ключ был. |
HasKeys(source, plate) | Возвращает true, если у игрока есть ключ от номера, включая ключи от служебных автомобилей поблизости. |
SetOwner(source, plate) | Назначает игрока владельцем автомобиля с указанным номером для гаражей и магазинов на standalone-серверах. Предыдущий владелец теряет ключ. |
RemoveOwner(plate) | Удаляет владельца номера, сохранённого этим скриптом. |
GetOwner(plate) | Идентификатор владельца и источник данных: 'framework' для принадлежащих игрокам автомобилей в QBCore, Qbox или ESX, 'store' для владельцев, сохранённых этим скриптом. |
GetKeyHolders(plate) | Все остальные пользователи с ключом от машины с этим номером, в виде списка { identifier, kind, name, expires }. |
SetVehicleLocked(vehicle, locked) | Запирает или отпирает автомобиль для всех, без проверки ключа. Для скриптов, которым нужно открыть автомобиль. |
IsVehicleLocked(vehicle) | True, если автомобиль заперт. |
GetFramework() | Фреймворк, обнаруженный скриптом: qbcore, esx или standalone. |
03События
| Название | Сторона | Описание |
|---|---|---|
Agency:Keys:GiveServer | Сервер | Запрашивает временный ключ для автомобиля с указанным номером, как это делают Agency Garage и Agency Vehicleshop. Вызовите событие на клиенте, передав номер. Автомобиль должен находиться рядом с игроком или принадлежать ему. |
qb-vehiclekeys:server:AcquireVehicleKeys | Сервер | Событие выдачи ключа из qb-vehiclekeys, обработанное аналогичным образом, чтобы гаражи и магазины, созданные для qb-vehiclekeys, продолжали работать. |
vehiclekeys:client:SetOwner | Клиент | Клиентское событие, которое многие гаражи и магазины вызывают после появления автомобиля. После тех же проверок на сервере выдаёт временный ключ для автомобиля с этим номером. |
qb-vehiclekeys:client:AddKeys | Клиент | Клиентское событие qb-vehiclekeys для выдачи ключей, обработанное аналогичным образом. |
simple_carkeys:client:toggleEngine | Клиент | Вызывается на клиенте, когда двигатель запускают или глушат ключом, чтобы HUD, например Agency-Hud, мог отслеживать состояние двигателя. |
+Полезно знать
Agency-Vehiclekeys V2 предоставляет exports и поддерживает распространённые события ключей, поэтому скрипты гаражей, магазинов, работ и ограблений могут выдавать, проверять и забирать ключи.
- Выдача и проверка ключей
- GiveKeys выдаёт временный или сохранённый ключ, RemoveKeys забирает его, а HasKeys проверяет его наличие. На сервере используются source или identifier, а на клиенте проверяется сам игрок.
- Владельцы для автономных гаражей
- На автономных серверах нет таблицы фреймворка с принадлежащими игрокам автомобилями. SetOwner назначает игрока владельцем автомобиля по номерному знаку, RemoveOwner снимает это назначение, а GetOwner возвращает владельца.
- События, используемые другими скриптами
- Agency:Keys:GiveServer, qb-vehiclekeys:server:AcquireVehicleKeys, vehiclekeys:client:SetOwner и qb-vehiclekeys:client:AddKeys выдают временный ключ после одинаковых проверок: автомобиль должен находиться рядом с игроком или принадлежать ему.
?Частые вопросы
Как выдать ключ из скрипта гаража?
На сервере вызовите exports['Agency-Vehiclekeys']:GiveKeys(source, plate) после появления автомобиля или вызовите на клиенте TriggerServerEvent('Agency:Keys:GiveServer', plate). Скрипты, созданные для qb-vehiclekeys, не требуют изменений.