GE Lua Documentation

Press F to search!

attemptAbandonMissionWithFade

Definition


-- @/lua/ge/extensions/gameplay/missions/missionManager.lua:959

local function attemptAbandonMissionWithFade(mission, force, abandonButtonPressed)
  --dump("attemptAbandonMissionWithFade")
  --print(debug.tracesimple())
  if not mission then
    log("E", logTag, "Couldn't stop mission, mission id not found.")
    return true
  end
  if not mission._isOngoing then
    log("E", logTag, "Couldn't stop mission, it's not ongoing: "..dumps(mission.id))
    return true
  end
  if taskData.active then
    log("W", logTag, "Attempting to stop mission while there is an active task.")
    return
  end
  mission.restoreStartingInfoSetup = true

  -- this mission handles stopping themselves..
  if mission:attemptAbandonMission() then
    log("I", logTag, "Requesting faded abandon for mission, not force stopping. : "..dumps(mission.id))
    return true
  end

  taskData.data = {mission = mission, data = {}}

  if abandonButtonPressed then
    taskData.data.data.abandoned = true
  end

  taskData.type = "stop"
  taskData.active = true
  taskData.steps = {{
      name = "taskStartFadeStep",
      processTask = taskStartFadeStep,
      timeout = 10
    }, {
      name = "taskStopMissionStep",
      processTask = taskStopMissionStep,
    }, {
      name = "taskStartRemoveVehicles",
      processTask = taskStartRemoveVehicles,
    }, {
      name = "taskStopRespawnVehicleStep",
      processTask = taskStopRespawnVehicleStep,
    }, {
      name = "taskStopRespawnTrafficStep",
      processTask = taskStopRespawnTrafficStep,
    }, {
      name = "taskStopFadeStep",
      processTask = taskStopFadeStep,
      timeout = 5
    }
  }
  taskData.currentStep = 1

  extensions.hook("onMissionAbandoned", mission)
  log("I", logTag, "Delaying abandonment of mission for fade.")
end

Callers

@/lua/ge/extensions/gameplay/missions/missionScreen.lua
    if m.id == id then
      gameplay_missions_missionManager.attemptAbandonMissionWithFade(m, force, abandonButtonPressed)
      return