feat: vehicle metadata

This commit is contained in:
Andyyy7666
2023-10-29 11:20:33 +01:00
parent 8aee90a10f
commit cebe404d42
2 changed files with 16 additions and 2 deletions

View File

@@ -52,7 +52,8 @@ local function getVehicleDatabaseInfo(vehicle)
stored = stored,
impounded = impounded,
stolen = vehicle.stolen == 1,
available = not impounded and stored
available = not impounded and stored,
metadata = json.decode(vehicle.metadata) or {}
}
end
@@ -79,7 +80,7 @@ function NDCore.getVehicle(entity)
properties = state.props,
locked = state.locked,
hotwired = state.hotwired,
metadata = state.metadata,
metadata = state.metadata or {},
netId = NetworkGetNetworkIdFromEntity(entity)
}
@@ -145,6 +146,18 @@ function NDCore.getVehicle(entity)
return true
end
function self.setMetadata(key, value)
self.metadata[key] = value
if DoesEntityExist(entity) then
local state = Entity(self.entity).state
local metadata = state.metadata
metadata[key] = value
state.metadata = metadata
end
if not self.id or not self.owner then return end
MySQL.query("UPDATE nd_vehicles SET metadata = ? WHERE id = ?", {json.encode(self.metadata), self.id})
end
if self.id and self.owner then
spawnedPlayerVehicles[self.id] = self
end