Advertisement
DreamWolf

WolfTG Установщик

Dec 25th, 2024 (edited)
7
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.01 KB | None | 0 0
  1. local internet = require("internet")
  2. local os = require("os")
  3. local term = require("term")
  4.  
  5. -- Ссылки на библиотеки
  6. local wolfTGUrl = "https://pastebin.com/raw/QZQtiUcw"
  7. local jsonUrl = "https://pastebin.com/raw/fxuJamAU"
  8. local betaWolfTGUrl = "https://pastebin.com/raw/VvJxb7kb"
  9.  
  10. -- Путь для сохранения библиотек
  11. local wolfTGPath = "/lib/WolfTG.lua"
  12. local jsonPath = "/lib/json.lua"
  13. local betaWolfTGPath = "/lib/WolfTG_Beta.lua"
  14.  
  15. -- Функция для скачивания файла
  16. local function downloadFile(url, path)
  17. local handle, response = pcall(function()
  18. return internet.request(url)
  19. end)
  20.  
  21. if not handle then
  22. print("Ошибка при подключении к Pastebin.")
  23. return false
  24. end
  25.  
  26. local file = io.open(path, "w")
  27. if not file then
  28. print("Ошибка при открытии файла для записи: " .. path)
  29. return false
  30. end
  31.  
  32. for chunk in response do
  33. file:write(chunk)
  34. end
  35. file:close()
  36.  
  37. print("Библиотека успешно скачана и сохранена в " .. path)
  38. return true
  39. end
  40.  
  41. -- Функция для удаления файла
  42. local function removeFile(path)
  43. local success, err = os.remove(path)
  44. if success then
  45. print("Библиотека успешно удалена из " .. path)
  46. else
  47. print("Ошибка при удалении файла: " .. err)
  48. end
  49. end
  50.  
  51. -- Функция установки библиотек
  52. local function installLibraries()
  53. print("Установка библиотек...")
  54.  
  55. local wolfTGSuccess = downloadFile(wolfTGUrl, wolfTGPath)
  56. local jsonSuccess = downloadFile(jsonUrl, jsonPath)
  57.  
  58. if wolfTGSuccess and jsonSuccess then
  59. print("Библиотеки успешно установлены!")
  60. else
  61. print("Ошибка при установке библиотек.")
  62. end
  63. end
  64.  
  65. -- Функция удаления библиотек
  66. local function uninstallLibraries()
  67. print("Удаление библиотек...")
  68.  
  69. removeFile(wolfTGPath)
  70. removeFile(jsonPath)
  71. end
  72.  
  73. -- Функция установки Beta библиотеки
  74. local function installBetaLibrary()
  75. print("Установка Beta библиотеки...")
  76.  
  77. local betaWolfTGSuccess = downloadFile(betaWolfTGUrl, wolfTGPath)
  78.  
  79. if betaWolfTGSuccess then
  80. print("Beta библиотека успешно установлена под именем WolfTG.lua!")
  81. else
  82. print("Ошибка при установке Beta библиотеки.")
  83. end
  84. end
  85.  
  86. -- Функция удаления Beta библиотеки
  87. local function uninstallBetaLibrary()
  88. print("Удаление Beta библиотеки...")
  89.  
  90. removeFile(wolfTGPath)
  91. end
  92.  
  93. -- Функция, отображающая информацию о библиотеке
  94. local function showLibraryInfo()
  95. print("\nИнформация о библиотеках:")
  96. print("1. WolfTG: Сделана человеком с ником 'DreamW0lf'.")
  97. print("2. json: Библиотека взята с Pastebin: https://pastebin.com/fxuJamAU")
  98. os.sleep(3) -- Задержка перед возвратом в меню
  99. end
  100.  
  101. -- Меню Beta
  102. local function betaMenu()
  103. while true do
  104. term.clear()
  105. term.setCursor(1, 1)
  106. print("Меню Beta:")
  107. print("1 - Установить библиотеки Beta")
  108. print("2 - Удалить библиотеки Beta")
  109. print("3 - Назад к главному меню")
  110.  
  111. local choice = tonumber(term.read())
  112.  
  113. if choice == 1 then
  114. installBetaLibrary()
  115. elseif choice == 2 then
  116. uninstallBetaLibrary()
  117. elseif choice == 3 then
  118. break
  119. else
  120. print("Неверный выбор. Попробуйте снова.")
  121. os.sleep(2)
  122. end
  123. end
  124. end
  125.  
  126. -- Главное меню
  127. local function mainMenu()
  128. term.clear()
  129. term.setCursor(1, 1)
  130. print("Главное меню:")
  131. print("1 - Установить библиотеки")
  132. print("2 - Удалить библиотеки")
  133. print("3 - Выход")
  134. print("4 - Информация о библиотеках")
  135. print("5 - Beta")
  136.  
  137. local choice = tonumber(term.read())
  138.  
  139. if choice == 1 then
  140. installLibraries()
  141. elseif choice == 2 then
  142. uninstallLibraries()
  143. elseif choice == 3 then
  144. print("Выход из программы.")
  145. return true -- Возвращаем true для завершения программы
  146. elseif choice == 4 then
  147. showLibraryInfo()
  148. elseif choice == 5 then
  149. betaMenu()
  150. else
  151. print("Неверный выбор. Попробуйте снова.")
  152. os.sleep(2)
  153. end
  154.  
  155. return false -- Возвращаем false, чтобы продолжить выполнение программы
  156. end
  157.  
  158. -- Главная функция
  159. local function main()
  160. while true do
  161. local exit = mainMenu()
  162. if exit then
  163. break -- Выход из программы
  164. end
  165. end
  166. end
  167.  
  168. main()
  169.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement