GE Lua Documentation

Press F to search!

logMissionIssues

Definition


-- @/lua/ge/extensions/gameplay/missions/missions.lua:1016
local function logMissionIssues(mission)
  if not mission._issueList then
    log("I", "", "Calculating issues for mission " .. mission.id.."...")
    local issues = {}
    gameplay_missions_missions.getMissionEditorForType(mission.missionType):setContainer(mission)
    local cIssues = gameplay_missions_missions.getMissionEditorForType(mission.missionType):checkContainer(mission)
    for _, i in ipairs(cIssues) do
      table.insert(issues, i)
    end
    if gameplay_missions_missions.getMissionEditorForType(mission.missionType).calculateMissionIssues then
      local success, customIssues = pcall(gameplay_missions_missions.getMissionEditorForType(mission.missionType).calculateMissionIssues, mission)
      if success then
        for _, i in ipairs(customIssues) do
          table.insert(issues, i)
        end
      end
    end
    mission._issueList = {
      list = issues,
      importantCount = 0,
      highestSeverity = 'unknown'
    }
    for _, i in ipairs(issues) do
      if i.severity == 'warning' or i.severity == 'error' then
        mission._issueList.importantCount = mission._issueList.importantCount + 1
      end
      if severityPriority[mission._issueList.highestSeverity] < severityPriority[i.severity] then
        mission._issueList.highestSeverity = i.severity
      end
    end
  end
  log(severityToLog[mission._issueList.highestSeverity] or 'I', "", string.format("Mission %s has %d issues:", mission.id, #(mission._issueList.list or {})))
  for _, i in ipairs(mission._issueList.list or {}) do
    log(severityToLog[i.severity] or 'I', "", i.label)
  end
end

Callers

@/lua/ge/extensions/gameplay/missions/missionTypes/flowMission.lua
function C:onStart()
  gameplay_missions_missions.logMissionIssues(self)