Advertisement
MagmaLP

Highscore test

May 25th, 2024 (edited)
473
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.10 KB | None | 0 0
  1. -- Funktion zum Einlesen des Inhalts einer Datei und Umwandeln in eine Zahl
  2. local function readNumberFromFile(fileName)
  3.     local file = fs.open(fileName, "r")
  4.     if file then
  5.         local content = file.readAll()
  6.         file.close()
  7.         return tonumber(content)
  8.     end
  9.     return nil
  10. end
  11.  
  12. -- Verzeichnisname
  13. local directory = "highscore"
  14.  
  15. -- Liste aller Dateien im Verzeichnis
  16. local files = fs.list(directory)
  17.  
  18. -- Tabelle zur Speicherung der Spieler und ihrer Punkte
  19. local scores = {}
  20.  
  21. -- Durchlaufen aller Dateien im Verzeichnis
  22. for _, file in ipairs(files) do
  23.     local filePath = fs.combine(directory, file)
  24.     local score = readNumberFromFile(filePath)
  25.     if score then
  26.         table.insert(scores, {name = file, score = score})
  27.     end
  28. end
  29.  
  30. -- Funktion zum Sortieren der Scores
  31. local function compareScores(a, b)
  32.     return a.score > b.score
  33. end
  34.  
  35. -- Sortieren der Scores
  36. table.sort(scores, compareScores)
  37.  
  38. -- Ausgabe der Top 5 Spieler
  39. print("Top 5 Spieler:")
  40. for i = 1, math.min(5, #scores) do
  41.     print(i .. ". " .. scores[i].name .. " - " .. scores[i].score)
  42. end
  43.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement