Server Character
Import
-- Example name of admin group, if you do not have an admin group you can use a not used group name.
local name_of_admin_group = 'admin'
---@type NssLibsCharacterApi
character_api = exports.nss_libs:getCharacterApi(GetCurrentResourceName(), name_of_admin_group)Methods
addMoney(_source, amount)
addMoney(_source, amount)_source(integer) - The server player id of a joined player.amount(float) - The amount of money to add.
Returns nothing.
local example_player_id = 99 -- The server player id of a joined player
character_api:addMoney(example_player_id, 1000)getCharacterByName(character_name)
getCharacterByName(character_name)character_name(string) - The full character name to search for.
Important: This method loads the data from the database and not from the VORP (or other framework) cache. In case of VORP a change of group or job will be not saved at the moment the job or group is changed.
Returns an NssLibsCharacterItem instance or nil if not found.
local full_name = 'John Doe'
local character = character_api:getCharacterByName(full_name)
if character then
print('Character found: ' .. tostring(character.char_id) .. ' :)')
else
print('Character ' .. tostring(full_name) .. ' found :(')
endgetCharacterByCharId(char_id)
getCharacterByCharId(char_id)char_id(integer) - The character id to search for.
Important: This method loads the data from the database and not from the VORP (or other framework) cache. In case of VORP a change of group or job will be not saved at the moment the job or group is changed.
Returns an NssLibsCharacterItem instance or nil if not found.
local char_id = 1
local character = character_api:getCharacterByCharId(char_id)
if character then
print('Character found: ' .. tostring(character.full_name) .. ' :)')
else
print('Character ' .. tostring(char_id) .. ' found :(')
endgetCharData(_source)
getCharData(_source)_source(integer) - The server player id of a joined player.
Returns an NssLibsCharacterItem instance or nil if not found.
local example_player_id = 99 -- The server player id of a joined player
local character = character_api:getCharData(example_player_id)
if character then
print('Character found: ' .. tostring(character.full_name) .. ' :)')
else
print('Character ' .. tostring(example_player_id) .. ' found :(')
endgetDiscordId(_source)
getDiscordId(_source)_source(integer) - The server player id of a joined player.
Returns a string with the discord id.
local example_player_id = 99 -- The server player id of a joined player
local discord_id = character_api:getDiscordId(example_player_id)
print('Discord id: ' .. discord_id)getDiscordProfileUrl(_source)
getDiscordProfileUrl(_source)_source(integer) - The server player id of a joined player.
Returns a string with the discord profile url.
local example_player_id = 99 -- The server player id of a joined player
local discord_profile_url = character_api:getDiscordProfileUrl(example_player_id)
print('Discord profile url: ' .. discord_profile_url)getFivmId(_source)
getFivmId(_source)_source(integer) - The server player id of a joined player.
Returns a string with the fivem id.
local example_player_id = 99 -- The server player id of a joined player
local fivem_id = character_api:getFivmId(example_player_id)
print('Fivem id: ' .. fivem_id)getIdentifiers(_source)
getIdentifiers(_source)_source(integer) - The server player id of a joined player.
Returns an NssLibsCharacterIdentifiers instance.
local example_player_id = 99 -- The server player id of a joined player
local identifiers = character_api:getIdentifiers(example_player_id)
print('Steam id: ' .. identifiers.steam)
print('Discord id: ' .. identifiers.discord)getIp(_source)
getIp(_source)_source(integer) - The server player id of a joined player.
Returns a string with the ip.
local example_player_id = 99 -- The server player id of a joined player
local ip = character_api:getIp(example_player_id)
print('Ip: ' .. ip)getRedmCharacterName(_source)
getRedmCharacterName(_source)_source(integer) - The server player id of a joined player.
Returns a string with the redm character name.
local example_player_id = 99 -- The server player id of a joined player
local redm_character_name = character_api:getRedmCharacterName(example_player_id)
print('Redm character name: ' .. redm_character_name)getSteamId(_source)
getSteamId(_source)_source(integer) - The server player id of a joined player.
Returns a string with the steam id.
local example_player_id = 99 -- The server player id of a joined player
local steam_id = character_api:getSteamId(example_player_id)
print('Steam id: ' .. steam_id)getSteamProfileUrl(_source)
getSteamProfileUrl(_source)_source(integer) - The server player id of a joined player.
Returns a string with the steam profile url.
local example_player_id = 99 -- The server player id of a joined player
local steam_profile_url = character_api:getSteamProfileUrl(example_player_id)
print('Steam profile url: ' .. steam_profile_url)hasMoney(_source, amount)
hasMoney(_source, amount)_source(integer) - The server player id of a joined player.amount(float) - The amount of money to check for.
Returns a boolean if the player has the amount of money.
local example_player_id = 99 -- The server player id of a joined player
if character_api:hasMoney(example_player_id, 1.99) then
print('Player has at least 1.99 money')
endsubMoney(_source, amount)
subMoney(_source, amount)_source(integer) - The server player id of a joined player.amount(float) - The amount of money to remove.
Returns nothing.
local example_player_id = 99 -- The server player id of a joined player
character_api:subMoney(example_player_id, 999)addGold(_source, amount)
addGold(_source, amount)_source(integer) - The server player id of a joined player.amount(float) - The amount of gold to add.
Returns nothing.
local example_player_id = 99 -- The server player id of a joined player
character_api:addGold(example_player_id, 1000.29)hasGold(_source, amount)
hasGold(_source, amount)_source(integer) - The server player id of a joined player.amount(float) - The amount of gold to check for.
Returns a boolean if the player has the amount of gold.
local example_player_id = 99 -- The server player id of a joined player
if character_api:hasGold(example_player_id, 1.99) then
print('Player has at least 1.99 gold')
endsubGold(_source, amount)
subGold(_source, amount)_source(integer) - The server player id of a joined player.amount(float) - The amount of gold to remove.
Returns nothing.
local example_player_id = 99 -- The server player id of a joined player
character_api:subGold(example_player_id, 999.99)onGroupChange(callback)
onGroupChange(callback)Since version 0.33.0.
callback(function) - The function to call when the group changes.source(integer) - The server player id of a joined player.char_id(string) - The character id of the player.new_group(string) - The new group of the player.
Returns NssLibsSharedHelperEventHandlerApi.
local event_handler = character_api:onGroupChange(function(source, char_id, new_group)
print('Group changed for ' .. char_id .. ' to ' .. new_group)
end)onJobChange(callback)
onJobChange(callback)Since version 0.33.0.
callback(function) - The function to call when the job changes.source(integer) - The server player id of a joined player.char_id(string) - The character id of the player.new_job(string) - The new job of the player.
Returns NssLibsSharedHelperEventHandlerApi.
local event_handler = character_api:onJobChange(function(source, char_id, new_job)
print('Job changed for ' .. char_id .. ' to ' .. new_job)
end)onJobGradeChange(callback)
onJobGradeChange(callback)Since version 0.33.0.
callback(function) - The function to call when the job grade changes.source(integer) - The server player id of a joined player.char_id(string) - The character id of the player.new_job_grade(integer) - The new job grade of the player.
Returns NssLibsSharedHelperEventHandlerApi.
local event_handler = character_api:onJobGradeChange(function(source, char_id, new_job_grade)
print('Job grade changed for ' .. char_id .. ' to ' .. new_job_grade)
end)getSteamIdOfChar(char_id)
getSteamIdOfChar(char_id)Since version 0.33.0.
char_id(integer) - The character id to search for.
Returns a string with the steam id or nil if not found.
local char_id = 205
local steam_id = character_api:getSteamIdOfChar(char_id)
if steam_id then
print('Steam id: ' .. steam_id)
else
print('Steam id not found')
endgetSourceOfChar(char_id)
getSourceOfChar(char_id)Since version 0.33.0.
char_id(integer) - The character id to search for.
Returns a number with server player id or nil if not found.
local char_id = 205
local server_player_id = character_api:getSourceOfChar(char_id)
if server_player_id then
print('Server player id: ' .. server_player_id)
else
print('Server player id not found')
endObjects
NssLibsCharacterItem
NssLibsCharacterItemProperties
char_id(integer)group(string)job(string)job_grade(integer)firstname(string)lastname(string)full_name(string)money(float)is_admin(boolean)server_player_id(integer, nil)
Methods
hasOneOfTheJobs(jobs)
jobs(NssLibsCharacterJobList|NssLibsCharacterJobName[]) - The job list or job names to check for. The job names are case-sensitive.
Returns a boolean if the character has one of the jobs.
-- Simple job list
local jobs = { 'police', 'ambulance' }
if char_data:hasOneOfTheJobs(jobs) then
print('Character has one of the jobs')
end--- Job list with job grades
local jobs = {
["police"] = 3,
["ambulance"] = 2
}
if char_data:hasOneOfTheJobs(jobs) then
print('Character has one of the jobs with the correct grade')
endhasJob(job)
job(NssLibsCharacterJobName) - The job name to check for. The job name is case-sensitive.
Returns a boolean if the character has the job.
local job = 'police'
if char_data:hasJob(job) then
print('Character has the job')
endhasJobGrade(grade)
grade(integer) - The job grade to check for.
Returns a boolean if the character has the job grade.
local grade = 3
if char_data:hasJobGrade(grade) then
print('Character has the job grade')
endisEmployed()
Returns a boolean if the character has a job.
if char_data:isEmployed() then
print('Character has a job')
endNssLibsCharacterIdentifiers
NssLibsCharacterIdentifiersProperties
steam(string)license(string)xbl(string)live(string)discord(string)fivem(string)license2(string)ip(string)
Last updated
Was this helpful?