diff --git a/scripts/server/business.js b/scripts/server/business.js index e4e1fef6..5c23034b 100644 --- a/scripts/server/business.js +++ b/scripts/server/business.js @@ -1324,6 +1324,8 @@ function createBusinessEntrancePickup(businessId) { getBusinessData(businessId).entrancePickup = createGamePickup(pickupModelId, getBusinessData(businessId).entrancePosition, getGameConfig().pickupTypes[getServerGame()].business); setElementOnAllDimensions(getBusinessData(businessId).entrancePickup, false); setElementDimension(getBusinessData(businessId).entrancePickup, getBusinessData(businessId).entranceDimension); + setElementStreamInDistance(getBusinessData(businessId).entrancePickup, getGlobalConfig().businessPickupStreamInDistance); + setElementStreamOutDistance(getBusinessData(businessId).entrancePickup, getGlobalConfig().businessPickupStreamOutDistance); updateBusinessPickupLabelData(businessId); addToWorld(getBusinessData(businessId).entrancePickup); } @@ -1346,11 +1348,8 @@ function createBusinessEntranceBlip(businessId) { getBusinessData(businessId).entranceBlip = createGameBlip(getBusinessData(businessId).entrancePosition, blipModelId, 1, getColourByName("businessBlue")); setElementOnAllDimensions(getBusinessData(businessId).entranceBlip, false); setElementDimension(getBusinessData(businessId).entranceBlip, getBusinessData(businessId).entranceDimension); - //getBusinessData(businessId).entranceBlip.streamInDistance = 300; - //getBusinessData(businessId).entranceBlip.streamOutDistance = 350; - //getBusinessData(businessId).entranceBlip.interior = getBusinessData(businessId).entranceInterior; - //setEntityData(getBusinessData(businessId).entranceBlip, "vrr.owner.type", VRR_BLIP_BUSINESS_ENTRANCE, false); - //setEntityData(getBusinessData(businessId).entranceBlip, "vrr.owner.id", businessId, false); + setElementStreamInDistance(getBusinessData(businessId).entranceBlip, getGlobalConfig().businessBlipStreamInDistance); + setElementStreamOutDistance(getBusinessData(businessId).entranceBlip, getGlobalConfig().businessBlipStreamOutDistance); addToWorld(getBusinessData(businessId).entranceBlip); } } @@ -1373,9 +1372,8 @@ function createBusinessExitPickup(businessId) { getBusinessData(businessId).exitPickup = createGamePickup(pickupModelId, getBusinessData(businessId).exitPosition, getGameConfig().pickupTypes[getServerGame()].business); setElementDimension(getBusinessData(businessId).exitPickup, getBusinessData(businessId).exitDimension); setElementOnAllDimensions(getBusinessData(businessId).exitPickup, false); - //setEntityData(getBusinessData(businessId).entranceBlip, "vrr.owner.type", VRR_PICKUP_BUSINESS_EXIT, false); - //setEntityData(getBusinessData(businessId).entranceBlip, "vrr.owner.id", businessId, false); - //getBusinessData(businessId).exitPickup.interior = getBusinessData(businessId).exitInterior; + setElementStreamInDistance(getBusinessData(businessId).exitPickup, getGlobalConfig().businessPickupStreamInDistance); + setElementStreamOutDistance(getBusinessData(businessId).exitPickup, getGlobalConfig().businessPickupStreamOutDistance); updateBusinessPickupLabelData(businessId); addToWorld(getBusinessData(businessId).exitPickup); } @@ -1400,9 +1398,8 @@ function createBusinessExitBlip(businessId) { getBusinessData(businessId).exitBlip = createGameBlip(getBusinessData(businessId).exitPosition, blipModelId, 1, getColourByName("businessBlue")); setElementDimension(getBusinessData(businessId).exitBlip, getBusinessData(businessId).entranceDimension); setElementOnAllDimensions(getBusinessData(businessId).exitBlip, false); - //getBusinessData(businessId).exitBlip.interior = getBusinessData(businessId).exitInterior; - //setEntityData(getBusinessData(businessId).exitBlip, "vrr.owner.type", VRR_BLIP_BUSINESS_EXIT, false); - //setEntityData(getBusinessData(businessId).exitBlip, "vrr.owner.id", businessId, false); + setElementStreamInDistance(getBusinessData(businessId).exitBlip, getGlobalConfig().businessBlipStreamInDistance); + setElementStreamOutDistance(getBusinessData(businessId).exitBlip, getGlobalConfig().businessBlipStreamOutDistance); addToWorld(getBusinessData(businessId).exitBlip); } } diff --git a/scripts/server/config.js b/scripts/server/config.js index 78cd89a2..65474917 100644 --- a/scripts/server/config.js +++ b/scripts/server/config.js @@ -80,6 +80,13 @@ let globalConfig = { VRR_ITEM_USETYPE_VEHTIRE, ], vehicleInactiveRespawnDelay: 1800000, // 20 minutes + housePickupStreamInDistance: 50, + housePickupStreamOutDistance: 75, + businessPickupStreamInDistance: 50, + businessPickupStreamOutDistance: 75, + jobPickupStreamInDistance: 50, + jobPickupStreamOutDistance: 75, + vehicleTrunkRearDistance: 3, }; // =========================================================================== diff --git a/scripts/server/event.js b/scripts/server/event.js index 9aee4443..ca3008e4 100644 --- a/scripts/server/event.js +++ b/scripts/server/event.js @@ -95,9 +95,6 @@ function onPlayerQuit(event, client, quitReasonId) { } messageDiscordEventChannel(`👋 ${getPlayerDisplayForConsole(client)} has left the server.`); - - clearTemporaryVehicles(); - clearTemporaryPeds(); } // =========================================================================== diff --git a/scripts/server/house.js b/scripts/server/house.js index 0031955e..8ac3b0ff 100644 --- a/scripts/server/house.js +++ b/scripts/server/house.js @@ -861,6 +861,9 @@ function createHouseEntrancePickup(houseId) { getHouseData(houseId).entrancePickup = createGamePickup(pickupModelId, getHouseData(houseId).entrancePosition, getGameConfig().pickupTypes[getServerGame()].house); setElementOnAllDimensions(getHouseData(houseId).entrancePickup, false); setElementDimension(getHouseData(houseId).entrancePickup, getHouseData(houseId).entranceDimension); + setElementStreamInDistance(getBusinessData(businessId).entrancePickup, getGlobalConfig().housePickupStreamInDistance); + setElementStreamOutDistance(getBusinessData(businessId).entrancePickup, getGlobalConfig().housePickupStreamOutDistance); + setEntityData(getHouseData(houseId).entrancePickup, "vrr.owner.type", VRR_PICKUP_HOUSE_ENTRANCE, false); setEntityData(getHouseData(houseId).entrancePickup, "vrr.owner.id", houseId, false); setEntityData(getHouseData(houseId).entrancePickup, "vrr.label.type", VRR_LABEL_HOUSE, true); @@ -897,8 +900,8 @@ function createHouseEntranceBlip(houseId) { getHouseData(houseId).entranceBlip = createGameBlip(getHouseData(houseId).entrancePosition, blipModelId, 1, getColourByName("houseGreen")); setElementDimension(getHouseData(houseId).entranceBlip, getHouseData(houseId).entranceDimension); setElementOnAllDimensions(getHouseData(houseId).entranceBlip, false); - //getHouseData(houseId).entranceBlip.streamInDistance = 300; - //getHouseData(houseId).entranceBlip.streamOutDistance = 350; + setElementStreamInDistance(getBusinessData(businessId).entranceBlip, getGlobalConfig().houseBlipStreamInDistance); + setElementStreamOutDistance(getBusinessData(businessId).entranceBlip, getGlobalConfig().houseBlipStreamOutDistance); setEntityData(getHouseData(houseId).entranceBlip, "vrr.owner.type", VRR_BLIP_HOUSE_ENTRANCE, false); setEntityData(getHouseData(houseId).entranceBlip, "vrr.owner.id", houseId, false); addToWorld(getHouseData(houseId).entranceBlip); @@ -923,6 +926,8 @@ function createHouseExitPickup(houseId) { getHouseData(houseId).exitPickup = createGamePickup(pickupModelId, getHouseData(houseId).exitPosition, getGameConfig().pickupTypes[getServerGame()].house); setElementDimension(getHouseData(houseId).exitPickup, getHouseData(houseId).exitDimension); setElementOnAllDimensions(getHouseData(houseId).exitPickup, false); + setElementStreamInDistance(getBusinessData(businessId).exitPickup, getGlobalConfig().housePickupStreamInDistance); + setElementStreamOutDistance(getBusinessData(businessId).exitPickup, getGlobalConfig().housePickupStreamOutDistance); setEntityData(getHouseData(houseId).exitPickup, "vrr.owner.type", VRR_PICKUP_HOUSE_EXIT, false); setEntityData(getHouseData(houseId).exitPickup, "vrr.owner.id", houseId, false); setEntityData(getHouseData(houseId).exitPickup, "vrr.label.type", VRR_LABEL_EXIT, true); @@ -949,6 +954,8 @@ function createHouseExitBlip(houseId) { getHouseData(houseId).exitBlip = createGameBlip(blipModelId, getHouseData(houseId).exitPosition, 1, getColourByName("houseGreen")); setElementDimension(getHouseData(houseId).exitBlip, getHouseData(houseId).entranceDimension); setElementOnAllDimensions(getHouseData(houseId).exitBlip, false); + setElementStreamInDistance(getBusinessData(businessId).exitBlip, getGlobalConfig().houseBlipStreamInDistance); + setElementStreamOutDistance(getBusinessData(businessId).exitBlip, getGlobalConfig().houseBlipStreamOutDistance); setEntityData(getHouseData(houseId).exitBlip, "vrr.owner.type", VRR_BLIP_HOUSE_EXIT, false); setEntityData(getHouseData(houseId).exitBlip, "vrr.owner.id", houseId, false); addToWorld(getHouseData(houseId).exitBlip); diff --git a/scripts/server/native/connected.js b/scripts/server/native/connected.js index 7f369e5b..e0f36a8e 100644 --- a/scripts/server/native/connected.js +++ b/scripts/server/native/connected.js @@ -424,6 +424,46 @@ function setElementOnAllDimensions(element, state) { // =========================================================================== +function setElementDefaultExistance(element, state) { + if(!isNull(element) && element != false) { + element.defaultExistance = state; + } +} + +// =========================================================================== + +function setElementExistsFor(element, client, state) { + if(!isNull(element) && element != false) { + element.setExistsFor(client, state); + } +} + +// =========================================================================== + +function clearElementExistsFor(element) { + if(!isNull(element) && element != false) { + element.clearExistsFor(); + } +} + +// =========================================================================== + +function setElementStreamInDistance(element, distance) { + if(!isNull(element) && element != false) { + element.streamInDistance = distance; + } +} + +// =========================================================================== + +function setElementStreamOutDistance(element, distance) { + if(!isNull(element) && element != false) { + element.streamOutDistance = distance; + } +} + +// =========================================================================== + function destroyGameElement(element) { if(!isNull(element) && element != false) { destroyElement(element);