getRawPoiListByLevel
Definition
-- @/lua/ge/extensions/gameplay/rawPois.lua:30
local function getRawPoiListByLevel(levelIdentifier)
if not levelIdentifier then
return {}, rawPoiGeneration
end
-- when in the tutorial, only add the desired elements
if career_career.isActive() and levelIdentifier == "west_coast_usa" then
-- show tutorial step specific pois
if not career_modules_linearTutorial.getTutorialFlag("arrivedAtFuelstation") then
local gasStation = freeroam_facilities.getGasStation("apex")
local elements = {
freeroam_gasStations.formatGasStationPoi(gasStation)
}
return elements, rawPoiGeneration
elseif not career_modules_linearTutorial.getTutorialFlag("completedTutorialMission") then
local elements = {}
gameplay_missions_missions.formatMissionToRawPoi(gameplay_missions_missions.getMissionById("west_coast_usa/arrive/005-ArriveTutorial"), elements, levelIdentifier)
return elements, rawPoiGeneration
elseif not career_modules_linearTutorial.getTutorialFlag("purchasedFirstCar") then
local elements = {}
local dealer = freeroam_facilities.getDealership("quarrysideAutoSales")
--manually get only the inspectVehicle POI, used to buy the first vehicle
local inspectVehiclePoi = career_modules_inspectVehicle.getInspectVehiclePoi()
table.insert(elements, inspectVehiclePoi)
freeroam_facilities.walkingMarkerFormatFacility(dealer, elements)
return elements, rawPoiGeneration
elseif not career_modules_linearTutorial.getTutorialFlag("modifiedFirstCar") then
local elements = {}
local garage = freeroam_facilities.getFacility("computer", "servicestationGarageComputer")
freeroam_facilities.formatFacilityToRawPoi(garage, elements)
return elements, rawPoiGeneration
end
-- only show dealership when car not bought
if not career_career.hasBoughtStarterVehicle() then
local elements = {}
local dealer = freeroam_facilities.getDealership("quarrysideAutoSales")
freeroam_facilities.walkingMarkerFormatFacility(dealer, elements)
--manually get only the inspectVehicle POI, used to buy the first vehicle
local inspectVehiclePoi = career_modules_inspectVehicle.getInspectVehiclePoi()
table.insert(elements, inspectVehiclePoi)
return elements, rawPoiGeneration
end
end
-- otherwise create poi list as usual
if not rawPoiListByLevel[levelIdentifier] then
local elementsUnchecked, elements = {}, {}
-- call all extensions to add their POIs
extensions.hook("onGetRawPoiListForLevel",levelIdentifier, elementsUnchecked)
for _, e in ipairs(elementsUnchecked) do
-- sanity check
-- make clustering true by default
if e.markerInfo.bigmapMarker and e.markerInfo.bigmapMarker.cluster == nil then
e.markerInfo.bigmapMarker.cluster = true
end
if (not career_modules_testDrive or not career_modules_testDrive.isActive() or (e.data and e.data.type == "testDriveEnd")) then
table.insert(elements, e)
end
end
rawPoiListByLevel[levelIdentifier] = elements
end
return rawPoiListByLevel[levelIdentifier], rawPoiGeneration
end
Callers
@/lua/ge/extensions/freeroam/bigMapMarkers.lua
local function getAllClustersBySettings(settingsId)
local elements, rawPoiGeneration = gameplay_rawPois.getRawPoiListByLevel(getCurrentLevelIdentifier())
if clusterGeneration < rawPoiGeneration then
@/lua/ge/extensions/gameplay/playmodeMarkers.lua
if not playmodeClusters then
local pois, rawPoiGeneration = gameplay_rawPois.getRawPoiListByLevel(getCurrentLevelIdentifier())
@/lua/ge/extensions/freeroam/vueBigMap.lua
local groupData = buildGroupData()
for _, poi in ipairs(gameplay_rawPois.getRawPoiListByLevel(level)) do
if poi.markerInfo.bigmapMarker then
@/lua/ge/extensions/freeroam/bigMapPoiProvider.lua
gameplay_rawPois.clear()
for _, poi in ipairs(gameplay_rawPois.getRawPoiListByLevel(level)) do
if poi.markerInfo.bigmapMarker then
@/lua/ge/extensions/freeroam/bigMapMode.lua
local function includeClustersInBbox(bbox)
for i, poi in ipairs(gameplay_rawPois.getRawPoiListByLevel(getCurrentLevelIdentifier())) do
if poi.markerInfo.bigmapMarker then
-- if none has been found, use the bigmapMarkers instead
for i, poi in ipairs(gameplay_rawPois.getRawPoiListByLevel(getCurrentLevelIdentifier())) do
if poi.id == poiId and poi.markerInfo.bigmapMarker then
for _, poi in ipairs(gameplay_rawPois.getRawPoiListByLevel(getCurrentLevelIdentifier())) do
if poiId == poi.id then