GE Lua Documentation

Press F to search!

sendCurrentLevelMissionsToBigmap

Definition


-- @/lua/ge/extensions/freeroam/bigMapPoiProvider.lua:642

M.sendCurrentLevelMissionsToBigmap = function()
  -- Invalidate cache when this function is called
  invalidateCache()

  local data = {poiData = {}, levelData = {}, branchIcons = getBranchIcons()}
  local level = getCurrentLevelIdentifier()

  -- Check if we can use cached data
  if isCacheValid() then
    data.poiData = cachedPoiData
    data.filterData = cachedFilters
  else
    -- Generate cache data
    generateCacheData()
    data.poiData = cachedPoiData
    data.filterData = cachedFilters
  end

  for _, lvl in ipairs(core_levels.getList()) do
    if string.lower(lvl.levelName) == getCurrentLevelIdentifier() then
      data.levelData = lvl
    end
  end
  data.gameMode = "freeroam"
  if career_career and career_career.isActive() then
    data.gameMode = "career"
  end
  if gameplay_missions_missionManager.getForegroundMissionId() then
    data.gameMode = "mission"
  end

  -- Update group visibility for cached data
  if cachedGroupData then
    for groupKey, gr in pairs(cachedGroupData) do
      gr.visible = M.getGroupVisibility(groupKey)
      gr.groupKey = groupKey
    end
  end

  -- Set up data rules and filter data
  if career_career and career_career.isActive() then
    data.rules = {
      canSetRoute = not career_modules_testDrive.isActive()
    }

    if career_modules_delivery_general.isDeliveryModeActive() then
      data.selectedFilterKey = "delivery"
    end
  else
    data.rules = {
      canSetRoute = true
    }
  end
  freeroam_bigMapMode.setOnlyIdsVisible(M.getAllActiveGroupPoiIds())
  guihooks.trigger("BigmapMissionData", data)
end

Callers

@/lua/ge/extensions/freeroam/bigMapPoiProvider.lua
  M.setGroupVisibility(groupKey, not currentState)
  --M.sendCurrentLevelMissionsToBigmap()
  --gameplay_rawPois.clear()
  if not isCacheValid() then
    M.sendCurrentLevelMissionsToBigmap()
  end
  if not isCacheValid() then
    M.sendCurrentLevelMissionsToBigmap()
  end
  if not isCacheValid() then
    M.sendCurrentLevelMissionsToBigmap()
  end
  if not isCacheValid() then
    M.sendCurrentLevelMissionsToBigmap()
  end
@/ui/modules/bigmap/bigmap.js
    bngApi.engineLua("if freeroam_bigMapPoiProvider then freeroam_bigMapPoiProvider.sendMissionLocationsToMinimap() end");
    bngApi.engineLua("if freeroam_bigMapPoiProvider then freeroam_bigMapPoiProvider.sendCurrentLevelMissionsToBigmap() end");
    bngApi.engineLua("if freeroam_bigMapMode then freeroam_bigMapMode.enterBigMap({instant = true}) end");