def connect_req(self, context, ip, port):
     context.request = GameClientTCP()
     context.request.set_indication(context)
     connected = context.request.connect_req(ip, port)
     if connected:
         context.request.send_req(None, GameServerPDUCodec.connect_pdu())
         context.state = context.WAITING_FOR_ANOTHER_PLAYER
         print "Thread starts"
         context.request.start()
     else:
         context.request = None
     return connected
 def recv_ind(self, client, data):
     (pdu_id, len_pdu, _) = GameServerPDUCodec.decode(data)
     if pdu_id == PDUCodes.CLIENT_CONNECT:
         self.state.connect_pdu(self, client)
     return len_pdu