Identitet og rettigheder
Slå op hvem en spiller er, og hvad vedkommende må
va_policemdtSe produktet →
Server-exports. Kaldes fra server_script.
Det er de her fem, du skal bruge til at gate din egen kode. Uden dem er alt andet i API'et åbent for enhver spiller, der kan udløse din event.
IsPolice
Har spilleren det konfigurerede politijob?
srcnumberpåkrævetSpillerens server id.
if exports.va_policemdt:IsPolice(src) then
-- åbn våbenskabet
endBrug den til ting ude i spilverdenen: en dør på stationen, et våbenskab, en patruljevogn. Til alt der repræsenterer MDT-arbejde, brug IsMdtAuthed.
IsMdtAuthed
Har spilleren gennemført MDT-login i denne session?
srcnumberpåkrævetSpillerens server id.
RegisterNetEvent('mitscript:opretRapport', function(data)
local src = source
if not exports.va_policemdt:IsMdtAuthed(src) then return end
-- …
end)Tabletten beder om adgangskode ud over jobbet. En betjent på vagt, der aldrig har åbnet terminalen, giver true fra IsPolice men false herfra.
HasMdtPermission
Server-autoritativt tjek af én rettighed.
srcnumberpåkrævetSpillerens server id.
permissionIdstringpåkrævetRettighedens id. Se listen nedenfor.
RegisterCommand('udbetalloen', function(source)
if not exports.va_policemdt:HasMdtPermission(source, 'oekonomi') then
return TriggerClientEvent('chat:addMessage', source, {
args = { 'MDT', 'Du har ikke adgang til dette.' },
})
end
-- …
end, false)Rettigheds-id'er
| Id | Dækker |
|---|---|
mdt | Adgang til selve terminalen |
strafferegister | Borgeropslag og straffeattester |
rapportarkiv | Rapporter og sagsakter |
efterlysninger | Udstede og administrere efterlysninger |
vaabenkammer | Våbenregister |
bevislager | Beviser |
beslaglagte | Beslaglagte køretøjer |
personale | Personaleadministration |
oekonomi | Økonomi og bødetilsyn |
adgangsstyring | Rettighedsstyring og straffelov |
De effektive rettigheder er rangmatricen plus tildelinger fra særlige roller plus personlige undtagelser — hvor en personlig fratagelse slår en rolletildeling. Du behøver ikke regne på det; dette export giver svaret.
GetMdtPermissions
Alle rettigheder spilleren reelt har.
srcnumberpåkrævetSpillerens server id.
returnstable{ [permissionId] = true }. Tom tabel for spillere uden politijobbet.
local perms = exports.va_policemdt:GetMdtPermissions(src)
if perms.personale and perms.oekonomi then
-- ledelsesværktøjer
endGetOfficer
Betjentkortet for en spiller.
srcnumberpåkrævetSpillerens server id.
returnstable | nilnil når spilleren er offline eller ikke har politijobbet.
local officer = exports.va_policemdt:GetOfficer(src)
if not officer then return end
print(('%s %s (%s)'):format(officer.rank, officer.name, officer.callsign))Tjek altid for nil. Spilleren kan være hoppet af serveren, eller være fyret fra politiet, mellem at din event blev udløst og du kalder her.
GetOfficer returnerer grade, mens tablettens interne NUI-payloads bruger rankIndex om det samme tal. Byg mod formen her.