private void readyListen() throws IOException {
		Object messageRecv;
		do {
			// Have a connection
			try {
				messageRecv = input.readObject();
				if (messageRecv instanceof NodePacket)
				{
					nodePacketRecv = (NodePacket) messageRecv; // Read incomming stream
					mcg.updatePlayer(nodePacketRecv);
					node.sendToLeft(nodePacketRecv);
				}
				else
				{
					if (messageRecv instanceof MessagePacket) {
						messagePacketRecv = (MessagePacket) messageRecv;
						if (messagePacketRecv.getMessage().equals("READY")) {
							if (mcg.isGameDecisionMaker())
								mcg.receiveReadyStatus(messagePacketRecv.getIP());
							else
								node.sendMessageLeft(messagePacketRecv);
							System.out.println("Receive Message");
						}
					}
					else {
                        if (messageRecv instanceof State) {
                            State incoming_state = (State) messageRecv;
                            //System.out.println("Incoming state from : "+incoming_state.getIP());
                            node.receiveNeighbourState(incoming_state);
                            node.sendStateLeft(incoming_state);
                        }
                        else {
                            if (messageRecv instanceof Vote) {
                                Vote incoming_vote = (Vote) messageRecv;
                                //System.out.println("Incoming state from : "+incoming_state.getIP());
                                node.receiveVote(incoming_vote);
                                node.sendVoteLeft(incoming_vote);
                            }
                        }
                    }
				}
			} catch (ClassNotFoundException cnfException) {
				System.out.println("\n User sent some corrupted data...");
			}
		} while (true);

	}