Useful clientside snippets

From RAGE Multiplayer Wiki

Let's build a list with usesfull code snippets here.Remember: All of those are:

Client-Side


Get closest vehicle to your player

exports.closestVehicle= closestVehicle;
function closestVehicle(radius) {
   let inRange = [];
   let target = false;
   mp.vehicles.forEach((_veh) => {
      if(!_veh.handle) return false;
      let distance = mp.game.gameplay.getDistanceBetweenCoords(_veh.position.x, _veh.position.y, _veh.position.z, mp.players.local.position.x, mp.players.local.position.y, mp.players.local.position.z, true);
      if(distance > parseFloat(radius)) return false;
      inRange.push({"remoteId": _veh.remoteId, "distance": distance});
   });
   if(inRange.length) {
      inRange.sort(function(a, b) {
      return a.distance-b.distance
   });
   target = mp.vehicles.atRemoteId(inRange[0].remoteId);
   }
   return target;
}

Return closest player to your local player position

exports.closestPlayer = closestPlayer;
function closestPlayer(radius) {
   let inRange = [];
   let target = false;
   mp.players.forEach((_player) => {
      if(_player == player) return false;
      if(!_player.handle) return false;
      let distance = mp.game.gameplay.getDistanceBetweenCoords(_player.position.x, _player.position.y, _player.position.z, mp.players.local.position.x, mp.players.local.position.y, mp.players.local.position.z, true);
      if(distance > parseFloat(radius)) return false;
      inRange.push({"remoteId": _player.remoteId, "distance": distance});
   });
   if(inRange.length) {
   inRange.sort(function(a, b) {
      return a.distance-b.distance
   });
   target = mp.players.atRemoteId(inRange[0].remoteId);
}
   return target;
}

Check if player is driver

if (mp.players.local.vehicle && mp.players.local.vehicle.getPedInSeat(-1) === mp.players.local.handle) {
// player is in vehicle and is driver
}}

Disable health regeneration

mp.events.add('render', () => {
  mp.game.player.setHealthRechargeMultiplier(0.0);
});