private void handleLogin(Packet00Login packet, InetAddress address, int port) {
    System.out.println(address.getHostAddress() + ": " + port
        + " " + packet.getUsername() + " has connected...");
    // sun password
    PlayerMP player = new PlayerMP(packet.getUsername(), packet.getPassword(), packet.getX(), packet.getY(), address, port);
    // sun authorize player
    if (db.Authorize(player.getUsername(), player.getPassword()) )
      player.setValid(1);
    else
    {
      Packet00Login pc = new Packet00Login(packet.getUsername(), "", -1, -1, -1, -1, 0);
      sendData(pc.getData(), player.ipAddress, player.port);
      return;
    };
    //

    // sun
    // assume connected players are all different
//    set the position of the new added player
    player.setPosition(connectedPlayers.size() + 1);
    this.addConnection(player, packet);
    if(getNumPlayers() == NUM_PLAYERS) {
      System.out.println("RRRRRRRRRReady");
      new Game(connectedPlayers, this, this.balls, this.bricks);
      inGame = true;
    }
  }