Delete job items on stop working
This commit is contained in:
@@ -533,6 +533,7 @@ function stopWorking(client) {
|
|||||||
getPlayerCurrentSubAccount(client).lastJobVehicle = false;
|
getPlayerCurrentSubAccount(client).lastJobVehicle = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
deleteJobItems(client);
|
||||||
restorePlayerJobLockerItems(client);
|
restorePlayerJobLockerItems(client);
|
||||||
|
|
||||||
let jobId = getPlayerCurrentSubAccount(client).job;
|
let jobId = getPlayerCurrentSubAccount(client).job;
|
||||||
@@ -608,7 +609,7 @@ function jobUniformCommand(command, params, client) {
|
|||||||
|
|
||||||
messagePlayerSuccess(client, `You have been given a [#AAAAAA]${uniforms[uniformId-1].name} [#FFFFFF]uniform and you can put it on from your inventory.`);
|
messagePlayerSuccess(client, `You have been given a [#AAAAAA]${uniforms[uniformId-1].name} [#FFFFFF]uniform and you can put it on from your inventory.`);
|
||||||
|
|
||||||
let itemId = createItem(getItemTypeFromParams("Uniform"), getJobData(jobId).uniforms[uniformId].skin, AG_ITEM_OWNER_PLAYER, getPlayerCurrentSubAccount(client).databaseId);
|
let itemId = createItem(getItemTypeFromParams("Outfit"), getJobData(jobId).uniforms[uniformId-1].skin, AG_ITEM_OWNER_PLAYER, getPlayerCurrentSubAccount(client).databaseId);
|
||||||
let freeSlot = getPlayerFirstEmptyHotBarSlot(client);
|
let freeSlot = getPlayerFirstEmptyHotBarSlot(client);
|
||||||
getPlayerData(client).hotBarItems[freeSlot] = itemId;
|
getPlayerData(client).hotBarItems[freeSlot] = itemId;
|
||||||
getPlayerData(client).jobEquipmentCache.push(itemId);
|
getPlayerData(client).jobEquipmentCache.push(itemId);
|
||||||
@@ -1072,24 +1073,40 @@ function startJobRoute(client) {
|
|||||||
|
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
|
|
||||||
function stopJobRoute(client, successful = false) {
|
function stopJobRoute(client, successful = false, alertPlayer = true) {
|
||||||
stopReturnToJobVehicleCountdown(client);
|
stopReturnToJobVehicleCountdown(client);
|
||||||
sendPlayerStopJobRoute(client);
|
sendPlayerStopJobRoute(client);
|
||||||
|
|
||||||
if(doesPlayerHaveJobType(client, AG_JOB_BUS)) {
|
if(doesPlayerHaveJobType(client, AG_JOB_BUS)) {
|
||||||
respawnVehicle(getPlayerData(client).busRouteVehicle);
|
respawnVehicle(getPlayerData(client).jobRouteVehicle);
|
||||||
messagePlayerAlert(client, `You stopped the ${getBusRouteData(getPlayerData(client).busRouteIsland, getPlayerData(client).busRoute).name} bus route! Your bus has been returned to the bus depot.`, getColourByName("yellow"));
|
getPlayerData(client).jobRouteVehicle = false;
|
||||||
getPlayerData(client).busRouteVehicle = false;
|
getPlayerData(client).jobRoute = false;
|
||||||
getPlayerData(client).busRoute = false;
|
getPlayerData(client).jobRouteStop = false;
|
||||||
getPlayerData(client).busRouteStop = false;
|
getPlayerData(client).jobRouteIsland = false;
|
||||||
getPlayerData(client).busRouteIsland = false;
|
|
||||||
|
if(alertPlayer) {
|
||||||
|
messagePlayerAlert(client, `You stopped the ${getBusRouteData(getPlayerData(client).jobRouteIsland, getPlayerData(client).jobRoute).name} bus route! Your bus has been returned to the bus depot.`, getColourByName("yellow"));
|
||||||
|
}
|
||||||
} else if(doesPlayerHaveJobType(client, AG_JOB_GARBAGE)) {
|
} else if(doesPlayerHaveJobType(client, AG_JOB_GARBAGE)) {
|
||||||
respawnVehicle(getPlayerData(client).garbageRouteVehicle);
|
respawnVehicle(getPlayerData(client).jobRouteVehicle);
|
||||||
messagePlayerAlert(client, `You stopped the ${getBusRouteData(getPlayerData(client).garbageRouteIsland, getPlayerData(client).garbageRoute).name} garbage route! Your trashmaster has been returned to the bus depot.`, getColourByName("yellow"));
|
getPlayerData(client).jobRouteVehicle = false;
|
||||||
getPlayerData(client).garbageRouteVehicle = false;
|
getPlayerData(client).jobRoute = false;
|
||||||
getPlayerData(client).garbageRoute = false;
|
getPlayerData(client).jobRouteStop = false;
|
||||||
getPlayerData(client).garbageRouteStop = false;
|
getPlayerData(client).jobRouteIsland = false;
|
||||||
getPlayerData(client).garbageRouteIsland = false;
|
|
||||||
|
if(alertPlayer) {
|
||||||
|
messagePlayerAlert(client, `You stopped the ${getGarbageRouteData(getPlayerData(client).jobRouteIsland, getPlayerData(client).jobRoute).name} garbage route! Your trashmaster has been returned to the bus depot.`, getColourByName("yellow"));
|
||||||
|
}
|
||||||
|
} else if(doesPlayerHaveJobType(client, AG_JOB_POLICE)) {
|
||||||
|
respawnVehicle(getPlayerData(client).jobRouteVehicle);
|
||||||
|
getPlayerData(client).jobRouteVehicle = false;
|
||||||
|
getPlayerData(client).jobRoute = false;
|
||||||
|
getPlayerData(client).jobRouteStop = false;
|
||||||
|
getPlayerData(client).jobRouteIsland = false;
|
||||||
|
|
||||||
|
if(alertPlayer) {
|
||||||
|
messagePlayerAlert(client, `You stopped the ${getPolicePatrolRouteData(getPlayerData(client).jobRouteIsland, getPlayerData(client).jobRoute).name} patrol route! Your police car has been returned to the station.`, getColourByName("yellow"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1464,12 +1481,12 @@ function createJobLocationPickup(jobId, locationId) {
|
|||||||
|
|
||||||
getJobData(jobId).locations[locationId].pickup = gta.createPickup(pickupModelId, getJobData(jobId).locations[locationId].position, getGameConfig().pickupTypes[getServerGame()].job);
|
getJobData(jobId).locations[locationId].pickup = gta.createPickup(pickupModelId, getJobData(jobId).locations[locationId].position, getGameConfig().pickupTypes[getServerGame()].job);
|
||||||
getJobData(jobId).locations[locationId].pickup.dimension = getJobData(jobId).locations[locationId].dimension;
|
getJobData(jobId).locations[locationId].pickup.dimension = getJobData(jobId).locations[locationId].dimension;
|
||||||
addToWorld(getJobData(jobId).locations[locationId].pickup);
|
|
||||||
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, "ag.owner.type", AG_PICKUP_JOB, false);
|
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, "ag.owner.type", AG_PICKUP_JOB, false);
|
||||||
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, locationId, false);
|
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, "ag.owner.id", locationId, false);
|
||||||
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, AG_LABEL_JOB, true);
|
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, "ag.label.type", AG_LABEL_JOB, true);
|
||||||
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, getServerData().jobs[jobId].name, true);
|
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, "ag.label.name", getJobData(jobId).name, true);
|
||||||
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, jobId, true);
|
setEntityData(getServerData().jobs[jobId].locations[locationId].pickup, "ag.label.jobType", jobId, true);
|
||||||
|
addToWorld(getJobData(jobId).locations[locationId].pickup);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1576,4 +1593,19 @@ function playerArrivedAtJobRouteStop(client) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
function deleteJobItems(client) {
|
||||||
|
for(let i in getPlayerData(client).jobEquipmentCache) {
|
||||||
|
for(let j in getPlayerData(client).hotBarItems) {
|
||||||
|
if(getPlayerData(client).hotBarItems[j] == getPlayerData(client).jobEquipmentCache[i]) {
|
||||||
|
getPlayerData(client).hotBarItems[j] = -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
deleteItem(getPlayerData(client).jobEquipmentCache[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
// ---------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------
|
||||||
Reference in New Issue
Block a user