self.queue.get() if bytetoval(adj.msg[1]) == 90 and bytetoval(adj.msg[0]) == ROVER_LEFT: self.changeAngle(-90) elif bytetoval(adj.msg[1]) == 90 and bytetoval(adj.msg[0]) == ROVER_RIGHT: self.changeAngle(90) self.queue.task_done() # game over print("Test Ended") self.client.send(InternalMessage(MY_ROLE, END_GAME, b'0')) self.client.send(InternalMessage(MY_ROLE, DEBUG_MSG, b'TEST END')) self.running = False if __name__ == "__main__": client = Client(TARGET_IP, TARGET_PORT, MY_ROLE) client.connect() rover = Rover(client) while 1: msg = client.get() if msg.msgtype == OBJECT_POS: obj = decipherMessage(msg.msg) if obj[0] == 163: # print("Message Received: {} - Object: {} xPos: {}, yPos: {}, angle: {}, length: {}, width: {}".format(VAL_TO_MSG[msg.msgtype], *obj)) rover.addPos(obj[1], obj[2], obj[3]) elif msg.msgtype == PING: client.send(InternalMessage(MY_ROLE, PONG, b'1')) elif msg.msgtype == ROVER_MOVE:
elif keyin[0] == "r": try: msg = roverMove(ROVER_RIGHT, int(keyin[1:]), MY_ROLE) except (ValueError, IndexError): msg = roverMove(ROVER_RIGHT, 0, MY_ROLE) elif keyin == "s": msg = roverMove(ROVER_STOP, 0, MY_ROLE) else: msg = InternalMessage(MY_ROLE, DEBUG_MSG, keyin.encode()) if msg is not None: sendMsg(msg, client) except KeyboardInterrupt: pass if __name__ == "__main__": client = Client(TARGET_IP, TARGET_PORT, MY_ROLE) client.connect() cmdThread = Thread(target=cmdInput, args=[client], daemon=True) cmdThread.start() while cmdThread.is_alive(): try: msg = client.queue.get(timeout=1) if msg.msgtype == CLIENT_ROLE: print("Message Received: {} - {}".format(VAL_TO_MSG[msg.msgtype], VAL_TO_ROLE[msg.msg[0]])) elif msg.msgtype == ROVER_MOVE: print("Message Received: {} - {}, {}".format(VAL_TO_MSG[msg.msgtype], VAL_TO_ROV[msg.msg[0]], msg.msg[1])) else: print("Message Received: {} - {}".format(VAL_TO_MSG[msg.msgtype], msg.msg)) except Empty: pass