diff --git a/scripts/server/vehicle.js b/scripts/server/vehicle.js index 168dcf7c..e6bc8850 100644 --- a/scripts/server/vehicle.js +++ b/scripts/server/vehicle.js @@ -198,6 +198,11 @@ function vehicleLockCommand(command, params, client) { return false; } + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and commands can't be used for it."); + return false; + } + if(isPlayerInAnyVehicle(client)) { vehicle = getPlayerVehicle(client); if(!isPlayerInFrontVehicleSeat(client)) { @@ -234,6 +239,11 @@ function vehicleLightsCommand(command, params, client) { let vehicle = getPlayerVehicle(client); + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and commands can't be used for it."); + return false; + } + if(getPlayerVehicleSeat(client) > 1) { messagePlayerError(client, "You need to be in the front seat!"); return false; @@ -254,6 +264,11 @@ function deleteVehicleCommand(command, params, client) { return false; } + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and can't be deleted."); + return false; + } + let vehicle = getPlayerVehicle(client); let dataIndex = getEntityData(vehicle, "ag.dataSlot"); let vehicleName = getVehicleName(vehicle); @@ -284,6 +299,11 @@ function vehicleEngineCommand(command, params, client) { return false; } + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and commands can't be used on it."); + return false; + } + getVehicleData(vehicle).engine = !getVehicleData(vehicle).engine; vehicle.engine = getVehicleData(vehicle).engine; //triggerNetworkEvent("ag.veh.engine", null, getVehicleForNetworkEvent(vehicle), getVehicleData(vehicle).engine); @@ -299,13 +319,18 @@ function vehicleSirenCommand(command, params, client) { return false; } + let vehicle = getPlayerVehicle(client); + + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and commands can't be used for it."); + return false; + } + if(getPlayerVehicleSeat(client) > 1) { messagePlayerError(client, "You need to be in the front seat!"); return false; } - let vehicle = getPlayerVehicle(client); - if(!doesClientHaveVehicleKeys(client, vehicle)) { messagePlayerError(client, "You don't have keys to this vehicle!"); return false; @@ -327,6 +352,11 @@ function setVehicleColourCommand(command, params, client) { let vehicle = getPlayerVehicle(client); + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and commands can't be used for it."); + return false; + } + if(!isAtPayAndSpray(getVehiclePosition(vehicle))) { if(!doesPlayerHaveStaffPermission(client, getStaffFlagValue("manageVehicles"))) { messagePlayerError(client, "You need to be at a pay-n-spray!"); @@ -363,6 +393,11 @@ function vehicleRepairCommand(command, params, client) { let vehicle = getPlayerVehicle(client); + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and commands can't be used for it."); + return false; + } + if(!isAtPayAndSpray(getVehiclePosition(vehicle))) { if(!doesPlayerHaveStaffPermission(client, getStaffFlagValue("manageVehicles"))) { messagePlayerError(client, "You need to be at a pay-n-spray!"); @@ -375,7 +410,6 @@ function vehicleRepairCommand(command, params, client) { return false; } - getPlayerCurrentSubAccount(client).cash -= getGlobalConfig().repairVehicleCost; repairVehicle(vehicle); @@ -392,6 +426,11 @@ function buyVehicleCommand(command, params, client) { let vehicle = getPlayerVehicle(client); + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and commands can't be used for it."); + return false; + } + if(getVehicleData(vehicle).buyPrice <= 0) { messagePlayerError(client, `This ${getVehicleName(vehicle)} is not for sale!`); return false; @@ -424,6 +463,11 @@ function rentVehicleCommand(command, params, client) { let vehicle = getPlayerVehicle(client); + if(!getVehicleData(vehicle)) { + messagePlayerError(client, "This is a random traffic vehicle and commands can't be used for it."); + return false; + } + if(getVehicleData(vehicle).rentPrice <= 0) { messagePlayerError(client, `This ${getVehicleName(vehicle)} is not for rent!`); return false;