diff --git a/[core]/es_extended/server/classes/player.lua b/[core]/es_extended/server/classes/player.lua index 8d389d7f..921db13b 100644 --- a/[core]/es_extended/server/classes/player.lua +++ b/[core]/es_extended/server/classes/player.lua @@ -77,13 +77,23 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, end ---@param vector boolean - ---@return vector3 | table - function self.getCoords(vector) - local ped = _GetPlayerPed(self.source) - local coordinates = _GetEntityCoords(ped) - local heading = _GetEntityHeading(ped) + ---@param heading boolean + ---@return vector3 | vector4 | table + function self.getCoords(vector, heading) + local ped = _GetPlayerPed(self.source) + local coords = _GetEntityCoords(ped) - return vector and vector4(coordinates.xyz, heading) or { x = coordinates.x, y = coordinates.y, z = coordinates.z, heading = heading } + local coordinates + if vector then + coordinates = (heading and vector4(coords.xyz, _GetEntityHeading(ped)) or coords) + else + coordinates = { x = coords.x, y = coords.y, z = coords.z } + if heading then + coordinates.heading = _GetEntityHeading(ped) + end + end + + return coordinates end ---@param reason string diff --git a/[core]/es_extended/server/functions.lua b/[core]/es_extended/server/functions.lua index dcf313d3..4ed4b39a 100644 --- a/[core]/es_extended/server/functions.lua +++ b/[core]/es_extended/server/functions.lua @@ -199,7 +199,7 @@ function Core.SavePlayer(xPlayer, cb) xPlayer.job.name, xPlayer.job.grade, xPlayer.group, - json.encode(xPlayer.getCoords()), + json.encode(xPlayer.getCoords(false, true)), json.encode(xPlayer.getInventory(true)), json.encode(xPlayer.getLoadout(true)), json.encode(xPlayer.getMeta()),