GE Lua Documentation

Press F to search!

loadDragDataForMission

Definition


-- @/lua/ge/extensions/gameplay/drag/dragBridge.lua:297

M.loadDragDataForMission = function(filepath)

  gameplay_drag_general._clear()
  local data = gameplay_drag_general._loadDragStripData(filepath)
  if not data then
    log("E", logTag, "Failed to load drag data from file: " .. tostring(filepath))
    return
  end

  gameplay_drag_general._loadPrefabs(data)
  local context = data.context
  gameplay_drag_general._setGameplayContext(context)

  -- Set dragData first so ensureAllExtensionsLoaded can work
  gameplay_drag_general.setDragRaceData(data)

  -- Extensions are now guaranteed to be loaded via setDragRaceData -> ensureAllExtensionsLoaded
  -- Just set the dragExtension reference if needed
  if data.dragType == "headsUpDrag" then
    gameplay_drag_general._setDragExtension(gameplay_drag_dragTypes_headsUpDrag)
  elseif data.dragType == "bracketRace" then
    gameplay_drag_general._setDragExtension(gameplay_drag_dragTypes_bracketRace)
  elseif data.dragType == "dragPracticeRace" then
    gameplay_drag_general._setDragExtension(gameplay_drag_dragTypes_dragPracticeRace)
  end
end

Callers

@/lua/ge/extensions/career/modules/vehiclePerformance.lua
    function()
      gameplay_drag_dragBridge.loadDragDataForMission("/levels/west_coast_usa/dragstrips/alderStrip.dragSettings.json")
      local racers = { {id = vehId, isPlayable = false, canBeReseted = false, lane = 1}}
@/lua/ge/extensions/flowgraph/nodes/gameplay/dragRace/loadDragData.lua
  -- Bridge is loaded automatically via dependencies when general loads
  gameplay_drag_dragBridge.loadDragDataForMission(self.pinIn.filepath.value)