base_mod_postRunFn.lua

function data()
return {
  -- info
  -- categories
  -- options
  -- runFn

  postRunFn = function(settings, params)
    local tracks = api.res.trackTypeRep.getAll()

    for __, trackName in pairs(tracks) do
      local mod = api.type.ModuleDesc.new()

      local track = api.res.trackTypeRep.get(api.res.trackTypeRep.find(trackName))

      if trackName ~= "standard.lua" and trackName ~= "high_speed.lua" then
        for __, catenary in pairs({false, true}) do
          mod.fileName = "trainstation_" .. tostring(trackName) .. (catenary and "catenary" or "")

          mod.availability.yearFrom = track.yearFrom
          mod.availability.yearTo = track.yearTo
          mod.cost.price = math.round(track.cost / 75 * 18000)

          mod.description.name = track.name .. (catenary and _(" with catenary") or "")
          mod.description.description = track.desc .. (catenary and _(" (with catenary)") or "")
          mod.description.icon = track.icon
          if mod.description.icon ~= "" then
            mod.description.icon = string.gsub(mod.description.icon, ".tga", "")
            mod.description.icon = mod.description.icon .. "_module" .. (catenary and "_catenary" or "") .. ".tga"
          end

          mod.type = "track"
          mod.order.value = 0 + 10 * (catenary and 1 or 0)
          mod.metadata = {
            track = true,
          }
          mod.category.categories = { "tracks", }

          mod.updateScript.fileName = "construction/station/rail/modular_station/trackmodule.updateFn"
          mod.updateScript.params = {
            trackType = trackName,
            catenary = catenary
          }
          mod.getModelsScript.fileName = "construction/station/rail/modular_station/trackmodule.getModelsFn"
          mod.getModelsScript.params = {
            trackType = trackName,
            catenary = catenary
          }

          api.res.moduleRep.add(mod.fileName, mod, true)
        end
      end
    end
  end
}
end
generated by LDoc 1.4.3 Last updated 2023-04-18 15:10:38