Добавлено обновление модов

This commit is contained in:
Евгений Храмов 2023-05-27 13:52:26 +03:00
commit 0d8b8464a3

13
hlna.py

@ -511,10 +511,10 @@ def mod(g, m, i, id_mods_ark):
if not os.path.isdir(dir_mods_ark):
create_dir(dir_mods_ark)
id_mods_ark = id_mods_ark[0].split(',')
if id_mods_ark[1] != "":
for id_mod in id_mods_ark:
dir_mod_ark = f"{dir_mods_ark}/{id_mod}"
if not os.path.isfile(f"{dir_mod_ark}.mod"):
print_line(f"{dir_mod_ark}.mod")
if i:
moddownload(g, m, id_mod, dir_mod_ark)
else:
@ -523,15 +523,17 @@ def mod(g, m, i, id_mods_ark):
os.system(f"rm {dir_mods_ark}/{id_mod}.mod")
print_line(f"{dir_mods_ark}/{id_mod}.mod удалён")
else:
print_line(f"Мод уже установлен")
modupdate(g, m, id_mod, dir_mod_ark)
else:
print_line("Введите id модов через запятую без пробелов")
else:
print_line("Не поддерживаемая игра")
def modupdate(g, m, id_mod, dir_mod_ark):
if g == "ark":
# if not os.path.isfile(os.path.join(dir_ark_mods, f"appworkshop_{id_mod}.acf")):
# return
print_line(f"Проверяем обновление мода {id_mod}")
with open(os.path.join(dir_mod_ark, f"appworkshop_346110.acf"), "r") as f:
content = f.readlines()
content = "".join(content)
@ -554,13 +556,14 @@ def modupdate(g, m, id_mod, dir_mod_ark):
steam_date = json_zapros['response']['publishedfiledetails'][0]['time_updated']
if int(steam_date) != int(locale_date):
print_line(f"Обновляем мод {id_mod}")
moddownload(g, m, id_mod, dir_mod_ark)
else:
print_line(f"Мод {id_mod} обновлен")
def modupdateall(g, m):
print_line("Вход в обновление всех")
print_line("Проверяем обновление всех установленных модов")
for file in os.listdir(dir_mods_ark):
if os.path.isfile(os.path.join(dir_mods_ark, file)):
if file.endswith('.mod'):
@ -581,7 +584,7 @@ def moddownload(g, m, id_mod, dir_mod_ark):
return
if os.path.isfile(f"{dir_workshop_ark}/appworkshop_{id_game_workshop}.acf"):
os.system(f"rm {dir_workshop_ark}/appworkshop_{id_game_workshop}.acf")
os.system(f"steamcmd +login anonymous +workshop_download_item {id_game_workshop} {id_mod} +quit")
os.system(f"steamcmd +force_install_dir {home_dir}/.local/share/Steam/ +login anonymous +workshop_download_item {id_game_workshop} {id_mod} +quit")
try:
for curdir, subdirs, files in os.walk(os.path.join(dir_steam_workshop)):
for file in files: