From ee014b25788671761c7f8c03eb645ffbce4c8831 Mon Sep 17 00:00:00 2001 From: Vortrex <3858226+VortrexFTW@users.noreply.github.com> Date: Tue, 31 May 2022 08:35:40 -0500 Subject: [PATCH] Start using IDs instead of element objects --- scripts/client/utilities.js | 6 ------ scripts/server/native/connected.js | 6 ------ scripts/server/native/ragemp.js | 6 ------ scripts/server/vehicle.js | 15 +++++++++++++++ 4 files changed, 15 insertions(+), 18 deletions(-) diff --git a/scripts/client/utilities.js b/scripts/client/utilities.js index 876df66a..eb8185c8 100644 --- a/scripts/client/utilities.js +++ b/scripts/client/utilities.js @@ -163,12 +163,6 @@ function clearLocalPlayerWeapons(clearData) { // =========================================================================== -function getClosestVehicle(pos) { - return getElementsByType(ELEMENT_VEHICLE).reduce((i, j) => (i.position.distance(pos) < j.position.distance(pos)) ? i : j); -} - -// =========================================================================== - function setLocalPlayerPosition(position) { logToConsole(LOG_DEBUG, `[VRR.Utilities] Setting position to ${position.x}, ${position.y}, ${position.z}`); if(typeof localPlayer.velocity != "undefined") { diff --git a/scripts/server/native/connected.js b/scripts/server/native/connected.js index 176e9888..34ef4254 100644 --- a/scripts/server/native/connected.js +++ b/scripts/server/native/connected.js @@ -1086,12 +1086,6 @@ function getVehiclesInRange(position, range) { // =========================================================================== -function getClosestVehicle(position) { - return getClosestElementByType(ELEMENT_VEHICLE, position); -} - -// =========================================================================== - function getClosestElementByType(elementType, position) { return getElementsByType(elementType).reduce((i, j) => (getDistance(position, getElementPosition(i)) <= getDistance(position, getElementPosition(j))) ? i : j); } diff --git a/scripts/server/native/ragemp.js b/scripts/server/native/ragemp.js index 9593c6f0..3b55db38 100644 --- a/scripts/server/native/ragemp.js +++ b/scripts/server/native/ragemp.js @@ -963,12 +963,6 @@ function getVehiclesInRange(position, range) { // =========================================================================== -function getClosestVehicle(position) { - return getClosestElementByType(ELEMENT_VEHICLE, position); -} - -// =========================================================================== - function getClosestElementByType(elementType, position) { return getElementsByType(elementType).reduce((i, j) => (getDistance(position, getElementPosition(i)) <= getDistance(position, getElementPosition(j))) ? i : j); } diff --git a/scripts/server/vehicle.js b/scripts/server/vehicle.js index 5ed9252b..2b232073 100644 --- a/scripts/server/vehicle.js +++ b/scripts/server/vehicle.js @@ -1695,4 +1695,19 @@ function getVehicleColourInfoString(colour, isRGBA) { } } +// =========================================================================== + +function getClosestVehicle(position, interior, dimension) { + let closest = 0; + let vehicles = getServerData().vehicles; + + for(let i in vehicles) { + if(getDistance(getVehiclePosition(vehicles[i].vehicle), position) < getDistance(getVehiclePosition(vehicles[closest].vehicle), position) && getVehicleDimension(vehicles[i].vehicle) == dimension && getVehicleInterior(vehicles[i].vehicle) == interior) { + closest = i; + } + } + + return closest; +} + // =========================================================================== \ No newline at end of file