package joshie.progression.network; import io.netty.buffer.ByteBuf; import joshie.progression.network.core.PenguinPacket; import joshie.progression.player.PlayerTeam; import joshie.progression.player.PlayerTracker; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fml.common.network.ByteBufUtils; @Packet public class PacketSyncTeam extends PenguinPacket { private NBTTagCompound tag; public PacketSyncTeam() {} public PacketSyncTeam(PlayerTeam team) { tag = new NBTTagCompound(); team.writeToNBT(tag); } @Override public void toBytes(ByteBuf to) { ByteBufUtils.writeTag(to, tag); } @Override public void fromBytes(ByteBuf from) { tag = ByteBufUtils.readTag(from); } @Override public void handlePacket(EntityPlayer player) { PlayerTeam team = new PlayerTeam(); team.readFromNBT(tag); //Server to Client if (player.worldObj.isRemote) { PlayerTracker.getClientPlayer().setTeam(team); } else { //Client to server PlayerTracker.getServerPlayer(player).setTeam(team); } } }