tweak: remove character functions on server

This commit is contained in:
Andyyy7666
2023-09-24 04:45:37 +02:00
parent 82bc4c6d6b
commit 7a97816570
2 changed files with 22 additions and 18 deletions

View File

@@ -5,24 +5,14 @@ RegisterNetEvent("ND:updateMoney", function(cash, bank)
NDCore.player.bank = bank
end)
local function removeCharacterFunctions(character)
local newData = {}
for k, v in pairs(character) do
if type(v) ~= "function" then
newData[k] = v
end
end
return newData
end
-- Sets main character.
RegisterNetEvent("ND:characterLoaded", function(character)
NDCore.player = removeCharacterFunctions(character)
NDCore.player = character
end)
-- Update main character info.
RegisterNetEvent("ND:updateCharacter", function(character)
NDCore.player = removeCharacterFunctions(character)
NDCore.player = character
end)
-- Updates last lcoation.
@@ -30,3 +20,7 @@ RegisterNetEvent("ND:updateLastLocation", function(location)
if not NDCore.player then return end
NDCore.player.lastLocation = location
end)
RegisterNetEvent("ND:revivePlayer", function()
NDCore.revivePlayer(true)
end)

View File

@@ -1,3 +1,13 @@
local function removeCharacterFunctions(character)
local newData = {}
for k, v in pairs(character) do
if type(v) ~= "function" then
newData[k] = v
end
end
return newData
end
local function createCharacterTable(info)
local playerInfo = PlayersInfo[info.source] or {}
@@ -102,7 +112,7 @@ local function createCharacterTable(info)
TriggerEvent("ND:moneyChange", self.source, key, value, "set", reason)
end
end
self.triggerEvent("ND:updateCharacter", self)
self.triggerEvent("ND:updateCharacter", removeCharacterFunctions(self))
end
---@param key string|table
@@ -116,7 +126,7 @@ local function createCharacterTable(info)
else
self.metadata[key] = value
end
self.triggerEvent("ND:updateCharacter", self)
self.triggerEvent("ND:updateCharacter", removeCharacterFunctions(self))
return self.metadata
end
@@ -197,7 +207,7 @@ local function createCharacterTable(info)
else
self.metadata.licenses = {license}
end
self.triggerEvent("ND:updateCharacter", self)
self.triggerEvent("ND:updateCharacter", removeCharacterFunctions(self))
end
function self.getLicense(identifier)
@@ -272,7 +282,7 @@ local function createCharacterTable(info)
end
NDCore.players[self.source] = self
TriggerEvent("ND:characterLoaded", self)
self.triggerEvent("ND:characterLoaded", self)
self.triggerEvent("ND:characterLoaded", removeCharacterFunctions(self))
end
---@param name string
@@ -294,7 +304,7 @@ local function createCharacterTable(info)
rank = groupRank,
isJob = isJob
}
self.triggerEvent("ND:updateCharacter", self)
self.triggerEvent("ND:updateCharacter", removeCharacterFunctions(self))
lib.addPrincipal(self.source, ("group.%s"):format(name))
return self.groups[name]
end
@@ -309,7 +319,7 @@ local function createCharacterTable(info)
function self.removeGroup(name)
local group = self.groups[name]
self.groups[name] = nil
self.triggerEvent("ND:updateCharacter", self)
self.triggerEvent("ND:updateCharacter", removeCharacterFunctions(self))
lib.removePrincipal(self.source, ("group.%s"):format(name))
return group
end