Skip to content

Commit

Permalink
Add basic CLI for port and address binding
Browse files Browse the repository at this point in the history
  • Loading branch information
Solirs committed Jun 27, 2023
1 parent 7747006 commit d062139
Showing 1 changed file with 12 additions and 7 deletions.
19 changes: 12 additions & 7 deletions freefang/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,7 @@
import roles
import time
import struct

ip = "0.0.0.0"
port = 9999
import argparse

def parse_ruleset(ruleset):
ret = {}
Expand All @@ -22,17 +20,17 @@ def parse_ruleset(ruleset):
return ret


def game_creation_loop():
def game_creation_loop(args):

games = {}
# Create game object

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) #For devs only
s.setblocking(0)
s.bind((ip, port))
s.bind((args.addr, args.port))
s.listen()
print(f"Listening on {ip}:{port}")
print(f"Listening on {args.addr}:{args.port}")

inputs = [s]
outputs = []
Expand Down Expand Up @@ -117,7 +115,14 @@ def game_creation_loop():

def main():
print("Starting FreeFang server.")
game_creation_loop()
parser = argparse.ArgumentParser()
parser.add_argument("-p", "--port", help="The port for the server to listen on (default: 9999)", type=int, default="9999")
parser.add_argument("-i", "--addr", help="The address to listen on (default: 0.0.0.0)", type=str, default="0.0.0.0")

args = parser.parse_args()

game_creation_loop(args)



if __name__ == "__main__":
Expand Down

0 comments on commit d062139

Please sign in to comment.