Browse docs
Server: Restraints
This page documents the supported public integration calls. Client values are never authoritative for police permissions, review decisions, evidence, offences, or billing.
Server Exports
Restraints
These are compatibility forwards to the shared sky_jobs_base interaction system. Police jobs from
Config.Jobs are registered automatically. For any other job resource, call
registerInteractionJobs from a server script before using these exports. The acting player's job,
duty policy, target distance/state, and configured item requirements are validated server-side;
calling a Police Job export does not bypass them.
See the Sky Jobs Base server exports for registration, permissions, and the preferred shared exports.
Police keeps compatibility forwards for cuffs, zipties, and escort. Leg restraints and head bags are owned exclusively by Jobs Base; call the corresponding sky_jobs_base exports directly.
cuffPlayer(sourceId, targetId, cuffType?, options?)
- Purpose: Applies cuffs or zipties to a target player from another resource.
- Arguments:
sourceId(number): The server ID of the acting player.targetId(number): The server ID of the target player.cuffType(string?):"cuffs"(default) or"zipties".options(table?):ignoreItemCheck(boolean?) — skip the restraint item requirement and consumption.allowSelf(boolean?) — allowsourceId == targetId.
- Returns:
boolean, string?—trueon success, otherwisefalseand a reason key.
local success, reason = exports["sky_policejob"]:cuffPlayer(sourceId, targetId, "cuffs", {
ignoreItemCheck = false,
allowSelf = false
})
uncuffPlayer(sourceId, targetId, options?)
- Purpose: Removes cuffs or zipties from a target player.
- Returns:
boolean, string?.
local success, reason = exports["sky_policejob"]:uncuffPlayer(sourceId, targetId)
cutZipties(sourceId, targetId, options?)
- Purpose: Cuts zipties from a target player.
- Returns:
boolean, string?.
local success, reason = exports["sky_policejob"]:cutZipties(sourceId, targetId)
isPlayerCuffed(targetId)
- Purpose: Reports whether the target player is currently restrained.
- Returns:
boolean.
local cuffed = exports["sky_policejob"]:isPlayerCuffed(targetId)