Change copyright, consts, and net events prefix
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
// ===========================================================================
|
||||
// Asshat Gaming Roleplay
|
||||
// https://github.com/VortrexFTW/agrp_main
|
||||
// (c) 2022 Asshat Gaming
|
||||
// Vortrex's Roleplay Resource
|
||||
// https://github.com/VortrexFTW/v-roleplay
|
||||
// ===========================================================================
|
||||
// FILE: vehicle.js
|
||||
// DESC: Provides vehicle functions and usage
|
||||
@@ -9,13 +8,13 @@
|
||||
// ===========================================================================
|
||||
|
||||
// Vehicle Owner Types
|
||||
const AGRP_VEHOWNER_NONE = 0; // Not owned
|
||||
const AGRP_VEHOWNER_PLAYER = 1; // Owned by a player (character/subaccount)
|
||||
const AGRP_VEHOWNER_JOB = 2; // Owned by a job
|
||||
const AGRP_VEHOWNER_CLAN = 3; // Owned by a clan
|
||||
const AGRP_VEHOWNER_FACTION = 4; // Owned by a faction (not used at the moment)
|
||||
const AGRP_VEHOWNER_PUBLIC = 5; // Public vehicle. Anybody can drive it.
|
||||
const AGRP_VEHOWNER_BIZ = 6; // Owned by a business (also includes dealerships since they're businesses)
|
||||
const V_VEHOWNER_NONE = 0; // Not owned
|
||||
const V_VEHOWNER_PLAYER = 1; // Owned by a player (character/subaccount)
|
||||
const V_VEHOWNER_JOB = 2; // Owned by a job
|
||||
const V_VEHOWNER_CLAN = 3; // Owned by a clan
|
||||
const V_VEHOWNER_FACTION = 4; // Owned by a faction (not used at the moment)
|
||||
const V_VEHOWNER_PUBLIC = 5; // Public vehicle. Anybody can drive it.
|
||||
const V_VEHOWNER_BIZ = 6; // Owned by a business (also includes dealerships since they're businesses)
|
||||
|
||||
// ===========================================================================
|
||||
|
||||
@@ -40,7 +39,7 @@ class VehicleData {
|
||||
this.syncHeading = 0.0;
|
||||
|
||||
// Ownership
|
||||
this.ownerType = AGRP_VEHOWNER_NONE;
|
||||
this.ownerType = V_VEHOWNER_NONE;
|
||||
this.ownerId = 0;
|
||||
this.buyPrice = 0;
|
||||
this.rentPrice = 0;
|
||||
@@ -325,7 +324,7 @@ function spawnAllVehicles() {
|
||||
for (let i in getServerData().vehicles) {
|
||||
let vehicle = spawnVehicle(getServerData().vehicles[i]);
|
||||
getServerData().vehicles[i].vehicle = vehicle;
|
||||
setEntityData(vehicle, "agrp.dataSlot", i, false);
|
||||
setEntityData(vehicle, "v.rp.dataSlot", i, false);
|
||||
}
|
||||
setAllVehicleIndexes();
|
||||
}
|
||||
@@ -338,7 +337,7 @@ function spawnAllVehicles() {
|
||||
*/
|
||||
function getVehicleData(vehicle) {
|
||||
if (isVehicleObject(vehicle)) {
|
||||
let dataIndex = getEntityData(vehicle, "agrp.dataSlot");
|
||||
let dataIndex = getEntityData(vehicle, "v.rp.dataSlot");
|
||||
if (typeof getServerData().vehicles[dataIndex] != "undefined") {
|
||||
return getServerData().vehicles[dataIndex];
|
||||
}
|
||||
@@ -363,7 +362,7 @@ function createVehicleCommand(command, params, client) {
|
||||
}
|
||||
|
||||
let heading = getPlayerHeading(client);
|
||||
if (getGame() == AGRP_GAME_MAFIA_ONE) {
|
||||
if (getGame() == V_GAME_MAFIA_ONE) {
|
||||
heading = degToRad(getPlayerHeading(client));
|
||||
}
|
||||
|
||||
@@ -503,7 +502,7 @@ function deleteVehicleCommand(command, params, client) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let dataIndex = getEntityData(vehicle, "agrp.dataSlot");
|
||||
let dataIndex = getEntityData(vehicle, "v.rp.dataSlot");
|
||||
let vehicleName = getVehicleName(vehicle);
|
||||
|
||||
quickDatabaseQuery(`UPDATE veh_main SET veh_deleted = 1 WHERE veh_id = ${getVehicleData(vehicle).databaseId}`);
|
||||
@@ -541,7 +540,7 @@ function vehicleEngineCommand(command, params, client) {
|
||||
|
||||
getVehicleData(vehicle).engine = !getVehicleData(vehicle).engine;
|
||||
vehicle.engine = getVehicleData(vehicle).engine;
|
||||
setEntityData(vehicle, "agrp.engine", getVehicleData(vehicle).engine, true);
|
||||
setEntityData(vehicle, "v.rp.engine", getVehicleData(vehicle).engine, true);
|
||||
|
||||
getVehicleData(vehicle).needsSaved = true;
|
||||
|
||||
@@ -667,7 +666,7 @@ function vehicleAdminLiveryCommand(command, params, client) {
|
||||
getVehicleData(vehicle).livery = livery;
|
||||
getVehicleData(vehicle).needsSaved = true;
|
||||
|
||||
setEntityData(vehicle, "agrp.livery", livery, true);
|
||||
setEntityData(vehicle, "v.rp.livery", livery, true);
|
||||
forcePlayerToSyncElementProperties(null, vehicle);
|
||||
|
||||
//meActionToNearbyPlayers(client, `sets the ${getVehicleName(vehicle)}'s livery/paintjob'`);
|
||||
@@ -706,10 +705,10 @@ function buyVehicleCommand(command, params, client) {
|
||||
getPlayerData(client).buyingVehicle = vehicle;
|
||||
getVehicleData(vehicle).engine = true;
|
||||
vehicle.engine = true;
|
||||
setEntityData(vehicle, "agrp.engine", getVehicleData(vehicle).engine, true);
|
||||
setEntityData(vehicle, "v.rp.engine", getVehicleData(vehicle).engine, true);
|
||||
|
||||
getVehicleData(vehicle).needsSaved = true;
|
||||
setPlayerBuyingVehicleState(client, AGRP_VEHBUYSTATE_TESTDRIVE, vehicle.id, getVehiclePosition(vehicle));
|
||||
setPlayerBuyingVehicleState(client, V_VEHBUYSTATE_TESTDRIVE, vehicle.id, getVehiclePosition(vehicle));
|
||||
meActionToNearbyPlayers(client, `receives a set of keys to test drive the ${getVehicleName(vehicle)} and starts the engine`);
|
||||
messagePlayerInfo(client, getLocaleString(client, "DealershipPurchaseTestDrive"));
|
||||
getServerData().purchasingVehicleCache.push(client);
|
||||
@@ -777,7 +776,7 @@ function rentVehicleCommand(command, params, client) {
|
||||
// ===========================================================================
|
||||
|
||||
function enterVehicleAsPassengerCommand(command, params, client) {
|
||||
sendNetworkEventToPlayer("agrp.passenger", client);
|
||||
sendNetworkEventToPlayer("v.rp.passenger", client);
|
||||
}
|
||||
|
||||
// ===========================================================================
|
||||
@@ -804,17 +803,17 @@ function doesPlayerHaveVehicleKeys(client, vehicle) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (vehicleData.ownerType == AGRP_VEHOWNER_PUBLIC) {
|
||||
if (vehicleData.ownerType == V_VEHOWNER_PUBLIC) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (vehicleData.ownerType == AGRP_VEHOWNER_PLAYER) {
|
||||
if (vehicleData.ownerType == V_VEHOWNER_PLAYER) {
|
||||
if (vehicleData.ownerId == getPlayerCurrentSubAccount(client).databaseId) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if (vehicleData.ownerType == AGRP_VEHOWNER_CLAN) {
|
||||
if (vehicleData.ownerType == V_VEHOWNER_CLAN) {
|
||||
if (vehicleData.ownerId == getPlayerCurrentSubAccount(client).clan) {
|
||||
if (vehicleData.clanRank <= getPlayerCurrentSubAccount(client).clanRank) {
|
||||
return true;
|
||||
@@ -822,7 +821,7 @@ function doesPlayerHaveVehicleKeys(client, vehicle) {
|
||||
}
|
||||
}
|
||||
|
||||
if (vehicleData.ownerType == AGRP_VEHOWNER_FACTION) {
|
||||
if (vehicleData.ownerType == V_VEHOWNER_FACTION) {
|
||||
if (vehicleData.ownerId == getPlayerCurrentSubAccount(client).faction) {
|
||||
if (vehicleData.factionRank <= getPlayerCurrentSubAccount(client).factionRank) {
|
||||
return true;
|
||||
@@ -830,7 +829,7 @@ function doesPlayerHaveVehicleKeys(client, vehicle) {
|
||||
}
|
||||
}
|
||||
|
||||
if (vehicleData.ownerType == AGRP_VEHOWNER_JOB) {
|
||||
if (vehicleData.ownerType == V_VEHOWNER_JOB) {
|
||||
if (vehicleData.ownerId == getPlayerCurrentSubAccount(client).job) {
|
||||
return true;
|
||||
}
|
||||
@@ -854,13 +853,13 @@ function canPlayerManageVehicle(client, vehicle, exemptAdminFlag = false) {
|
||||
}
|
||||
}
|
||||
|
||||
if (vehicleData.ownerType == AGRP_VEHOWNER_PLAYER) {
|
||||
if (vehicleData.ownerType == V_VEHOWNER_PLAYER) {
|
||||
if (vehicleData.ownerId == getPlayerData(client).accountData.databaseId) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if (vehicleData.ownerType == AGRP_VEHOWNER_CLAN) {
|
||||
if (vehicleData.ownerType == V_VEHOWNER_CLAN) {
|
||||
if (vehicleData.ownerId == getPlayerCurrentSubAccount(client).clan) {
|
||||
if (doesPlayerHaveClanPermission(client, "ManageVehicles")) {
|
||||
return true;
|
||||
@@ -868,7 +867,7 @@ function canPlayerManageVehicle(client, vehicle, exemptAdminFlag = false) {
|
||||
}
|
||||
}
|
||||
|
||||
if (vehicleData.ownerType == AGRP_VEHOWNER_BIZ) {
|
||||
if (vehicleData.ownerType == V_VEHOWNER_BIZ) {
|
||||
if (canPlayerManageBusiness(client, getBusinessIdFromDatabaseId(vehicleData.ownerId), exemptAdminFlag)) {
|
||||
return true;
|
||||
}
|
||||
@@ -905,7 +904,7 @@ function setVehicleJobCommand(command, params, client) {
|
||||
// return false;
|
||||
//}
|
||||
|
||||
getVehicleData(vehicle).ownerType = AGRP_VEHOWNER_JOB;
|
||||
getVehicleData(vehicle).ownerType = V_VEHOWNER_JOB;
|
||||
getVehicleData(vehicle).ownerId = getJobData(jobId).databaseId;
|
||||
|
||||
getVehicleData(vehicle).needsSaved = true;
|
||||
@@ -934,7 +933,7 @@ function setVehicleRankCommand(command, params, client) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (getVehicleData(vehicle).ownerType == AGRP_VEHOWNER_CLAN) {
|
||||
if (getVehicleData(vehicle).ownerType == V_VEHOWNER_CLAN) {
|
||||
rankId = getClanRankFromParams(getVehicleData(vehicle).ownerId, params);
|
||||
if (!getClanRankData(getVehicleData(vehicle).ownerId, rankId)) {
|
||||
messagePlayerError(client, getLocaleString(client, "InvalidClanRank"));
|
||||
@@ -942,7 +941,7 @@ function setVehicleRankCommand(command, params, client) {
|
||||
}
|
||||
getVehicleData(vehicle).rank = getClanRankData(getVehicleData(vehicle).ownerId, rankId).databaseId;
|
||||
messageAdmins(`{adminOrange}${getPlayerName(client)}{MAINCOLOUR} set their {vehiclePurple}${getVehicleName(vehicle)}{MAINCOLOUR} minimum rank to {ALTCOLOUR}${getClanRankData(getVehicleData(vehicle).ownerId, rankId).name}{MAINCOLOUR} of the {clanOrange}${getClanData(getVehicleData(vehicle).ownerId).name}{MAINCOLOUR} clan!`, true);
|
||||
} else if (getVehicleData(vehicle).ownerType == AGRP_VEHOWNER_JOB) {
|
||||
} else if (getVehicleData(vehicle).ownerType == V_VEHOWNER_JOB) {
|
||||
getVehicleData(vehicle).rank = rankId;
|
||||
messageAdmins(`{adminOrange}${getPlayerName(client)}{MAINCOLOUR} set their {vehiclePurple}${getVehicleName(vehicle)}{MAINCOLOUR} minimum rank to {ALTCOLOUR}${rankId}{MAINCOLOUR} of the {jobYellow}${getJobData(getJobIdFromDatabaseId(getVehicleData(vehicle).ownerId)).name}{MAINCOLOUR} job!`, true);
|
||||
}
|
||||
@@ -971,7 +970,7 @@ function setVehicleClanCommand(command, params, client) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (getVehicleData(vehicle).ownerType != AGRP_VEHOWNER_PLAYER) {
|
||||
if (getVehicleData(vehicle).ownerType != V_VEHOWNER_PLAYER) {
|
||||
messagePlayerError(client, getLocaleString(client, "MustOwnVehicle"));
|
||||
return false;
|
||||
}
|
||||
@@ -982,7 +981,7 @@ function setVehicleClanCommand(command, params, client) {
|
||||
}
|
||||
|
||||
showPlayerPrompt(client, getLocaleString(client, "SetVehicleClanConfirmMessage"), getLocaleString(client, "SetVehicleClanConfirmTitle"), getLocaleString(client, "Yes"), getLocaleString(client, "No"));
|
||||
getPlayerData(client).promptType = AGRP_PROMPT_GIVEVEHTOCLAN;
|
||||
getPlayerData(client).promptType = V_PROMPT_GIVEVEHTOCLAN;
|
||||
|
||||
getVehicleData(vehicle).needsSaved = true;
|
||||
}
|
||||
@@ -1012,7 +1011,7 @@ function setVehicleBusinessCommand(command, params, client) {
|
||||
return false;
|
||||
}
|
||||
|
||||
getVehicleData(vehicle).ownerType = AGRP_VEHOWNER_BIZ;
|
||||
getVehicleData(vehicle).ownerType = V_VEHOWNER_BIZ;
|
||||
getVehicleData(vehicle).ownerId = getBusinessData(businessId).databaseId;
|
||||
|
||||
messageAdmins(`{adminOrange}${getPlayerName(client)}{MAINCOLOUR} set their {vehiclePurple}${getVehicleName(vehicle)}{MAINCOLOUR} owner to the {businessBlue}${getBusinessData(businessId).name} {MAINCOLOUR}business`, true);
|
||||
@@ -1041,7 +1040,7 @@ function setVehicleOwnerCommand(command, params, client) {
|
||||
return false;
|
||||
}
|
||||
|
||||
getVehicleData(vehicle).ownerType = AGRP_VEHOWNER_PLAYER;
|
||||
getVehicleData(vehicle).ownerType = V_VEHOWNER_PLAYER;
|
||||
getVehicleData(vehicle).ownerId = getPlayerCurrentSubAccount(targetClient).databaseId;
|
||||
|
||||
messageAdmins(`{adminOrange}${getPlayerName(client)}{MAINCOLOUR} set their {vehiclePurple}${getVehicleName(vehicle)}{MAINCOLOUR} owner to {ALTCOLOUR}${getClientSubAccountName(targetClient)}`, true);
|
||||
@@ -1064,7 +1063,7 @@ function setVehiclePublicCommand(command, params, client) {
|
||||
return false;
|
||||
}
|
||||
|
||||
getVehicleData(vehicle).ownerType = AGRP_VEHOWNER_PUBLIC;
|
||||
getVehicleData(vehicle).ownerType = V_VEHOWNER_PUBLIC;
|
||||
getVehicleData(vehicle).ownerId = 0;
|
||||
|
||||
messageAdmins(`{adminOrange}${getPlayerName(client)}{MAINCOLOUR} set their {vehiclePurple}${getVehicleName(vehicle)}{MAINCOLOUR} to a public vehicle!`, true);
|
||||
@@ -1153,7 +1152,7 @@ function removeVehicleOwnerCommand(command, params, client) {
|
||||
return false;
|
||||
}
|
||||
|
||||
getVehicleData(vehicle).ownerType = AGRP_VEHOWNER_NONE;
|
||||
getVehicleData(vehicle).ownerType = V_VEHOWNER_NONE;
|
||||
getVehicleData(vehicle).ownerId = 0;
|
||||
|
||||
getVehicleData(vehicle).needsSaved = true;
|
||||
@@ -1182,28 +1181,28 @@ function getVehicleInfoCommand(command, params, client) {
|
||||
let ownerName = "Nobody";
|
||||
let ownerType = "None";
|
||||
switch (vehicleData.ownerType) {
|
||||
case AGRP_VEHOWNER_CLAN:
|
||||
case V_VEHOWNER_CLAN:
|
||||
ownerName = getClanData(getClanIndexFromDatabaseId(vehicleData.ownerId)).name;
|
||||
ownerType = "clan";
|
||||
break;
|
||||
|
||||
case AGRP_VEHOWNER_JOB:
|
||||
case V_VEHOWNER_JOB:
|
||||
ownerName = getJobData(getJobIdFromDatabaseId(vehicleData.ownerId)).name;
|
||||
ownerType = "job";
|
||||
break;
|
||||
|
||||
case AGRP_VEHOWNER_PLAYER:
|
||||
case V_VEHOWNER_PLAYER:
|
||||
let subAccountData = loadSubAccountFromId(vehicleData.ownerId);
|
||||
ownerName = `${subAccountData.firstName} ${subAccountData.lastName} [${subAccountData.databaseId}]`;
|
||||
ownerType = "player";
|
||||
break;
|
||||
|
||||
case AGRP_VEHOWNER_BIZ:
|
||||
case V_VEHOWNER_BIZ:
|
||||
ownerName = getBusinessData(getBusinessIdFromDatabaseId(vehicleData.ownerId)).name;
|
||||
ownerType = "business";
|
||||
break;
|
||||
|
||||
case AGRP_VEHOWNER_PUBLIC:
|
||||
case V_VEHOWNER_PUBLIC:
|
||||
ownerName = "Nobody";
|
||||
ownerType = "public";
|
||||
break;
|
||||
@@ -1259,28 +1258,28 @@ function getLastVehicleInfoCommand(command, params, client) {
|
||||
let ownerName = "Nobody";
|
||||
let ownerType = "None";
|
||||
switch (vehicleData.ownerType) {
|
||||
case AGRP_VEHOWNER_CLAN:
|
||||
case V_VEHOWNER_CLAN:
|
||||
ownerName = getClanData(vehicleData.ownerId).name;
|
||||
ownerType = "clan";
|
||||
break;
|
||||
|
||||
case AGRP_VEHOWNER_JOB:
|
||||
case V_VEHOWNER_JOB:
|
||||
ownerName = getJobData(vehicleData.ownerId).name;
|
||||
ownerType = "job";
|
||||
break;
|
||||
|
||||
case AGRP_VEHOWNER_PLAYER:
|
||||
case V_VEHOWNER_PLAYER:
|
||||
let subAccountData = loadSubAccountFromId(vehicleData.ownerId);
|
||||
ownerName = `${subAccountData.firstName} ${subAccountData.lastName} [${subAccountData.databaseId}]`;
|
||||
ownerType = "player";
|
||||
break;
|
||||
|
||||
case AGRP_VEHOWNER_BIZ:
|
||||
case V_VEHOWNER_BIZ:
|
||||
ownerName = getBusinessData(vehicleData.ownerId).name;
|
||||
ownerType = "business";
|
||||
break;
|
||||
|
||||
case AGRP_VEHOWNER_PUBLIC:
|
||||
case V_VEHOWNER_PUBLIC:
|
||||
ownerName = "None";
|
||||
ownerType = "public";
|
||||
break;
|
||||
@@ -1391,7 +1390,7 @@ function respawnEmptyVehiclesCommand(command, params, client) {
|
||||
|
||||
function respawnJobVehiclesCommand(command, params, client) {
|
||||
for (let i in getServerData().vehicles) {
|
||||
if (getServerData().vehicles[i].ownerType == AGRP_VEHOWNER_JOB) {
|
||||
if (getServerData().vehicles[i].ownerType == V_VEHOWNER_JOB) {
|
||||
respawnVehicle(getServerData().vehicles[i].vehicle);
|
||||
}
|
||||
}
|
||||
@@ -1403,7 +1402,7 @@ function respawnJobVehiclesCommand(command, params, client) {
|
||||
|
||||
function respawnClanVehiclesCommand(command, params, client) {
|
||||
for (let i in getServerData().vehicles) {
|
||||
if (getServerData().vehicles[i].ownerType == AGRP_VEHOWNER_CLAN) {
|
||||
if (getServerData().vehicles[i].ownerType == V_VEHOWNER_CLAN) {
|
||||
respawnVehicle(getServerData().vehicles[i].vehicle);
|
||||
}
|
||||
}
|
||||
@@ -1415,7 +1414,7 @@ function respawnClanVehiclesCommand(command, params, client) {
|
||||
|
||||
function respawnPlayerVehiclesCommand(command, params, client) {
|
||||
for (let i in getServerData().vehicles) {
|
||||
if (getServerData().vehicles[i].ownerType == AGRP_VEHOWNER_PLAYER) {
|
||||
if (getServerData().vehicles[i].ownerType == V_VEHOWNER_PLAYER) {
|
||||
respawnVehicle(getServerData().vehicles[i].vehicle);
|
||||
}
|
||||
}
|
||||
@@ -1427,7 +1426,7 @@ function respawnPlayerVehiclesCommand(command, params, client) {
|
||||
|
||||
function respawnPublicVehiclesCommand(command, params, client) {
|
||||
for (let i in getServerData().vehicles) {
|
||||
if (getServerData().vehicles[i].ownerType == AGRP_VEHOWNER_PUBLIC) {
|
||||
if (getServerData().vehicles[i].ownerType == V_VEHOWNER_PUBLIC) {
|
||||
respawnVehicle(getServerData().vehicles[i].vehicle);
|
||||
}
|
||||
}
|
||||
@@ -1439,7 +1438,7 @@ function respawnPublicVehiclesCommand(command, params, client) {
|
||||
|
||||
function respawnBusinessVehiclesCommand(command, params, client) {
|
||||
for (let i in getServerData().vehicles) {
|
||||
if (getServerData().vehicles[i].ownerType == AGRP_VEHOWNER_BIZ) {
|
||||
if (getServerData().vehicles[i].ownerType == V_VEHOWNER_BIZ) {
|
||||
respawnVehicle(getServerData().vehicles[i].vehicle);
|
||||
}
|
||||
}
|
||||
@@ -1467,7 +1466,7 @@ function respawnVehicle(vehicle) {
|
||||
vehicles[i].engine = false;
|
||||
}
|
||||
|
||||
if (vehicles[i].ownerType == AGRP_VEHOWNER_JOB) {
|
||||
if (vehicles[i].ownerType == V_VEHOWNER_JOB) {
|
||||
vehicles[i].locked = true;
|
||||
}
|
||||
|
||||
@@ -1476,7 +1475,7 @@ function respawnVehicle(vehicle) {
|
||||
|
||||
let newVehicle = spawnVehicle(vehicles[i]);
|
||||
vehicles[i].vehicle = newVehicle;
|
||||
setEntityData(newVehicle, "agrp.dataSlot", i, false);
|
||||
setEntityData(newVehicle, "v.rp.dataSlot", i, false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1527,12 +1526,12 @@ function spawnVehicle(vehicleData) {
|
||||
//setVehicleHealth(vehicle, 1000);
|
||||
repairVehicle(vehicle);
|
||||
|
||||
setEntityData(vehicle, "agrp.livery", vehicleData.livery, true);
|
||||
setEntityData(vehicle, "agrp.upgrades", vehicleData.extras, true);
|
||||
setEntityData(vehicle, "agrp.interior", vehicleData.interior, true);
|
||||
setEntityData(vehicle, "agrp.engine", vehicleData.engine, true);
|
||||
setEntityData(vehicle, "v.rp.livery", vehicleData.livery, true);
|
||||
setEntityData(vehicle, "v.rp.upgrades", vehicleData.extras, true);
|
||||
setEntityData(vehicle, "v.rp.interior", vehicleData.interior, true);
|
||||
setEntityData(vehicle, "v.rp.engine", vehicleData.engine, true);
|
||||
|
||||
setEntityData(vehicle, "agrp.server", true, true);
|
||||
setEntityData(vehicle, "v.rp.server", true, true);
|
||||
|
||||
forcePlayerToSyncElementProperties(null, vehicle);
|
||||
setElementTransient(vehicle, false);
|
||||
@@ -1555,19 +1554,19 @@ function isVehicleAtPayAndSpray(vehicle) {
|
||||
|
||||
function getVehicleOwnerTypeText(ownerType) {
|
||||
switch (ownerType) {
|
||||
case AGRP_VEHOWNER_CLAN:
|
||||
case V_VEHOWNER_CLAN:
|
||||
return "clan";
|
||||
|
||||
case AGRP_VEHOWNER_JOB:
|
||||
case V_VEHOWNER_JOB:
|
||||
return "job";
|
||||
|
||||
case AGRP_VEHOWNER_PLAYER:
|
||||
case V_VEHOWNER_PLAYER:
|
||||
return "player";
|
||||
|
||||
case AGRP_VEHOWNER_BIZ:
|
||||
case V_VEHOWNER_BIZ:
|
||||
return "business";
|
||||
|
||||
case AGRP_VEHOWNER_PUBLIC:
|
||||
case V_VEHOWNER_PUBLIC:
|
||||
return "public";
|
||||
|
||||
default:
|
||||
@@ -1578,7 +1577,7 @@ function getVehicleOwnerTypeText(ownerType) {
|
||||
// ===========================================================================
|
||||
|
||||
function isVehicleOwnedByJob(vehicle, jobId) {
|
||||
if (getVehicleData(vehicle).ownerType == AGRP_VEHOWNER_JOB) {
|
||||
if (getVehicleData(vehicle).ownerType == V_VEHOWNER_JOB) {
|
||||
return (getVehicleData(vehicle).ownerId == jobId);
|
||||
}
|
||||
return false;
|
||||
@@ -1612,14 +1611,14 @@ function createNewDealershipVehicle(modelIndex, spawnPosition, spawnRotation, pr
|
||||
tempVehicleData.spawnLocked = true;
|
||||
tempVehicleData.spawnPosition = spawnPosition;
|
||||
tempVehicleData.spawnRotation = spawnRotation;
|
||||
tempVehicleData.ownerType = AGRP_VEHOWNER_BIZ;
|
||||
tempVehicleData.ownerType = V_VEHOWNER_BIZ;
|
||||
tempVehicleData.ownerId = dealershipId;
|
||||
tempVehicleData.needsSaved = true;
|
||||
tempVehicleData.interior = interior;
|
||||
tempVehicleData.dimension = dimension;
|
||||
|
||||
let slot = getServerData().vehicles.push(tempVehicleData);
|
||||
setEntityData(vehicle, "agrp.dataSlot", slot - 1, false);
|
||||
setEntityData(vehicle, "v.rp.dataSlot", slot - 1, false);
|
||||
}
|
||||
|
||||
// ===========================================================================
|
||||
@@ -1647,7 +1646,7 @@ function createTemporaryVehicle(modelIndex, position, heading, interior = 0, dim
|
||||
setAllVehicleIndexes();
|
||||
|
||||
if (areServerElementsSupported()) {
|
||||
setEntityData(vehicle, "agrp.dataSlot", slot - 1, false);
|
||||
setEntityData(vehicle, "v.rp.dataSlot", slot - 1, false);
|
||||
}
|
||||
|
||||
return vehicle;
|
||||
@@ -1677,7 +1676,7 @@ function createPermanentVehicle(modelIndex, position, heading, interior = 0, dim
|
||||
setAllVehicleIndexes();
|
||||
|
||||
if (areServerElementsSupported()) {
|
||||
setEntityData(vehicle, "agrp.dataSlot", slot - 1, false);
|
||||
setEntityData(vehicle, "v.rp.dataSlot", slot - 1, false);
|
||||
}
|
||||
|
||||
return vehicle;
|
||||
@@ -1702,22 +1701,22 @@ function processVehiclePurchasing() {
|
||||
|
||||
function checkVehiclePurchasing(client) {
|
||||
if (!isPlayerLoggedIn(client)) {
|
||||
setPlayerBuyingVehicleState(client, AGRP_VEHBUYSTATE_NONE, null, null);
|
||||
setPlayerBuyingVehicleState(client, V_VEHBUYSTATE_NONE, null, null);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!isPlayerSpawned(client)) {
|
||||
setPlayerBuyingVehicleState(client, AGRP_VEHBUYSTATE_NONE, null, null);
|
||||
setPlayerBuyingVehicleState(client, V_VEHBUYSTATE_NONE, null, null);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!getPlayerData(client)) {
|
||||
setPlayerBuyingVehicleState(client, AGRP_VEHBUYSTATE_NONE, null, null);
|
||||
setPlayerBuyingVehicleState(client, V_VEHBUYSTATE_NONE, null, null);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!getPlayerData(client).buyingVehicle) {
|
||||
setPlayerBuyingVehicleState(client, AGRP_VEHBUYSTATE_NONE, null, null);
|
||||
setPlayerBuyingVehicleState(client, V_VEHBUYSTATE_NONE, null, null);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -1727,7 +1726,7 @@ function checkVehiclePurchasing(client) {
|
||||
messagePlayerError(client, getLocaleString(client, "DealershipPurchaseExitedVehicle"));
|
||||
respawnVehicle(getPlayerData(client).buyingVehicle);
|
||||
getPlayerData(client).buyingVehicle = false;
|
||||
setPlayerBuyingVehicleState(client, AGRP_VEHBUYSTATE_NONE, null, null);
|
||||
setPlayerBuyingVehicleState(client, V_VEHBUYSTATE_NONE, null, null);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -1738,24 +1737,24 @@ function checkVehiclePurchasing(client) {
|
||||
messagePlayerError(client, getLocaleString(client, "VehiclePurchaseNotEnoughMoney"));
|
||||
respawnVehicle(getPlayerData(client).buyingVehicle);
|
||||
getPlayerData(client).buyingVehicle = false;
|
||||
setPlayerBuyingVehicleState(client, AGRP_VEHBUYSTATE_NONE, null, null);
|
||||
setPlayerBuyingVehicleState(client, V_VEHBUYSTATE_NONE, null, null);
|
||||
return false;
|
||||
}
|
||||
|
||||
getServerData().purchasingVehicleCache.splice(getServerData().purchasingVehicleCache.indexOf(client), 1);
|
||||
if (getVehicleData(getPlayerData(client).buyingVehicle).ownerType == AGRP_VEHOWNER_BIZ || getVehicleData(getPlayerData(client).buyingVehicle).ownerType == AGRP_VEHOWNER_NONE) {
|
||||
if (getVehicleData(getPlayerData(client).buyingVehicle).ownerType == V_VEHOWNER_BIZ || getVehicleData(getPlayerData(client).buyingVehicle).ownerType == V_VEHOWNER_NONE) {
|
||||
createNewDealershipVehicle(getVehicleData(getPlayerData(client).buyingVehicle).model, getVehicleData(getPlayerData(client).buyingVehicle).spawnPosition, getVehicleData(getPlayerData(client).buyingVehicle).spawnRotation, getVehicleData(getPlayerData(client).buyingVehicle).buyPrice, getVehicleData(getPlayerData(client).buyingVehicle).ownerId);
|
||||
}
|
||||
takePlayerCash(client, getVehicleData(getPlayerData(client).buyingVehicle).buyPrice);
|
||||
updatePlayerCash(client);
|
||||
getVehicleData(getPlayerData(client).buyingVehicle).ownerId = getPlayerCurrentSubAccount(client).databaseId;
|
||||
getVehicleData(getPlayerData(client).buyingVehicle).ownerType = AGRP_VEHOWNER_PLAYER;
|
||||
getVehicleData(getPlayerData(client).buyingVehicle).ownerType = V_VEHOWNER_PLAYER;
|
||||
getVehicleData(getPlayerData(client).buyingVehicle).buyPrice = 0;
|
||||
getVehicleData(getPlayerData(client).buyingVehicle).rentPrice = 0;
|
||||
getVehicleData(getPlayerData(client).buyingVehicle).spawnLocked = false;
|
||||
getPlayerData(client).buyingVehicle = false;
|
||||
messagePlayerSuccess(client, getLocaleString(client, "VehiclePurchaseComplete"));
|
||||
setPlayerBuyingVehicleState(client, AGRP_VEHBUYSTATE_NONE, null, null);
|
||||
setPlayerBuyingVehicleState(client, V_VEHBUYSTATE_NONE, null, null);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -1782,9 +1781,9 @@ function processVehicleBurning() {
|
||||
function cacheAllVehicleItems() {
|
||||
for (let i in getServerData().vehicles) {
|
||||
for (let j in getServerData().items) {
|
||||
if (getItemData(j).ownerType == AGRP_ITEM_OWNER_VEHTRUNK && getItemData(j).ownerId == getServerData().vehicles[i].databaseId) {
|
||||
if (getItemData(j).ownerType == V_ITEM_OWNER_VEHTRUNK && getItemData(j).ownerId == getServerData().vehicles[i].databaseId) {
|
||||
getServerData().vehicles[i].trunkItemCache.push(j);
|
||||
} else if (getItemData(j).ownerType == AGRP_ITEM_OWNER_VEHDASH && getItemData(j).ownerId == getServerData().vehicles[i].databaseId) {
|
||||
} else if (getItemData(j).ownerType == V_ITEM_OWNER_VEHDASH && getItemData(j).ownerId == getServerData().vehicles[i].databaseId) {
|
||||
getServerData().vehicles[i].dashItemCache.push(j);
|
||||
}
|
||||
}
|
||||
@@ -1815,16 +1814,16 @@ function setAllVehicleIndexes() {
|
||||
// ===========================================================================
|
||||
|
||||
function doesVehicleHaveMegaphone(vehicle) {
|
||||
if (getVehicleData(vehicle).ownerType == AGRP_VEHOWNER_JOB) {
|
||||
if (getJobType(getJobIdFromDatabaseId(getVehicleData(vehicle).ownerId)) == AGRP_JOB_POLICE) {
|
||||
if (getVehicleData(vehicle).ownerType == V_VEHOWNER_JOB) {
|
||||
if (getJobType(getJobIdFromDatabaseId(getVehicleData(vehicle).ownerId)) == V_JOB_POLICE) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (getJobType(getJobIdFromDatabaseId(getVehicleData(vehicle).ownerId)) == AGRP_JOB_FIRE) {
|
||||
if (getJobType(getJobIdFromDatabaseId(getVehicleData(vehicle).ownerId)) == V_JOB_FIRE) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (getJobType(getJobIdFromDatabaseId(getVehicleData(vehicle).ownerId)) == AGRP_JOB_MEDICAL) {
|
||||
if (getJobType(getJobIdFromDatabaseId(getVehicleData(vehicle).ownerId)) == V_JOB_MEDICAL) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user