Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local internet = require("internet")
- local os = require("os")
- local term = require("term")
- -- Ссылки на библиотеки
- local wolfTGUrl = "https://pastebin.com/raw/QZQtiUcw"
- local jsonUrl = "https://pastebin.com/raw/fxuJamAU"
- local betaWolfTGUrl = "https://pastebin.com/raw/VvJxb7kb"
- -- Путь для сохранения библиотек
- local wolfTGPath = "/lib/WolfTG.lua"
- local jsonPath = "/lib/json.lua"
- local betaWolfTGPath = "/lib/WolfTG_Beta.lua"
- -- Функция для скачивания файла
- local function downloadFile(url, path)
- local handle, response = pcall(function()
- return internet.request(url)
- end)
- if not handle then
- print("Ошибка при подключении к Pastebin.")
- return false
- end
- local file = io.open(path, "w")
- if not file then
- print("Ошибка при открытии файла для записи: " .. path)
- return false
- end
- for chunk in response do
- file:write(chunk)
- end
- file:close()
- print("Библиотека успешно скачана и сохранена в " .. path)
- return true
- end
- -- Функция для удаления файла
- local function removeFile(path)
- local success, err = os.remove(path)
- if success then
- print("Библиотека успешно удалена из " .. path)
- else
- print("Ошибка при удалении файла: " .. err)
- end
- end
- -- Функция установки библиотек
- local function installLibraries()
- print("Установка библиотек...")
- local wolfTGSuccess = downloadFile(wolfTGUrl, wolfTGPath)
- local jsonSuccess = downloadFile(jsonUrl, jsonPath)
- if wolfTGSuccess and jsonSuccess then
- print("Библиотеки успешно установлены!")
- else
- print("Ошибка при установке библиотек.")
- end
- end
- -- Функция удаления библиотек
- local function uninstallLibraries()
- print("Удаление библиотек...")
- removeFile(wolfTGPath)
- removeFile(jsonPath)
- end
- -- Функция установки Beta библиотеки
- local function installBetaLibrary()
- print("Установка Beta библиотеки...")
- local betaWolfTGSuccess = downloadFile(betaWolfTGUrl, wolfTGPath)
- if betaWolfTGSuccess then
- print("Beta библиотека успешно установлена под именем WolfTG.lua!")
- else
- print("Ошибка при установке Beta библиотеки.")
- end
- end
- -- Функция удаления Beta библиотеки
- local function uninstallBetaLibrary()
- print("Удаление Beta библиотеки...")
- removeFile(wolfTGPath)
- end
- -- Функция, отображающая информацию о библиотеке
- local function showLibraryInfo()
- print("\nИнформация о библиотеках:")
- print("1. WolfTG: Сделана человеком с ником 'DreamW0lf'.")
- print("2. json: Библиотека взята с Pastebin: https://pastebin.com/fxuJamAU")
- os.sleep(3) -- Задержка перед возвратом в меню
- end
- -- Меню Beta
- local function betaMenu()
- while true do
- term.clear()
- term.setCursor(1, 1)
- print("Меню Beta:")
- print("1 - Установить библиотеки Beta")
- print("2 - Удалить библиотеки Beta")
- print("3 - Назад к главному меню")
- local choice = tonumber(term.read())
- if choice == 1 then
- installBetaLibrary()
- elseif choice == 2 then
- uninstallBetaLibrary()
- elseif choice == 3 then
- break
- else
- print("Неверный выбор. Попробуйте снова.")
- os.sleep(2)
- end
- end
- end
- -- Главное меню
- local function mainMenu()
- term.clear()
- term.setCursor(1, 1)
- print("Главное меню:")
- print("1 - Установить библиотеки")
- print("2 - Удалить библиотеки")
- print("3 - Выход")
- print("4 - Информация о библиотеках")
- print("5 - Beta")
- local choice = tonumber(term.read())
- if choice == 1 then
- installLibraries()
- elseif choice == 2 then
- uninstallLibraries()
- elseif choice == 3 then
- print("Выход из программы.")
- return true -- Возвращаем true для завершения программы
- elseif choice == 4 then
- showLibraryInfo()
- elseif choice == 5 then
- betaMenu()
- else
- print("Неверный выбор. Попробуйте снова.")
- os.sleep(2)
- end
- return false -- Возвращаем false, чтобы продолжить выполнение программы
- end
- -- Главная функция
- local function main()
- while true do
- local exit = mainMenu()
- if exit then
- break -- Выход из программы
- end
- end
- end
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement