➖ | Removed PySimpleGUI from dependencies.
This commit is contained in:
parent
21d4262c1d
commit
a5d28304c5
30
main.py
30
main.py
@ -20,44 +20,40 @@ def save_preferences():
|
||||
def launch_exe():
|
||||
# Check for valid server address (Currently only supports numerical addresses (not domains))
|
||||
if not validate_server_address(server_address_field.get()):
|
||||
print("Invalid address \"" + server_address_field.get() + "\", please use a proper one...")
|
||||
print(f"Invalid address \"{server_address_field.get()}\", please use a proper one...")
|
||||
server_address_field.delete(0, END)
|
||||
server_address_field.insert(0, userdata.default_server_address)
|
||||
return
|
||||
|
||||
if not validate_username(username_field.get()):
|
||||
print("Username \"" + username_field.get() + "\" is too long, please use a shorter one...")
|
||||
print(f"Username \"{username_field.get()}\" is too long, please use a shorter one...")
|
||||
username_field.delete(0, END)
|
||||
username_field.insert(0, userdata.default_username)
|
||||
return
|
||||
|
||||
print("IP Address: " + server_address_field.get())
|
||||
print("Username: " + username_field.get())
|
||||
subprocess.call(
|
||||
["./Battlefield 1942/Battlefield 1942/BF1942.exe","+game","FinnWars","+restart","1","+game","FinnWars","+joinServer",server_address_field.get()]
|
||||
)
|
||||
root.quit
|
||||
subprocess.call([
|
||||
"./Battlefield 1942/Battlefield 1942/BF1942.exe",
|
||||
"+game", "FinnWars",
|
||||
"+restart", "1",
|
||||
"+game", "FinnWars",
|
||||
"+joinServer", server_address_field.get()
|
||||
])
|
||||
root.quit()
|
||||
|
||||
def validate_server_address(server_address):
|
||||
ip_regex = r"^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$"
|
||||
port_regex = r"^\d+$"
|
||||
|
||||
|
||||
try:
|
||||
if ":" in server_address:
|
||||
ip, port = server_address.split(":")
|
||||
|
||||
if not re.match(ip_regex, ip):
|
||||
return False
|
||||
|
||||
port = int(port)
|
||||
if port < 1 or port > 65535:
|
||||
if not 1 <= int(port) <= 65535:
|
||||
return False
|
||||
else:
|
||||
ip = server_address
|
||||
if not re.match(ip_regex, ip):
|
||||
if not re.match(ip_regex, server_address):
|
||||
return False
|
||||
|
||||
return True
|
||||
except ValueError:
|
||||
return False
|
||||
@ -77,7 +73,6 @@ root.resizable(False, False)
|
||||
scaling = 1
|
||||
window_width = int(720*scaling)
|
||||
window_height = int(360*scaling)
|
||||
|
||||
root.geometry(str(window_width) + "x" + str(window_height))
|
||||
|
||||
# Background image scaled correctly
|
||||
@ -91,6 +86,7 @@ background_label.pack(fill=BOTH, expand = YES)
|
||||
# Create the text fields
|
||||
font = ("arial", int(window_height/36))
|
||||
box_width = int(window_width/24)
|
||||
|
||||
server_address_label = Label(root, text="Server Address:", font=font, fg="black", width=box_width)
|
||||
server_address_field = Entry(root, font=font, width=box_width)
|
||||
username_label = Label(root, text="Username:", font=font, fg="black", width=box_width)
|
||||
|
@ -1,7 +1,11 @@
|
||||
altgraph==0.17.4
|
||||
appdirs==1.4.4
|
||||
asyncio==3.4.3
|
||||
packaging==24.2
|
||||
pillow==11.0.0
|
||||
pyasn1==0.6.1
|
||||
PySimpleGUI==5.0.7
|
||||
pyinstaller==6.11.1
|
||||
pyinstaller-hooks-contrib==2024.10
|
||||
rsa==4.9
|
||||
setuptools==75.6.0
|
||||
tk==0.1.0
|
||||
|
Loading…
Reference in New Issue
Block a user