diff --git a/main.py b/main.py index fbb55df..09d6b35 100644 --- a/main.py +++ b/main.py @@ -1,23 +1,55 @@ import os +import shutil +import requests +from pathlib import Path + +# Minecraft installation folder. minecraft_dir = os.path.join(os.getenv('APPDATA'), ".minecraft") +# Forge variables. default_forge_version = "1.12.2-forge-14.23.5.2859" forge_version = input(f"Enter Forge version (default: {default_forge_version}), leave empty to choose default: ") or default_forge_version forge_dir = os.path.join(minecraft_dir, f"versions/{forge_version}") forge_url = f"https://git.jisoonet.com/publicprojects/{forge_version}/-/archive/main/{forge_version}-main.zip" +# Forge libraries variables. forge_libraries_version = forge_version.replace("forge-", "") forge_libraries_dir = os.path.join(minecraft_dir, f"libraries/net/minecraftforge/forge/{forge_libraries_version}") forge_libraries_url = f"https://git.jisoonet.com/publicprojects/{forge_libraries_version}/-/archive/main/{forge_libraries_version}-main.zip" +# Backup folder for mods. mods_backup_dir = os.path.join(minecraft_dir, "mods_backup") +# Modpack variables. default_modpack_name = "apocaz-modpack" modpack_name = input(f"Enter Modpack name (default: {default_modpack_name}), leave empty to choose default: ") or default_modpack_name modpack_dir = os.path.join(minecraft_dir, "mods") modpack_url = f"https://git.jisoonet.com/publicprojects/{modpack_name}/-/archive/main/{modpack_name}-main.zip" +# Function to check for the prescence of Minecraft installation folder. +def check_minecraft_installation(minecraft_dir): + print("Checking for existing Minecraft installation...") + if not Path(minecraft_dir).exists(): + print("Error: Minecraft not found. Please install Minecraft first.") + else: + print("Minecraft is already installed.") + + + + + +# Backups the mods from the mods folder to the backup folder. +def backup_mods(modpack_dir, mods_backup_dir): + print("Backing up existing mods...") + if Path(modpack_dir).exists(): + if not Path(mods_backup_dir).exists(): + os.makedirs(mods_backup_dir) + for item in os.listdir(modpack_dir): + shutil.move(os.path.join(modpack_dir, item), mods_backup_dir) + print(f"Existing mods backed up to {mods_backup_dir}") + else: + print("No mods directory found. No backup required.") # Entry point of the script. def main():