From 24f31a3f10940015000c13a50ecf17ca58d8b508 Mon Sep 17 00:00:00 2001 From: MikeS-1 <36141900+MikeS-1@users.noreply.github.com> Date: Mon, 3 Jun 2019 15:47:50 -0400 Subject: [PATCH] I think it works! --- __pycache__/server.cpython-37.pyc | Bin 0 -> 7904 bytes server.py | 70 +++++++++++++++++++++--------- 2 files changed, 50 insertions(+), 20 deletions(-) create mode 100644 __pycache__/server.cpython-37.pyc diff --git a/__pycache__/server.cpython-37.pyc b/__pycache__/server.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8587cd1f2d27dad9c40ebcfc9b1da8c9460e8376 GIT binary patch literal 7904 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 Ay8r+H literal 0 HcmV?d00001 diff --git a/server.py b/server.py index d0d46c4..171c767 100644 --- a/server.py +++ b/server.py @@ -79,10 +79,14 @@ def room_description(self, room_number): :return: str """ - # TODO: YOUR CODE HERE - - pass + return [ + "You are in the room with the red wallpaper.", + "You are in the room with the white wallpaper.", + "You are in the room with the blue wallpaper.", + "You are in the room with the star wallpaper.", + ][room_number] + def greet(self): """ Welcome a client to the game. @@ -108,9 +112,12 @@ def get_input(self): :return: None """ - # TODO: YOUR CODE HERE + received = b'' + while b'\n' not in received: + received += self.client_connection.recv(16) + + self.input_buffer = received.decode().strip() - pass def move(self, argument): """ @@ -133,9 +140,27 @@ def move(self, argument): :return: None """ - # TODO: YOUR CODE HERE + if self.room == 0 and argument == "north": + self.room = 3 + + if self.room == 0 and argument == "west": + self.room = 1 + + if self.room == 0 and argument == "east": + self.room = 2 - pass + if self.room == 1 and argument == "east": + self.room = 0 + + if self.room == 2 and argument == "west": + self.room = 0 + + if self.room == 3 and argument == "south": + self.room = 0 + + self.output_buffer = self.room_description(self.room) + + def say(self, argument): """ @@ -151,9 +176,7 @@ def say(self, argument): :return: None """ - # TODO: YOUR CODE HERE - - pass + self.output_buffer = 'You say, "{}"'.format(argument) def quit(self, argument): """ @@ -167,10 +190,9 @@ def quit(self, argument): :return: None """ - # TODO: YOUR CODE HERE - - pass - + self.done = True + self.output_buffer = "Goodbye!" + def route(self): """ Examines `self.input_buffer` to perform the correct action (move, quit, or @@ -183,9 +205,19 @@ def route(self): :return: None """ - # TODO: YOUR CODE HERE + + received = self.input_buffer.split(" ") + + command = received.pop(0) + arguments = " ".join(received) - pass + { + 'quit': self.quit, + 'move': self.move, + 'say': self.say, + }[command](arguments) + + def push_output(self): """ @@ -197,10 +229,8 @@ def push_output(self): :return: None """ - # TODO: YOUR CODE HERE - - pass - + self.client_connection.sendall(b"OK! " + self.output_buffer.encode() + b"\n") + def serve(self): self.connect() self.greet()