Advertisement
BigBlow_

Untitled

Sep 2nd, 2024
19
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.84 KB | None | 0 0
  1. -- Programme pour afficher le contenu d'une liste Lua sur un moniteur avec défilement
  2.  
  3. -- Nom du fichier à afficher
  4. local fileName = "list.txt"
  5.  
  6. -- Côté où est connecté le moniteur (ajuste-le selon ta configuration)
  7. local monitorSide = "right"
  8.  
  9. -- Vérifie si le moniteur est connecté correctement
  10. if not peripheral.isPresent(monitorSide) then
  11. print("Erreur: Aucun moniteur détecté sur le côté " .. monitorSide)
  12. return
  13. end
  14.  
  15. -- Attache le périphérique moniteur
  16. local mon = peripheral.wrap(monitorSide)
  17. mon.clear() -- Efface le moniteur
  18. mon.setCursorPos(1, 1) -- Positionne le curseur au début
  19.  
  20. -- Fonction pour lire le contenu d'un fichier
  21. local function readFile(fileName)
  22. local file = fs.open(fileName, "r")
  23. if not file then
  24. print("Erreur: Impossible de lire le fichier " .. fileName)
  25. return nil
  26. end
  27.  
  28. -- Lit le contenu du fichier ligne par ligne
  29. local lines = {}
  30. while true do
  31. local line = file.readLine()
  32. if line == nil then break end
  33. table.insert(lines, line)
  34. end
  35. file.close()
  36. return lines
  37. end
  38.  
  39. -- Affiche le contenu du fichier sur le moniteur, ligne par ligne avec défilement
  40. local content = readFile(fileName)
  41. if content then
  42. local monWidth, monHeight = mon.getSize() -- Taille du moniteur
  43. local x, y = 1, 1 -- Position initiale du curseur
  44.  
  45. for _, line in ipairs(content) do
  46. -- Si on dépasse la hauteur du moniteur, défilement vers le haut
  47. if y > monHeight then
  48. mon.scroll(1)
  49. y = monHeight
  50. end
  51.  
  52. mon.setCursorPos(x, y)
  53. mon.write(line)
  54. y = y + 1 -- Passe à la ligne suivante
  55. end
  56. print("Contenu du fichier affiché sur le moniteur.")
  57. else
  58. print("Erreur: Le fichier est vide ou ne peut pas être lu.")
  59. end
  60.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement