Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package varekd.packethandler;
- import varekd.util.RSA;
- import org.apache.mina.common.IoSession;
- import varekd.Server;
- import varekd.model.Player;
- import varekd.model.World;
- import varekd.net.Packet;
- import java.net.InetSocketAddress;
- public class PlayerLogin extends GameEnginePacketHandler {
- public void handlePacket(Packet p1, final IoSession session) { Player player = (Player) session.getAttachment();
- byte loginCode;
- try {
- byte[] data = RSA.decrypt(p1.getData());
- Packet p = new Packet(session, 0, data);
- boolean reconnecting = (p.readByte() == 1);
- int clientVersion = p.readInt();
- int[] sessionKeys = new int[4];
- for (int key = 0; key < sessionKeys.length; key++) {
- sessionKeys[key] = p.readInt();
- }
- String username = "";
- String password = "";
- username = p.readString(20).trim();
- password = p.readString(20).trim();
- player.setCredentials(username, password, reconnecting);
- World.getWorld().getPlayerLoadQueue().addLoad(player);
- } catch(Exception e) {
- e.printStackTrace();
- }
- }
- private byte[] getBytes(int i) {
- byte[] buf = new byte[4];
- byte off=0, decr=24;
- for(; off<buf.length; ) {
- buf[off++] = (byte)(i >> decr);
- decr -= 8;
- }
- return buf;
- }
- private byte[] getBytes(long l) {
- byte[] buf = new byte[8];
- byte off=0, decr=56;
- for(; off<buf.length; ) {
- buf[off++] = (byte)(l >> decr);
- decr -= 8;
- }
- return buf;
- }
- }
Add Comment
Please, Sign In to add comment