Package com.l2client.network.login.ServerPackets

Examples of com.l2client.network.login.ServerPackets.LoginServerPacket


          connected = false;
        }
        return;
      }

      LoginServerPacket pa = null;

      loginCrypt.decrypt(raw, 2, raw.length - 2);

      switch (status) {
      case INIT:
        loginCrypt = new LoginCrypt();
        // init packet must be dexored in addition
        byte[] tmp = new byte[raw.length - 2];
        System.arraycopy(raw, 2, tmp, 0, raw.length - 2);
        loginCrypt.decXORPass(tmp, 0, tmp.length);
        System.arraycopy(tmp, 0, raw, 2, tmp.length);
        log.info("Received Init packet, requesting Auth GameGuard...");
        pa = new Init();
        status = LoginStatus.AUTHGAMEGUARD;
        break;
      case AUTHGAMEGUARD:
        if (raw[2] == 0x0B) {
          log
              .info("Received Auth GameGuard, requesting AuthLogin...");
          pa = new AuthLogin(user, password, rsaKey);
          status = LoginStatus.AUTHENTIFICATED;
          selectedServer = -1;
        }
        break;
      case AUTHENTIFICATED:
        switch (raw[2]) {
        case 0x01:// login fail
        case 0x02:
          log.info("Received login failed:" + raw[2] + ":" + raw[3]);
          pa = new LoginFailed();
          doDisconnect(false, "", -1);
          break;
        case 0x03:// login ok
          log.info("Login ok, requesting server list...");
          pa = new LoginOk();
          break;
        case 0x04:// server list
          log.info("Received server list...");
          pa = new ServerList();
          break;
        case 0x06:// play fail
          log.info("Received play fail:" + raw[2] + ":" + raw[3]);
          pa = new PlayFailed();
          // TODO what to do next, back to server list?
          break;
        case 0x07:
          log.info("Received play ok");
          pa = new PlayOK(gameServers[selectedServer]);
          break;
        default:
          log.severe("Unhandled packet in Loginserver with id:"
              + raw[2]);
        }
      }
      if (pa != null) {
        pa.setBytes(raw);
        pa.setHandler(this);
        try {
          pa.handlePacket();
        } catch (Exception e) {
          log.log(Level.SEVERE, "Failed to handle login packet"
              + pa.getClass().getSimpleName() + " Check packet code!", e);
        }
      }
    }
  }
View Full Code Here

TOP

Related Classes of com.l2client.network.login.ServerPackets.LoginServerPacket

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.