"""Run the Snake game client.""" import asyncio import argparse from src.client.game_client import main from src.shared.constants import DEFAULT_PORT async def run_client() -> None: """Run the client with command line arguments.""" parser = argparse.ArgumentParser(description="Run the Snake game client") parser.add_argument( "host", nargs="?", default=None, help="Server host address (omit to use auto-discovery)", ) parser.add_argument( "--port", type=int, default=DEFAULT_PORT, help=f"Server port number (default: {DEFAULT_PORT})", ) parser.add_argument( "--name", default="Player", help="Your player name (default: Player)", ) parser.add_argument( "--discover", action="store_true", help="Force server discovery even if host is specified", ) args = parser.parse_args() await main( host=args.host, port=args.port, name=args.name, discover=args.discover, ) if __name__ == "__main__": asyncio.run(run_client())