fixed the chaos that caused fixing the win disaster

This commit is contained in:
Timothy GFO 2023-11-02 12:28:28 -04:00
parent cfa37b778a
commit 4f8abecf47

View file

@ -5,6 +5,7 @@ import shutil
import pathlib
import filecmp
import webbrowser
import requests
##Here goes the actual code
@ -22,6 +23,18 @@ def safelist():
#maybe add autoupdater through gitlab
#add
mmm_version = "1.8.5.2"
def check_version(version=False):
api_version = "https://api.megamanmaker.com/version"
ver = requests.get(api_version)
ver_num = ver.json()["version"]
if version == True:
return ver_num
if mmm_version == ver_num:
return True
else:
return False
def check_folder_structure(megamaker_folder, og_music=False):
megamaker_folder = os.path.abspath(megamaker_folder)
@ -34,13 +47,17 @@ def check_folder_structure(megamaker_folder, og_music=False):
glob_search = os.path.join(music_folder,"*","*.nsf")
file_paths = (glob(glob_search))
for files in file_paths:
if files == 'TMP_BURNER_MAN.nsf' or files == "TMP_COLD_MAN.nsf":
continue
files_no_path = os.path.basename(files)
if files_no_path == 'TMP_BURNER_MAN.nsf':
print("skipping",files_no_path)
elif files_no_path == 'TMP_COLD_MAN.nsf':
print("skipping", files_no_path)
else:
file_names.append(os.path.basename(files))
file_names.append(files_no_path)
if set(file_names) == set(safelist()):
return file_paths
print("YEP")
else:
print("Safety check failed. Either you have other files in the music folder of mega maker, you are in the wrong folder, or there has been a new update.")
else:
return False
@ -88,7 +105,6 @@ def restore_ogmusic(path):
def nsf_changer (nsf_path, megamaker_folder):
original_path = check_folder_structure(megamaker_folder)
if original_path:
print("WORK")
move_music_to_ogmusic(megamaker_folder)
recreate_structure(nsf_path, original_path)
return True
@ -100,9 +116,18 @@ sg.theme('LightBlue')
icon = b"iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAArlBMVEUAAAAAAAB5eXmioqIwUYJBksNh0+Oi//MwYUFJomlx45Ki/8s4bQBJqhBx80Gi86I4aQBRogCa6wDL84JJWQCKigDr0yD/85J5QQDDcQD/ogD/26KiMADjUQD/eTD/y7qyEDDbQWH/YbL/uuuaIHnbQcPzYf/jsv9hEKKSQfOicf/Dsv8oALpBQf9Rgv+iuv8gALJBYfthov+S0/95eXmysrLr6+v///8Aaf9DkP8A2fKiAAAAOnRSTlMA////////////////////////////////////////////////////////////////////////////ncmmFQAAAK5JREFUOI21k1sSgCAIRb2rYtz/xpKnpIz1UcyUAkcEldYfpL0DwN8iGRja6g7EgLkix3Jg8ScqAyVxrOJDgIjGhHSQMQw8WwA3+4QBxFoxj8BKSmkMzMXoGZW6a4CzMw0OmJO3I6khkhVA0hBVCNoBuMrhPR4KwKNgZqSAhjZTQmEnaUQcD9Bjz+aXHT+9g3gCbV5LLf8BWw7HR3t/53e/d1bVNhkoGy911kkegQvP3acj3R2TXgAAAABJRU5ErkJggg=="
gif = b"R0lGODdhQgAmAHcAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJCgAAACwAAAAAQgAmAIAAAAAAefsCzISPqcvtD6OctNqLs95chg92YgOGT/mNExpArOqhrgzPpW3WznvSHM8AknwbocK4QGKUBybCWYFCDdMV8XhNZpfbZvf5BUjD1fFteA6GqeR2WvtWxxPmHNwux9PdevAc++cVyDYotmZYWJeCaFLGt5i3yON4NvnYwih5aFl5Sdi4ScPZJwjaeWo3qpko2ooKmYmpKutqaruaWou7S/vae4v5ySv8OxxLjFxqPJvMfKxcHN2sK/087XsNnA3r3E29HfzsjS3+rXOOnn5QAAAh+QQJCgAAACwCAAYAPgAeAIAAAAAAefsClYSPqcvtD6OctNqLcw28a9R5W0hy31FaZXoCLLWSrSuPsdm+0y2eusTD+Wqw4OwXCQaOxJ0x1wQ+hyHV9IOEKJlV243bc/IM2QerTH6iG+doYkvrFrtr+JrRli/stXr/T6cGGKaQJ2IYkxa4eDiIg7ii2Mj46LgUN/mFWUl5CSnJqfm56WkJWjpGerqq2go5CmvqSlIAACH5BAkKAAAALAIABgA+AB4AgAAAAAB5+wKthI+pF+0Lo5zTPYqzBrbtDyZdEJbfaKYYqm4s9C5xOYudVIM5c0e724MFZUNaj/XjFEPI4xKRzDQthqT1qaRmL1et0GvTTi9fMhEMdYqxVfbWc+aqzYounbfO39Po8P5NAtjWxyenB1c3B2e3qBiYeBjIKOlY1hiJUykYd2n4N+jZiegnSkmIF2o6kgpa2qrqCjgWOwtr+1r7qruZK6vZC+wYjMn7u0o8zFpsUQAAIfkECQoAAAAsAgAGAD4AHgCAAAAAAHn7AqGEb6GL7Q+jfIvNi3OrSvsPcQFIkmKJAifFpaW4ru4Ht6o9e3WV4K7M2o1uvBzQIewQLbPjJtkrNn1I6FI5LcaszpdtK4wyf99y+DrMWsA7MVbDVsZh7jTcvMbX6vzIvJ809OenJ1g42HWAeFjYF9KIVrcoFZSnxXiZOValKYdpCerZaTgqCTkZSpqKKpoK+Nkaqyr7Oso6i1u7espbGolWAAAh+QQJCgAAACwCAAgAPgAcAIAAAAAAefsCooSPCcGtD6OcqTmKs142bNl5nxKOUGkiaKp27LG+nCXPVx2nObuPvfnbBD/DzPDokiFpkd/y9ngyDCGp6JTEMqvZaJf0rSS5TC0UXPZuydPm+J1GX9htcxtlpdJB8Hm4tcbGF+gXJ0bIpYcogvcH05docwfJ6KhYSHY5uah5pYYZ2cgp6Sm3mUnaqZrKKorqehpbOUo3C2oruwpbpUvZS9tRAAA7"
if check_version():
version_color = "black"
version_message = f"Works with Mega Man Maker {mmm_version}"
else:
version_color = "red"
version_message = f"Mega Man Maker has been updated to {check_version(version=True)}. \nThis tool works with {mmm_version} and may not work properly. Make an Issue at GitLab."
layout = [
[sg.Text("Mega Man Maker NSF Music Changer | Made by Timothy GFO", justification="center")],
[sg.Text("YouTube", enable_events = True, key="-YT-", text_color="red"), sg.Text("GitLab",enable_events = True,key="-GIT-", text_color="purple"), sg.Text("Blog",enable_events = True,key="-SITE-", text_color="blue")],
[sg.Text(version_message, text_color=version_color)],
[sg.Text("Input NSF File:"), sg.Input(key="-IN-"),sg.FileBrowse(file_types=(("NSF Files", "*.nsf*"),))],
[sg.Text("MegaMaker Folder:"), sg.Input(key="-OUT-"), sg.FolderBrowse()],
[sg.Exit(),sg.Button("About") , sg.Button("Replace NSF Music"), sg.Button("Restore Original Music"), sg.Image(data=gif, key='_IMAGE_')],