1
0
mirror of https://github.com/Rogiel/l2jserver2 synced 2025-12-08 08:23:11 +00:00

Change-Id: Ifa069a09d1b603781a2c9255d89b77cd6f25a359

This commit is contained in:
rogiel
2011-04-28 22:53:11 -03:00
parent 05e8355aaf
commit 54ef3c7fa2
38 changed files with 962 additions and 99 deletions

View File

@@ -0,0 +1,38 @@
package com.l2jserver.game.net.codec;
import org.jboss.netty.buffer.ChannelBuffer;
import org.jboss.netty.channel.Channel;
import org.jboss.netty.channel.ChannelHandlerContext;
import org.jboss.netty.handler.codec.oneone.OneToOneDecoder;
import com.l2jserver.game.net.packet.ClientPacket;
import com.l2jserver.game.net.packet.client.ProtocolVersionPacket;
public class Lineage2PacketReader extends OneToOneDecoder {
@Override
protected Object decode(ChannelHandlerContext ctx, Channel channel,
Object msg) throws Exception {
if (!(msg instanceof ChannelBuffer))
return msg;
final ChannelBuffer buffer = (ChannelBuffer) msg;
final ClientPacket packet = getPacket(buffer);
if (packet == null)
return null;
packet.read(buffer);
return packet;
}
private ClientPacket getPacket(ChannelBuffer buffer) {
final short opcode = buffer.readUnsignedByte();
switch (opcode) {
case ProtocolVersionPacket.OPCODE:
return new ProtocolVersionPacket();
case 0x2b:
return null;
default:
System.out.println("Unk: " + opcode);
break;
}
return null;
}
}