From 3a32326b66fd741f20b3da7a9b96e264162a62ac Mon Sep 17 00:00:00 2001 From: Vortrex <3858226+VortrexFTW@users.noreply.github.com> Date: Sat, 16 Apr 2022 21:46:58 -0500 Subject: [PATCH] Prompt confirm giving veh to clan --- scripts/server/const.js | 1 + scripts/server/gui.js | 29 ++++++++++++++++++++++++++++- scripts/server/vehicle.js | 16 ++++++++++++---- 3 files changed, 41 insertions(+), 5 deletions(-) diff --git a/scripts/server/const.js b/scripts/server/const.js index e50bdd32..efaaf65b 100644 --- a/scripts/server/const.js +++ b/scripts/server/const.js @@ -11,6 +11,7 @@ const VRR_PROMPT_NONE = 0; const VRR_PROMPT_CREATEFIRSTCHAR = 1; const VRR_PROMPT_BIZORDER = 2; +const VRR_PROMPT_GIVEVEHTOCLAN = 3; // Job Types const VRR_JOB_NONE = 0; diff --git a/scripts/server/gui.js b/scripts/server/gui.js index 0d28a6a2..664c0873 100644 --- a/scripts/server/gui.js +++ b/scripts/server/gui.js @@ -85,10 +85,37 @@ function playerPromptAnswerYes(client) { } } else { - showPlayerErrorGUI(client, `You aren't ordering anything for a business!`, `Business Order Canceled`); + showPlayerErrorGUI(client, ``, `Business Order Canceled`); } break; + case VRR_PROMPT_GIVEVEHTOCLAN: + if(!isPlayerInAnyVehicle(client)) { + messagePlayerError(client, getLocaleString(client, "MustBeInVehicle")); + return false; + } + + if(!getVehicleData(getPlayerVehicle(client))) { + messagePlayerError(client, getLocaleString(client, "RandomVehicleCommandsDisabled")); + return false; + } + + if(getVehicleData(getPlayerVehicle(client)).ownerType != VRR_VEHOWNER_PLAYER) { + messagePlayerError(client, getLocaleString(client, "MustOwnVehicle")); + return false; + } + + if(getVehicleData(getPlayerVehicle(client)).ownerId != getPlayerCurrentSubAccount(client).databaseId) { + messagePlayerError(client, getLocaleString(client, "MustOwnVehicle")); + return false; + } + + getVehicleData(getPlayerVehicle(client)).ownerType = VRR_VEHOWNER_CLAN; + getVehicleData(getPlayerVehicle(client)).ownerId = getPlayerCurrentSubAccount(client).clan; + messagePlayerSuccess(client, getLocaleString(client, "GaveVehicleToClan")); + //messageAdmins(`{ALTCOLOUR}${getPlayerName(client)} {MAINCOLOUR}set their {vehiclePurple}${getVehicleName(vehicle)} {MAINCOLOUR}owner to the {clanOrange}${getClanData(clanId).name} {MAINCOLOUR}clan`); + break; + default: break; } diff --git a/scripts/server/vehicle.js b/scripts/server/vehicle.js index 94dcf1b1..9cbe7653 100644 --- a/scripts/server/vehicle.js +++ b/scripts/server/vehicle.js @@ -797,17 +797,25 @@ function setVehicleClanCommand(command, params, client) { } let vehicle = getPlayerVehicle(client); - let clanId = getClanFromParams(params); + let clanId = getPlayerClan(client); if(!getClanData(clanId)) { messagePlayerError(client, "That clan is invalid or doesn't exist!"); return false; } - getVehicleData(vehicle).ownerType = VRR_VEHOWNER_CLAN; - getVehicleData(vehicle).ownerId = getClanData(clanId).databaseId; + if(getVehicleData(vehicle).ownerType != VRR_VEHOWNER_PLAYER) { + messagePlayerError(client, getLocaleString(client, "MustOwnVehicle")); + return false; + } - messageAdmins(`{ALTCOLOUR}${getPlayerName(client)} {MAINCOLOUR}set their {vehiclePurple}${getVehicleName(vehicle)} {MAINCOLOUR}owner to the {clanOrange}${getClanData(clanId).name} {MAINCOLOUR}clan`); + if(getVehicleData(vehicle).ownerId != getPlayerCurrentSubAccount(client).databaseId) { + messagePlayerError(client, getLocaleString(client, "MustOwnVehicle")); + return false; + } + + showPlayerPromptGUI(client, getLocaleString(client, "SetVehicleClanConfirmMessage"), getLocaleString(client, "SetVehicleClanConfirm"), getLocaleString(client, "Yes"), getLocaleString(client, "No")); + getPlayerData(client).promptType = VRR_PROMPT_GIVEVEHTOCLAN; getVehicleData(vehicle).needsSaved = true; }