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); 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; return tempVehicles;
} }
@@ -134,23 +134,21 @@ function createVehicleCommand(command, params, client) {
let frontPos = getPosInFrontOfPos(getPlayerPosition(client), getPlayerHeading(client), getServerConfig().spawnCarDistance); let frontPos = getPosInFrontOfPos(getPlayerPosition(client), getPlayerHeading(client), getServerConfig().spawnCarDistance);
let vehicleDataSlot = getServerData().vehicles.length; let vehicleDataSlot = getServerData().vehicles.length;
let tempVehicleData = false; let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client));
if(!isGTAIV()) { if(!vehicle) {
let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client)); messageClientError(client, "The vehicle could not be created!");
addToWorld(vehicle); return false;
tempVehicleData = new serverClasses.vehicleData(false, vehicle); }
tempVehicleData.syncId = vehicleDataSlot; addToWorld(vehicle);
setEntityData(vehicle, "ag.dataSlot", vehicleDataSlot, true);
setEntityData(vehicle, "ag.syncId", vehicleDataSlot, true); let tempVehicleData = new serverClasses.vehicleData(false, vehicle);
} else {
triggerNetworkEvent("ag.vehicle", getClosestPlayer(frontPos), vehicleDataSlot, modelId, frontPos, getPlayerHeading(client), 133, 133, 0, false); setEntityData(vehicle, "ag.dataSlot", vehicleDataSlot, true);
tempVehicleData = new serverClasses.vehicleData(false, vehicle);
}
getServerData().vehicles.push(tempVehicleData); getServerData().vehicles.push(tempVehicleData);
getServerData().vehicles[vehicleDataSlot].syncId = vehicleDataSlot; 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 frontPos = getPosInFrontOfPos(getPlayerPosition(client), getPlayerHeading(client), getServerConfig().spawnCarDistance);
let vehicleDataSlot = getServerData().vehicles.length; let vehicleDataSlot = getServerData().vehicles.length;
let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client)); let vehicle = gta.createVehicle(modelId, frontPos, getPlayerHeading(client));
if(!vehicle) {
messageClientError(client, "The vehicle could not be created!");
return false;
}
addToWorld(vehicle); addToWorld(vehicle);
tempVehicleData = new serverClasses.vehicleData(false, vehicle);
let tempVehicleData = new serverClasses.vehicleData(false, vehicle);
tempVehicleData.databaseId = -1; tempVehicleData.databaseId = -1;
setEntityData(vehicle, "ag.dataSlot", vehicleDataSlot, true);
getServerData().vehicles.push(tempVehicleData); getServerData().vehicles.push(tempVehicleData);
getServerData().vehicles[vehicleDataSlot].syncId = vehicleDataSlot; 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) { function vehicleLockCommand(command, params, client) {
let vehicleData = getClosestVehicle(getPlayerPosition(client)); let vehicle = getClosestVehicle(getPlayerPosition(client));
if(!getPlayerVehicle(client) && getVehiclePosition(vehicleData).distance(getPlayerPosition(client)) > getServerConfig().vehicleLockDistance) { if(!getPlayerVehicle(client) && getVehiclePosition(vehicle).distance(getPlayerPosition(client)) > getServerConfig().vehicleLockDistance) {
messageClientError(client, "You need to be in or near a vehicle!"); messageClientError(client, "You need to be in or near a vehicle!");
return false; 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) { function vehicleEngineCommand(command, params, client) {
if(!getPlayerVehicle(client)) { if(!getPlayerVehicle(client)) {
messageClientError(client, "You need to be in a vehicle!"); messageClientError(client, "You need to be in a vehicle!");
@@ -483,8 +505,8 @@ function doesClientOwnVehicle(client, vehicle) {
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
function getVehicleName(modelId) { function getVehicleName(vehicle) {
return getVehicleNameFromModelId(modelId) || "Unknown"; return getVehicleNameFromModelId(vehicle.modelIndex) || "Unknown";
} }
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
@@ -497,7 +519,7 @@ function setVehicleJobCommand(command, params, client) {
let vehicle = getPlayerVehicle(client); let vehicle = getPlayerVehicle(client);
let closestJobLocation = getClosestJobLocation(getVehiclePosition(vehicleData)); let closestJobLocation = getClosestJobLocation(getVehiclePosition(vehicle));
let jobId = closestJobLocation.job; let jobId = closestJobLocation.job;
if(!areParamsEmpty(params)) { 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) { function setVehicleOwnerCommand(command, params, client) {
if(!isPlayerInAnyVehicle(client)) { if(!isPlayerInAnyVehicle(client)) {
messageClientError(client, "You need to be in a vehicle!"); messageClientError(client, "You need to be in a vehicle!");
@@ -664,7 +705,7 @@ function getVehicleInfoCommand(command, params, client) {
break; 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; let vehicles = getServerData().vehicles;
for(let i in vehicles) { for(let i in vehicles) {
if(vehicleData == vehicles[i]) { if(vehicleData == vehicles[i]) {