Advertisement
Guest User

Untitled

a guest
Sep 18th, 2014
270
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.67 KB | None | 0 0
  1.  
  2.   function reverse_sorted_records(records)
  3.     if records == nil then return nil end
  4.     local sorted_records = {}
  5.     for player, delta in pairs(records) do
  6.       table.insert(sorted_records, { player, delta })
  7.     end
  8.     table.sort(sorted_records, function (L, R) return L[2] > R[2] end)
  9.     return sorted_records
  10.  end
  11.  
  12.   function add_record(map, player, delta)
  13.     local records = load_records(map)
  14.     if records[player] == nil or delta < records[player] then
  15.       records[player] = delta
  16.       save_records(map, records)
  17.     new_record_added = true
  18.     end
  19.   end
  20.  
  21.   function save_records(map, records)
  22.     local sorted_records = sorted_records(records)
  23.     local lines = {}
  24.     for i,record in ipairs(sorted_records) do
  25.       table.insert(lines, record[1] .. " " .. tostring(record[2]))
  26.     end
  27.     cfg.setvalue("SvearkMod_maps", map:lower():gsub("=", ""), table.concat(lines, "\t"))
  28.   end
  29.  
  30.   function load_records(map)
  31.     local records = {}
  32.     local data = cfg.getvalue("SvearkMod_maps", map:lower():gsub("=", ""))
  33.     if data ~= nil then
  34.       local lines = split(data, "\t")
  35.       for i,line in ipairs(lines) do
  36.         record = split(line, " ")
  37.         records[record[1]] = tonumber(record[2])
  38.       end
  39.     end
  40.     return records
  41.   end
  42.  
  43.   function get_best_record(map)
  44.     local sorted_records = sorted_records(load_records(map))
  45.     local i, best_record = next(sorted_records)
  46.   if  best_record == nil then
  47.   return PLUGIN_BLOCK
  48.  end
  49.  if best_record[1] or best_record[2] ~= nil then
  50.    return best_record[1], best_record[2]
  51.  elseif best_record[1] or best_record[2] == nil then
  52.  print("Error returning best_record")
  53.  end
  54.  end
  55.  
  56.  ---
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement