Create biz pickups/blips using new utils

This commit is contained in:
Vortrex
2020-12-28 12:50:55 -06:00
parent 83f6167f93
commit 0457c74c8a

View File

@@ -102,6 +102,11 @@ function createBusinessCommand(command, params, client) {
sendBusinessLabelToPlayers(getServerData().businesses.length-1); sendBusinessLabelToPlayers(getServerData().businesses.length-1);
createBusinessEntrancePickup(getServerData().businesses.length-1);
createBusinessExitPickup(getServerData().businesses.length-1);
createBusinessEntranceBlip(getServerData().businesses.length-1);
createBusinessExitBlip(getServerData().businesses.length-1);
messageClientSuccess(client, `Business [#0099FF]${tempBusinessData.name} [#FFFFFF]created!`); messageClientSuccess(client, `Business [#0099FF]${tempBusinessData.name} [#FFFFFF]created!`);
} }
@@ -147,14 +152,6 @@ function createBusiness(name, entrancePosition, exitPosition, entrancePickupMode
tempBusinessData.exitInterior = exitInteriorId; tempBusinessData.exitInterior = exitInteriorId;
tempBusinessData.exitDimension = exitVirtualWorld; tempBusinessData.exitDimension = exitVirtualWorld;
if(entrancePickupModel != -1) {
tempBusinessData.entrancePickup = gta.createPickup(entrancePickupModel, entrancePosition, getGameConfig().pickupTypes[getServerGame()].business);
}
if(entranceBlipModel != -1) {
tempBusinessData.entranceBlip = gta.createBlip(entrancePosition, entranceBlipModel, 1, getColourByName("lightPurple"));
}
return tempBusinessData; return tempBusinessData;
} }
@@ -168,7 +165,7 @@ function deleteBusinessCommand(command, params, client) {
return false; return false;
} }
messageClientSuccess(client, `Business [#0099FF]${tempBusinessData.name} [#FFFFFF]deleted!`); messageClientSuccess(client, `Business [#0099FF]${getBusinessData(businessId).name} [#FFFFFF]deleted!`);
deleteBusiness(businessId, getPlayerData(client).accountData.databaseId); deleteBusiness(businessId, getPlayerData(client).accountData.databaseId);
} }
@@ -378,16 +375,10 @@ function setBusinessPickupCommand(command, params, client) {
getBusinessData(businessId).entrancePickupModel = toInteger(typeParam); getBusinessData(businessId).entrancePickupModel = toInteger(typeParam);
} }
if(getBusinessData(businessId).entrancePickupModel != -1) { deleteBusinessEntrancePickup(businessId);
if(getBusinessData(businessId).entrancePickup != null) { deleteBusinessExitPickup(businessId);
destroyElement(getBusinessData(businessId).entrancePickup); createBusinessEntrancePickup(businessId);
getBusinessData(businessId).entrancePickup = null; createBusinessExitPickup(businessId);
}
getBusinessData(businessId).entrancePickup = gta.createPickup(getBusinessData(businessId).entrancePickupModel, getBusinessData(businessId).entrancePosition);
getBusinessData(businessId).pickup.setData("ag.ownerType", AG_PICKUP_BUSINESS, true);
getBusinessData(businessId).pickup.setData("ag.ownerId", i, true);
}
messageClientSuccess(client, `Business '${getBusinessData(businessId).name}' pickup display set to '${toLowerCase(typeParam)}'!`); messageClientSuccess(client, `Business '${getBusinessData(businessId).name}' pickup display set to '${toLowerCase(typeParam)}'!`);
} }
@@ -417,14 +408,10 @@ function setBusinessBlipCommand(command, params, client) {
getBusinessData(businessId).entranceBlipModel = toInteger(typeParam); getBusinessData(businessId).entranceBlipModel = toInteger(typeParam);
} }
if(getBusinessData(businessId).entranceBlipModel != -1) { deleteBusinessEntranceBlip(businessId);
if(getBusinessData(businessId).entranceBlip != null) { deleteBusinessExitBlip(businessId);
destroyElement(getBusinessData(businessId).entranceBlip); createBusinessEntranceBlip(businessId);
getBusinessData(businessId).entranceBlip = null; createBusinessExitBlip(businessId);
}
getBusinessData(businessId).entranceBlip = gta.createPickup(getBusinessData(businessId).entranceBlipModel, getBusinessData(businessId).entrancePosition);
}
messageClientSuccess(client, `Business '${getBusinessData(businessId).name}' blip display set to '${toLowerCase(typeParam)}'!`); messageClientSuccess(client, `Business '${getBusinessData(businessId).name}' blip display set to '${toLowerCase(typeParam)}'!`);
} }
@@ -632,10 +619,12 @@ function createBusinessEntrancePickup(businessId) {
} }
getServerData().businesses[businessId].entrancePickup = gta.createPickup(pickupModelId, getServerData().businesses[businessId].entrancePosition); getServerData().businesses[businessId].entrancePickup = gta.createPickup(pickupModelId, getServerData().businesses[businessId].entrancePosition);
//getServerData().businesses[businessId].entrancePickup.dimension = getServerData().businesses[i].entranceDimension; getServerData().businesses[businessId].entrancePickup.onAllDimensions = false;
//getServerData().businesses[businessId].entrancePickup.interior = getServerData().businesses[i].entranceInterior; getServerData().businesses[businessId].entrancePickup.dimension = getServerData().businesses[i].entranceDimension;
getServerData().businesses[businessId].entrancePickup.setData("ag.ownerType", AG_PICKUP_BUSINESS, true); getServerData().businesses[businessId].entrancePickup.interior = getServerData().businesses[i].entranceInterior;
getServerData().businesses[businessId].entrancePickup.setData("ag.ownerId", businessId, true); //getServerData().pickups[getServerData().businesses[businessId].entrancePickup.id] = new serverClasses.pickupData(getServerData().pickups[getServerData().businesses[businessId].entrancePickup, AG_PICKUP_BUSINESS, businessId
getServerData().businesses[businessId].entrancePickup.setData("ag.ownerType", AG_PICKUP_BUSINESS, false);
getServerData().businesses[businessId].entrancePickup.setData("ag.ownerId", businessId, false);
} }
} }
@@ -698,6 +687,14 @@ function removePlayersFromBusiness(businessId) {
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
function removePlayerFromBusinesses(client) {
if(isPlayerInAnyBusiness(client)) {
exitBusiness(client);
}
}
// ---------------------------------------------------------------------------
function exitBusiness(client) { function exitBusiness(client) {
let businessId = getEntityData(client, "ag.inBusiness"); let businessId = getEntityData(client, "ag.inBusiness");
if(isPlayerSpawned(client)) { if(isPlayerSpawned(client)) {
@@ -705,6 +702,7 @@ function exitBusiness(client) {
triggerNetworkEvent("ag.dimension", client, getServerData().businesses[businessId].entranceDimension); triggerNetworkEvent("ag.dimension", client, getServerData().businesses[businessId].entranceDimension);
triggerNetworkEvent("ag.position", client, getServerData().businesses[businessId].entrancePosition); triggerNetworkEvent("ag.position", client, getServerData().businesses[businessId].entrancePosition);
} }
removeEntityData(client, "ag.inBusiness");
} }
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
@@ -828,3 +826,33 @@ function deleteBusinessExitBlip(businessId) {
} }
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
function reloadAllBusinessesCommand(command, params, client) {
let clients = getClients();
for(let i in clients) {
if(isPlayerInAnyBusiness(clients[i])) {
removePlayerFromBusinesses(clients[i]);
}
}
for(let i in getServerData().businesses) {
deleteBusinessExitBlip(i);
deleteBusinessEntranceBlip(i);
deleteBusinessExitPickup(i);
deleteBusinessEntrancePickup(i);
}
//forceAllPlayersToStopWorking();
getServerData().businesses = null;
getServerData().businesses = loadBusinessesFromDatabase();
createAllBusinessPickups();
createAllBusinessBlips();
for(let i in clients) {
sendAllBusinessLabelsToPlayer(clients[i]);
}
messageAdminAction(`All businesses have been reloaded by an admin!`);
}
// ---------------------------------------------------------------------------