GE Lua Documentation

Press F to search!

getTopSpawnPoints

Definition


-- @/lua/ge/extensions/freeroam/levelStats.lua:52

function M.getTopSpawnPoints(levelName)
  local result = {}
  for spawnPointName, data in pairs(getStats().levels[levelName] and getStats().levels[levelName].spawnPoints or {}) do
    table.insert(result, { spawnPointName = spawnPointName ~= "__default__" and spawnPointName or nil, count = data.count, lastUsed = data.lastUsed })
  end
  table.sort(result, function(a, b) return a.lastUsed > b.lastUsed end)
  local lastUsed = result[1] and result[1].spawnPointName
  table.sort(result, function(a, b) if a.count == b.count then return a.lastUsed > b.lastUsed end return a.count > b.count end)
  for i, data in ipairs(result) do
    if lastUsed == data.spawnPointName then
      table.remove(result, i)
      table.insert(result, 1, data)
      break
    end
  end
  return result
end

Callers

@/lua/ge/extensions/freeroam/levelStats.lua
  for _, level in ipairs(topLevels) do
    local spawnPoints = M.getTopSpawnPoints(level.levelName)
    for _, spawnPoint in ipairs(spawnPoints) do
@/ui/modules/levelselect/levelselect.js
  vm.loadTopSpawnPoints = function() {
    bngApi.engineLua(`extensions.freeroam_levelStats.getTopSpawnPoints("${levelName}")`, function(topSpawnPoints) {
      $scope.$apply(function() {