Remove IV fixes, Add delveh and dealership cmd

This commit is contained in:
Vortrex
2020-12-14 10:42:58 -06:00
parent 0364cf52da
commit bccd6a399f

View File

@@ -37,7 +37,7 @@ function loadVehiclesFromDatabase() {
disconnectFromDatabase(dbConnection);
}
console.log("[Asshat.Vehicle]: " + tempVehicles.length + " vehicles loaded from database successfully!");
console.log(`[Asshat.Vehicle]: ${tempVehicles.length} vehicles loaded from database successfully!`);
return tempVehicles;
}
@@ -134,23 +134,21 @@ function createVehicleCommand(command, params, client) {
let frontPos = getPosInFrontOfPos(getPlayerPosition(client), getPlayerHeading(client), getServerConfig().spawnCarDistance);
let vehicleDataSlot = getServerData().vehicles.length;
let tempVehicleData = false;
if(!isGTAIV()) {
let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client));
addToWorld(vehicle);
tempVehicleData = new serverClasses.vehicleData(false, vehicle);
tempVehicleData.syncId = vehicleDataSlot;
setEntityData(vehicle, "ag.dataSlot", vehicleDataSlot, true);
setEntityData(vehicle, "ag.syncId", vehicleDataSlot, true);
} else {
triggerNetworkEvent("ag.vehicle", getClosestPlayer(frontPos), vehicleDataSlot, modelId, frontPos, getPlayerHeading(client), 133, 133, 0, false);
tempVehicleData = new serverClasses.vehicleData(false, vehicle);
}
let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client));
if(!vehicle) {
messageClientError(client, "The vehicle could not be created!");
return false;
}
addToWorld(vehicle);
let tempVehicleData = new serverClasses.vehicleData(false, vehicle);
setEntityData(vehicle, "ag.dataSlot", vehicleDataSlot, true);
getServerData().vehicles.push(tempVehicleData);
getServerData().vehicles[vehicleDataSlot].syncId = vehicleDataSlot;
messageClientSuccess(client, `You created a ${getVehicleName(tempVehicleData.model)}!`);
messageClientSuccess(client, `You created a ${getVehicleName(vehicle)}!`);
}
// ---------------------------------------------------------------------------
@@ -165,24 +163,30 @@ function createTemporaryVehicleCommand(command, params, client) {
let frontPos = getPosInFrontOfPos(getPlayerPosition(client), getPlayerHeading(client), getServerConfig().spawnCarDistance);
let vehicleDataSlot = getServerData().vehicles.length;
let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client));
if(!vehicle) {
messageClientError(client, "The vehicle could not be created!");
return false;
}
addToWorld(vehicle);
tempVehicleData = new serverClasses.vehicleData(false, 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;
messageClientSuccess(client, `You created a temporary ${getVehicleName(tempVehicleData.model)}!`);
messageClientSuccess(client, `You created a temporary ${getVehicleName(vehicle)}!`);
}
// ---------------------------------------------------------------------------
function vehicleLockCommand(command, params, client) {
let vehicleData = getClosestVehicle(getPlayerPosition(client));
if(!getPlayerVehicle(client) && getVehiclePosition(vehicleData).distance(getPlayerPosition(client)) > getServerConfig().vehicleLockDistance) {
let vehicle = getClosestVehicle(getPlayerPosition(client));
if(!getPlayerVehicle(client) && getVehiclePosition(vehicle).distance(getPlayerPosition(client)) > getServerConfig().vehicleLockDistance) {
messageClientError(client, "You need to be in or near a vehicle!");
return false;
}
@@ -237,6 +241,24 @@ function vehicleLightsCommand(command, params, client) {
// ---------------------------------------------------------------------------
function deleteVehicleCommand(command, params, client) {
if(!getPlayerVehicle(client)) {
messageClientError(client, "You need to be in a vehicle!");
return false;
}
let vehicle = getPlayerVehicle(client);
let dataIndex = getEntityData(vehicle, "ag.dataSlot");
let vehicleName = getVehicleName(vehicle);
getServerData().vehicles[dataIndex] = null;
destroyElement(vehicle);
messageClientSuccess(client, `The ${vehicleName} has been deleted!`);
}
// ---------------------------------------------------------------------------
function vehicleEngineCommand(command, params, client) {
if(!getPlayerVehicle(client)) {
messageClientError(client, "You need to be in a vehicle!");
@@ -483,8 +505,8 @@ function doesClientOwnVehicle(client, vehicle) {
// ---------------------------------------------------------------------------
function getVehicleName(modelId) {
return getVehicleNameFromModelId(modelId) || "Unknown";
function getVehicleName(vehicle) {
return getVehicleNameFromModelId(vehicle.modelIndex) || "Unknown";
}
// ---------------------------------------------------------------------------
@@ -497,7 +519,7 @@ function setVehicleJobCommand(command, params, client) {
let vehicle = getPlayerVehicle(client);
let closestJobLocation = getClosestJobLocation(getVehiclePosition(vehicleData));
let closestJobLocation = getClosestJobLocation(getVehiclePosition(vehicle));
let jobId = closestJobLocation.job;
if(!areParamsEmpty(params)) {
@@ -540,6 +562,25 @@ function setVehicleClanCommand(command, params, client) {
// ---------------------------------------------------------------------------
function setVehicleToDealershipCommand(command, params, client) {
if(!isPlayerInAnyVehicle(client)) {
messageClientError(client, "You need to be in a vehicle!");
return false;
}
let vehicle = getPlayerVehicle(client);
let businessId = toInteger(splitParams[1]) || (isPlayerInAnyBusiness(client.player)) ? getPlayerBusiness(client.player) : getClosestBusinessEntrance(client.player.position);
let tempBusinessData = getServerData().businesses.filter(b => b.databaseId == businessId)[0];
getVehicleData(vehicle).ownerType = AG_VEHOWNER_DEALERSHIP;
getVehicleData(vehicle).ownerId = businessData.databaseId;
messageClientSuccess(client, `You set the ${getVehicleName(vehicle)}'s owner to the ${clan.name} clan!`);
}
// ---------------------------------------------------------------------------
function setVehicleOwnerCommand(command, params, client) {
if(!isPlayerInAnyVehicle(client)) {
messageClientError(client, "You need to be in a vehicle!");
@@ -664,7 +705,7 @@ function getVehicleInfoCommand(command, params, client) {
break;
}
messageClientInfo(client, `[#0099FF][Vehicle Info] [#FFFFFF]ID: [#CCCCCC]${vehicle.id}, [#FFFFFF]DatabaseID: [#CCCCCC]${vehicleData.databaseId}, [#FFFFFF]Owner: [#CCCCCC]${ownerName}[ID ${vehicleData.ownerId}] (${ownerType}), [#FFFFFF]Type: [#CCCCCC]${getVehicleName(vehicle)}[${vehicle.modelIndex}], [#FFFFFF]BuyPrice: [#CCCCCC]${vehicleData.buyPrice}, [#FFFFFF]RentPrice: [#CCCCCC]${vehicleData.rentPrice}`);
messageClientInfo(client, `[#0099FF][Vehicle Info] [#FFFFFF]ID: [#AAAAAA]${vehicle.id}, [#FFFFFF]DatabaseID: [#AAAAAA]${vehicleData.databaseId}, [#FFFFFF]Owner: [#AAAAAA]${ownerName}[ID ${vehicleData.ownerId}] (${ownerType}), [#FFFFFF]Type: [#AAAAAA]${getVehicleName(vehicle)}[${vehicle.modelIndex}], [#FFFFFF]BuyPrice: [#AAAAAA]${vehicleData.buyPrice}, [#FFFFFF]RentPrice: [#AAAAAA]${vehicleData.rentPrice}`);
}
// ---------------------------------------------------------------------------
@@ -730,7 +771,7 @@ function stopRentingVehicle(client) {
// ---------------------------------------------------------------------------
function respawnVehicle(vehicleData) {
function respawnVehicle(vehicle) {
let vehicles = getServerData().vehicles;
for(let i in vehicles) {
if(vehicleData == vehicles[i]) {