Fix vehicle buying
This commit is contained in:
@@ -1421,66 +1421,69 @@ function processVehiclePurchasing() {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
getClients().forEach((client) => {
|
|
||||||
if(!isPlayerLoggedIn(client)) {
|
|
||||||
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!isPlayerSpawned(client)) {
|
|
||||||
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!getPlayerData(client)) {
|
|
||||||
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!getPlayerData(client).buyingVehicle) {
|
|
||||||
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!isPlayerInAnyVehicle(client)) {
|
|
||||||
if(getPlayerData(client).buyingVehicle != false) {
|
|
||||||
messagePlayerError(client, getLocaleString(client, "DealershipPurchaseExitedVehicle"));
|
|
||||||
respawnVehicle(getPlayerData(client).buyingVehicle);
|
|
||||||
getPlayerData(client).buyingVehicle = false;
|
|
||||||
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(getDistance(getVehiclePosition(getPlayerData(client).buyingVehicle), getVehicleData(getPlayerData(client).buyingVehicle).spawnPosition) > getGlobalConfig().buyVehicleDriveAwayDistance) {
|
|
||||||
if(getPlayerCurrentSubAccount(client).cash < getVehicleData(getPlayerData(client).buyingVehicle).buyPrice) {
|
|
||||||
messagePlayerError(client, getLocaleString(client, "VehiclePurchaseNotEnoughMoney"));
|
|
||||||
respawnVehicle(getPlayerData(client).buyingVehicle);
|
|
||||||
getPlayerData(client).buyingVehicle = false;
|
|
||||||
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
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 = VRR_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, VRR_VEHBUYSTATE_NONE, null, null);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ===========================================================================
|
// ===========================================================================
|
||||||
|
|
||||||
|
function checkVehicleBuying(client) {
|
||||||
|
if(!isPlayerLoggedIn(client)) {
|
||||||
|
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!isPlayerSpawned(client)) {
|
||||||
|
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!getPlayerData(client)) {
|
||||||
|
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!getPlayerData(client).buyingVehicle) {
|
||||||
|
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!isPlayerInAnyVehicle(client)) {
|
||||||
|
if(getPlayerData(client).buyingVehicle != false) {
|
||||||
|
messagePlayerError(client, getLocaleString(client, "DealershipPurchaseExitedVehicle"));
|
||||||
|
respawnVehicle(getPlayerData(client).buyingVehicle);
|
||||||
|
getPlayerData(client).buyingVehicle = false;
|
||||||
|
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(getDistance(getVehiclePosition(getPlayerData(client).buyingVehicle), getVehicleData(getPlayerData(client).buyingVehicle).spawnPosition) > getGlobalConfig().buyVehicleDriveAwayDistance) {
|
||||||
|
if(getPlayerCurrentSubAccount(client).cash < getVehicleData(getPlayerData(client).buyingVehicle).buyPrice) {
|
||||||
|
messagePlayerError(client, getLocaleString(client, "VehiclePurchaseNotEnoughMoney"));
|
||||||
|
respawnVehicle(getPlayerData(client).buyingVehicle);
|
||||||
|
getPlayerData(client).buyingVehicle = false;
|
||||||
|
setPlayerBuyingVehicleState(client, VRR_VEHBUYSTATE_NONE, null, null);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
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 = VRR_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, VRR_VEHBUYSTATE_NONE, null, null);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ===========================================================================
|
||||||
|
|
||||||
function processVehicleBurning() {
|
function processVehicleBurning() {
|
||||||
let vehicles = getElementsByType(ELEMENT_VEHICLE);
|
let vehicles = getElementsByType(ELEMENT_VEHICLE);
|
||||||
for(let i in vehicles) {
|
for(let i in vehicles) {
|
||||||
|
|||||||
Reference in New Issue
Block a user