Skip to content

Commit

Permalink
Allow specifying port for server
Browse files Browse the repository at this point in the history
  • Loading branch information
semjon00 committed Mar 5, 2024
1 parent 230519a commit 6ab1cb4
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 7 deletions.
10 changes: 4 additions & 6 deletions gui_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ async def send(self, msg):
await self.websocket.send(json.dumps(msg))

async def activate(self, where):
self.deactivate()
await self.deactivate()
if where == 'l':
where = '127.0.0.1' # 'localhost' does not work for Windows
if ':' not in where:
Expand All @@ -48,9 +48,9 @@ async def activate(self, where):
raise Exception('Server and client versions do not match.')


def deactivate(self):
async def deactivate(self):
if self.websocket is not None:
self.websocket.close()
await self.websocket.close()
self.websocket = None

async def messages(self):
Expand Down Expand Up @@ -88,13 +88,11 @@ async def process_event(self, event):
return
elif event.key == pygame.K_BACKSPACE:
self.result = self.result[:-1]
elif event.key == pygame.K_ESCAPE:
elif event.key == pygame.K_ESCAPE or event.key == pygame.K_x and event.mod & pygame.KMOD_CTRL:
self.result = ''
elif (event.key == pygame.K_v) and (event.mod & pygame.KMOD_CTRL):
import pyperclip
self.result += pyperclip.paste()
elif (event.key == pygame.K_x) and (event.mod & pygame.KMOD_CTRL):
self.result = ''
else:
key = event.unicode
is_allowed = len(key) == 1 and (key[0].isalnum() or key[0] in '[].:')
Expand Down
7 changes: 6 additions & 1 deletion server.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
# TODO: No exception handling, speedrun coding mode let's goo

import asyncio
import argparse
import json
import random
import time
Expand Down Expand Up @@ -314,9 +315,13 @@ async def listen_socket(self, websocket, path):


if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("-p", "--port", default=None, type=int)
args = parser.parse_args()

print(f'FriendlySquares server {GAME_VERSION} has started')
s = Server()
start_server = websockets.serve(s.listen_socket, ['0.0.0.0'], DEFAULT_PORT)
start_server = websockets.serve(s.listen_socket, ['0.0.0.0'], args.port or DEFAULT_PORT)
scoring.score(['rr', 'rr']) # Compile Numba code
print(f'Ready to accept connections')
asyncio.get_event_loop().run_until_complete(start_server)
Expand Down

0 comments on commit 6ab1cb4

Please sign in to comment.