@Override public void writeData(DataOutputStream output) throws IOException { PacketUtil.writeString(output, fileName); PacketUtil.writeString(output, plugin); output.writeBoolean(compressed); output.writeInt(fileData.length); output.write(fileData); }
@Override public void readData(DataInputStream input) throws IOException { this.fileName = PacketUtil.readString(input); this.plugin = PacketUtil.readString(input); compressed = input.readBoolean(); int size = input.readInt(); this.fileData = new byte[size]; input.readFully(fileData); }
@Override public void readData(DataInputStream input) throws IOException { cloudY = input.readInt(); stars = input.readInt(); sunPercent = input.readInt(); moonPercent = input.readInt(); sun = PacketUtil.readString(input, 256); moon = PacketUtil.readString(input, 256); skyColor = PacketUtil.readColor(input); fogColor = PacketUtil.readColor(input); cloudColor = PacketUtil.readColor(input); }
@Override public void writeData(DataOutputStream output) throws IOException { output.writeInt(cloudY); output.writeInt(stars); output.writeInt(sunPercent); output.writeInt(moonPercent); PacketUtil.writeString(output, sun); PacketUtil.writeString(output, moon); PacketUtil.writeColor(output, skyColor); PacketUtil.writeColor(output, fogColor); PacketUtil.writeColor(output, cloudColor); }
static { int i = 0; byte packetId = 0; header.packetId = ++packetId; fields[i] = PacketUtil.getField("VERSION", Fields.FIELD_TYPE_STRING); fields[i++].packetId = ++packetId; eof.packetId = ++packetId; }
public static void openBuggyInv(EntityPlayerMP player, IInventory buggyInv, int type) { player.incrementWindowID(); player.closeInventory(); int id = player.currentWindowId; player.playerNetServerHandler.sendPacketToPlayer( PacketUtil.createPacket(GalacticraftCore.CHANNEL, 28, new Object[] {id})); player.openContainer = new GCCoreContainerBuggy(player.inventory, buggyInv, type); player.openContainer.windowId = id; player.openContainer.addCraftingToCrafters(player); }
public void run() { try { int header_len = 2; int max_buffer_len = 102400; int tmp_buffer_len = 1024; int buffer_len = 0; byte[] buffer = new byte[max_buffer_len]; byte[] tmp_buffer = new byte[tmp_buffer_len]; System.out.println("connect success......"); while (true) { int readLen = this.input.read(tmp_buffer); // System.out.println("readLen: " + readLen); System.arraycopy(tmp_buffer, 0, buffer, buffer_len, readLen); buffer_len += readLen; // System.out.println("buffer_len: " + buffer_len); if (buffer_len <= header_len) { continue; } while (true) { int package_len = PacketUtil.readUShort(buffer); // System.out.println("package_len: " + package_len); if (buffer_len < package_len + header_len) { break; } buffer_len -= package_len + header_len; byte[] buf = new byte[package_len]; System.arraycopy(buffer, header_len, buf, 0, package_len); // System.arraycopy(buffer, 0, buffer, header_len + package_len, buffer_len); System.arraycopy(buffer, header_len + package_len, buffer, 0, buffer_len); // System.out.println("buffer_len: " + buffer_len); Packet packet = new Packet(buf); doMsg(packet); } } } catch (Exception e) { e.printStackTrace(); } }
@Override public int getNumBytes() { return 64 + PacketUtil.getNumBytes(sun) + PacketUtil.getNumBytes(moon); }
@Override public int getNumBytes() { return PacketUtil.getNumBytes(fileName) + PacketUtil.getNumBytes(plugin) + fileData.length + 4; }
@Override public void readData(DataInputStream input) throws IOException { entityId = input.readInt(); isMainTexture = input.readBoolean(); texture = PacketUtil.readString(input); }
@Override public void readData(DataInputStream input) throws IOException { title = PacketUtil.readString(input, 26); message = PacketUtil.readString(input, 26); itemId = input.readInt(); }
public void writeData(DataOutputStream output) throws IOException { output.writeInt(id); output.writeShort(data); PacketUtil.writeString(output, name); }
public void readData(DataInputStream input) throws IOException { id = input.readInt(); data = input.readShort(); name = PacketUtil.readString(input); }
public int getNumBytes() { return 6 + PacketUtil.getNumBytes(name); }
/** Created by snow_young on 16/8/4. */ public class ShowVersion { private static final int FIELD_COUNT = 1; private static final ResultSetHeaderPacket header = PacketUtil.getHeader(FIELD_COUNT); private static final FieldPacket[] fields = new FieldPacket[FIELD_COUNT]; private static final EOFPacket eof = new EOFPacket(); static { int i = 0; byte packetId = 0; header.packetId = ++packetId; fields[i] = PacketUtil.getField("VERSION", Fields.FIELD_TYPE_STRING); fields[i++].packetId = ++packetId; eof.packetId = ++packetId; } public static void execute(ProtocolTransport transport) { // ByteBuf buffer = transport.out; // write header // header.write(buffer); byte[] headerBytes = header.getPacket(); // transport.getChannel().writeAndFlush(header.getPacket()); // write fields for (FieldPacket field : fields) { // field.write(buffer); transport.getChannel().writeAndFlush(field.getPacket()); } // write eof // eof.write(buffer); transport.getChannel().writeAndFlush(eof.getPacket()); // write rows byte packetId = eof.packetId; RowDataPacket row = new RowDataPacket(FIELD_COUNT); row.add(Versions.SERVER_VERSION); row.packetId = ++packetId; // row.write(buffer); // transport.getChannel().writeAndFlush(row.getPacket()); // write last eof EOFPacket lastEof = new EOFPacket(); lastEof.packetId = ++packetId; lastEof.write(transport.out); // transport.getChannel().writeAndFlush(transport.out); // ctx.writeAndFlush(transport.out); // transport.in.release(); // System.out.println("byte[] is : " + buffer.array()); // try { // transport.getOutputStream().write(buffer.array()); // } catch (IOException e) { // e.printStackTrace(); // } // transport.getChannel().flush(); } }
@Override public void writeData(DataOutputStream output) throws IOException { output.writeInt(entityId); output.writeBoolean(isMainTexture); PacketUtil.writeString(output, texture); }
@Override public int getNumBytes() { return 4 + PacketUtil.getNumBytes(title) + PacketUtil.getNumBytes(message); }
private void doMsg(Packet packet) { short packetIdTmp = packet.readShort(); int packetId = PacketUtil.readUShort(packetIdTmp); System.out.println(); System.out.println("packetId: " + packetId); try { switch (packetId) { case Msg.P_REQ_TEST_X_X: { ReqTestXX reqTestXX = new ReqTestXX(packet); System.out.println("reqTestXX.getIdU8(): " + reqTestXX.getIdU8()); System.out.println("reqTestXX.getIdU16(): " + reqTestXX.getIdU16()); System.out.println("reqTestXX.getIdU32(): " + reqTestXX.getIdU32()); AckTestXX ackTestXX = new AckTestXX(); ackTestXX.setIdU8((byte) 255); ackTestXX.setIdU16((short) 65535); ackTestXX.setIdU32(65535666); List<Byte> id_u8 = new ArrayList<Byte>(); id_u8.add((byte) 254); id_u8.add((byte) 255); ackTestXX.setRepeatIdU8(id_u8); ackTestXX.setOptionalIdU8((byte) 255); this.output.write(ackTestXX.encode()); this.output.flush(); break; } case Msg.P_REQ_TEST_SEND: { ReqTestSend reqTestSend = new ReqTestSend(packet); System.out.println("reqTestSend.getIdU8(): " + reqTestSend.getIdU8()); System.out.println( "reqTestSend.getRoleBase().getUid(): " + reqTestSend.getRoleBase().getUid()); System.out.println( "reqTestSend.getRoleBase().getUname(): " + reqTestSend.getRoleBase().getUname()); System.out.println( "reqTestSend.getOpRoleBase().getUid(): " + reqTestSend.getOpRoleBase().getUid()); System.out.println( "reqTestSend.getOpRoleBase().getUname(): " + reqTestSend.getOpRoleBase().getUname()); MsgRoleBase msgRoleBase = new MsgRoleBase(); msgRoleBase.setUid(12306); msgRoleBase.setUname("mirahs"); List<Float> id_f32 = new ArrayList<Float>(); id_f32.add(1.33f); id_f32.add(1.44f); AckTestSendOk ackTestSendOk = new AckTestSendOk(); ackTestSendOk.setIdU8((byte) 255); ackTestSendOk.setRoleBase(msgRoleBase); ackTestSendOk.setIdF32(id_f32); ackTestSendOk.setIdOpU8((byte) 12); ackTestSendOk.setOpRoleBase(msgRoleBase); this.output.write(ackTestSendOk.encode()); this.output.flush(); break; } } } catch (Exception e) { e.printStackTrace(); } }
@Override public void writeData(DataOutputStream output) throws IOException { PacketUtil.writeString(output, title); PacketUtil.writeString(output, message); output.writeInt(itemId); }
@Override public int getNumBytes() { return PacketUtil.getNumBytes(texture) + 4 + 1; }