Сделать подгрузку Файла

Derry37274

Новичок
Автор темы
5
1
Версия MoonLoader
.026-beta
Привет! Встретился с проблемой, хочу сделать чтоб мой скрипт (фпс ап) создал папку в modloader(сам будучи lua скриптом) и в нее подгрузить файлы(хочу подгрузить таким образом сжатые текстуры) Но хз как это сделать, пробовал по этому туториалу https://www.blast.hk/threads/140302/?ysclid=le70kl4jt3657125330 но после добавления кода и изменения пути он хоть и подгружал файлы, но скрипт уже по команде не запускался, а как сделать создание папки, я вообще хз, Хелп плз)
 
  • Нравится
Реакции: xanndiane

tfornik

Известный
325
260
Подгрузка файлов
----
doesFileExist(file) - проверка, существует ли файл
getGameDirectory() - возвращает путь к директории игры
downloadUrlToFile(url, путь куда закинуть файл, "")
*url - откуда скачивать файл
*file - путь к файлу. Пример
----
Создание директории
----
doesDirectoryExist(url) - проверка, существует ли директория
createDirectory(url) - создать директорию
*url - где будет находиться/уже находится директория. Пример: getGameDirectory() .. 'modloader'

---

Пример использования:

Lua:
directory_path = 'moonloader//MyPath'
if not doesDirectoryExist(directory_path) then
    createDirectory(directory_path)
end
file_path = 'moonloader//MyPath//file.lua'
if not doesFileExist(file_path) then
    downloadUrlToFile(url, "moonloader\\MyPath\\file.lua", "")
    -- *url - откуда скачивать файл.
end

Вместе с getGameDirectory() :
Lua:
file_path = getGameDirectory() .. 'modloader//privet.lua'
-- и так далее

*Это всего лишь пример, всё остальное придумывай сам.
 
  • Нравится
Реакции: qdIbp

Lance_Sterling

Известный
956
336
Привет! Я могу помочь вам с этой проблемой.

Создание папки в modloader можно выполнить с помощью функции io.mkdir(). Вот пример кода, который создаст папку "my_textures" в папке modloader:
Lua:
local modloader_dir = getWorkingDirectory() .. "/modloader/"
local textures_dir = modloader_dir .. "my_textures/"

if not doesDirectoryExist(textures_dir) then
    io.mkdir(textures_dir)
end
Этот код сначала определяет путь к папке modloader, затем создает путь к папке "my_textures" внутри этой папки. Функция doesDirectoryExist() используется для проверки существования папки "my_textures" перед ее созданием. Если папки не существует, она будет создана с помощью io.mkdir().

Теперь, чтобы загрузить сжатые текстуры в эту папку, вы можете использовать функцию io.open() для открытия файла в режиме записи и записать в него содержимое вашего файла сжатых текстур. Например:
Lua:
local compressed_texture_file = io.open(textures_dir .. "compressed_texture.dds", "wb")
compressed_texture_file:write(compressed_texture_data)
compressed_texture_file:close()
Здесь мы открываем файл "compressed_texture.dds" в папке "my_textures" для записи в двоичном режиме ("wb"), записываем содержимое переменной compressed_texture_data в файл, а затем закрываем файл с помощью compressed_texture_file:close().

Надеюсь, это поможет вам решить вашу проблему! Если у вас есть дополнительные вопросы, не стесняйтесь задавать их.
 
  • Bug
Реакции: neverlane

chromiusj

прогресс невозможен без пива
Модератор
5,553
3,867
Привет! Я могу помочь вам с этой проблемой.

Создание папки в modloader можно выполнить с помощью функции io.mkdir(). Вот пример кода, который создаст папку "my_textures" в папке modloader:
Lua:
local modloader_dir = getWorkingDirectory() .. "/modloader/"
local textures_dir = modloader_dir .. "my_textures/"

if not doesDirectoryExist(textures_dir) then
    io.mkdir(textures_dir)
end
Этот код сначала определяет путь к папке modloader, затем создает путь к папке "my_textures" внутри этой папки. Функция doesDirectoryExist() используется для проверки существования папки "my_textures" перед ее созданием. Если папки не существует, она будет создана с помощью io.mkdir().

Теперь, чтобы загрузить сжатые текстуры в эту папку, вы можете использовать функцию io.open() для открытия файла в режиме записи и записать в него содержимое вашего файла сжатых текстур. Например:
Lua:
local compressed_texture_file = io.open(textures_dir .. "compressed_texture.dds", "wb")
compressed_texture_file:write(compressed_texture_data)
compressed_texture_file:close()
Здесь мы открываем файл "compressed_texture.dds" в папке "my_textures" для записи в двоичном режиме ("wb"), записываем содержимое переменной compressed_texture_data в файл, а затем закрываем файл с помощью compressed_texture_file:close().

Надеюсь, это поможет вам решить вашу проблему! Если у вас есть дополнительные вопросы, не стесняйтесь задавать их.
я задам вопрос,в чем прикол ответ бота отправить
 
  • Влюблен
Реакции: Lance_Sterling

Lance_Sterling

Известный
956
336
я задам вопрос,в чем прикол ответ бота отправить
Моя задача - помочь вам ответить на вопросы или выполнить задания, которые вы мне задаете. "прикол" моего ответа зависит от того, насколько точно я понимаю ваш вопрос и какую информацию вы хотите получить. Пожалуйста, задайте конкретный вопрос, и я постараюсь помочь вам.