Check params on veh create, fix create bug

This commit is contained in:
Vortrex
2021-01-09 22:41:09 -06:00
parent ac378d320a
commit 5864ae8738

View File

@@ -128,6 +128,11 @@ function getVehicleData(vehicle) {
// ---------------------------------------------------------------------------
function createVehicleCommand(command, params, client) {
if(areParamsEmpty(params)) {
messagePlayerSyntax(client, getCommandSyntaxText(command));
return false;
}
let modelId = getVehicleModelIdFromParams(params);
if(!modelId) {
@@ -136,22 +141,7 @@ function createVehicleCommand(command, params, client) {
}
let frontPos = getPosInFrontOfPos(getPlayerPosition(client), getPlayerHeading(client), getGlobalConfig().spawnCarDistance);
let vehicleDataSlot = getServerData().vehicles.length;
let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client));
if(!vehicle) {
messagePlayerError(client, "The vehicle could not be created!");
return false;
}
vehicle.heading = getPlayerHeading(client);
addToWorld(vehicle);
let tempVehicleData = new serverClasses.vehicleData(false, vehicle);
setEntityData(vehicle, "ag.dataSlot", vehicleDataSlot, true);
getServerData().vehicles.push(tempVehicleData);
getServerData().vehicles[vehicleDataSlot].syncId = vehicleDataSlot;
let vehicle = createPermanentVehicle(modelId, frontPos, getPlayerHeading(client));
messageAdmins(`[#AAAAAA]${client.name} [#FFFFFF]created a [#AAAAAA]${getVehicleName(vehicle)}!`);
}
@@ -159,6 +149,11 @@ function createVehicleCommand(command, params, client) {
// ---------------------------------------------------------------------------
function createTemporaryVehicleCommand(command, params, client) {
if(areParamsEmpty(params)) {
messagePlayerSyntax(client, getCommandSyntaxText(command));
return false;
}
let modelId = getVehicleModelIdFromParams(params);
if(!modelId) {
@@ -167,23 +162,7 @@ function createTemporaryVehicleCommand(command, params, client) {
}
let frontPos = getPosInFrontOfPos(getPlayerPosition(client), getPlayerHeading(client), getGlobalConfig().spawnCarDistance);
let vehicleDataSlot = getServerData().vehicles.length;
let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client));
if(!vehicle) {
messagePlayerError(client, "The vehicle could not be created!");
return false;
}
vehicle.heading = getPlayerHeading(client);
addToWorld(vehicle);
let tempVehicleData = new serverClasses.vehicleData(false, vehicle);
tempVehicleData.databaseId = -1;
setEntityData(vehicle, "ag.dataSlot", vehicleDataSlot, true);
getServerData().vehicles.push(tempVehicleData);
getServerData().vehicles[vehicleDataSlot].syncId = vehicleDataSlot;
let vehicle = createTemporaryVehicle(modelId, frontPos, getPlayerHeading(client));
messageAdmins(`[#AAAAAA]${client.name} [#FFFFFF]created a temporary ${getVehicleName(vehicle)}!`);
}
@@ -264,12 +243,13 @@ function deleteVehicleCommand(command, params, client) {
return false;
}
let vehicle = getPlayerVehicle(client);
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);
@@ -345,6 +325,11 @@ function vehicleSirenCommand(command, params, client) {
// ---------------------------------------------------------------------------
function setVehicleColourCommand(command, params, client) {
if(areParamsEmpty(params) && areThereEnoughParams(params, 2)) {
messagePlayerSyntax(client, getCommandSyntaxText(command));
return false;
}
if(!getPlayerVehicle(client)) {
messagePlayerError(client, "You need to be in a vehicle!");
return false;
@@ -1025,4 +1010,33 @@ function createNewDealershipVehicle(model, spawnPosition, spawnRotation, price,
getServerData().vehicles.push(tempVehicleData);
}
// -------------------------------------------------------------------------
function createTemporaryVehicle(modelId, position, heading) {
let vehicle = gta.createVehicle(modelId, position, heading);
vehicle.heading = heading;
addToWorld(vehicle);
let tempVehicleData = new serverClasses.vehicleData(false, vehicle);
tempVehicleData.databaseId = -1;
let slot = getServerData().vehicles.push(tempVehicleData);
setEntityData(vehicle, "ag.dataSlot", slot-1, false);
return vehicle;
}
// -------------------------------------------------------------------------
function createPermanentVehicle(modelId, position, heading) {
let vehicle = gta.createVehicle(modelId, position, heading);
vehicle.heading = heading;
addToWorld(vehicle);
let tempVehicleData = new serverClasses.vehicleData(false, vehicle);
let slot = getServerData().vehicles.push(tempVehicleData);
setEntityData(vehicle, "ag.dataSlot", slot-1, false);
return vehicle;
}
// -------------------------------------------------------------------------