package com.brandon3055.townbuilder.network; import com.brandon3055.brandonscore.network.MessageHandlerWrapper; import com.brandon3055.townbuilder.schematics.FileHandler; import io.netty.buffer.ByteBuf; import net.minecraftforge.fml.common.network.simpleimpl.IMessage; import net.minecraftforge.fml.common.network.simpleimpl.MessageContext; /** * Created by Brandon on 2/03/2015. */ public class PacketByteStream implements IMessage { public short packetindex; public short packetCount; public byte[] bytes; public PacketByteStream(){} public PacketByteStream(byte[] bytes, int count, int index) { this.bytes = bytes; this.packetCount = (short)count; this.packetindex = (short)index; } @Override public void fromBytes(ByteBuf buf) { packetCount = buf.readShort(); packetindex = buf.readShort(); bytes = new byte[buf.readableBytes()]; buf.readBytes(bytes); } @Override public void toBytes(ByteBuf buf) { buf.writeShort(packetCount); buf.writeShort(packetindex); buf.writeBytes(bytes); } public static class Handler extends MessageHandlerWrapper<PacketByteStream,IMessage> { @Override public IMessage handleMessage(PacketByteStream message, MessageContext ctx) { FileHandler.instance.receiveFile(message, ctx); return null; } } }