package joshie.harvest.calendar.packet;
import io.netty.buffer.ByteBuf;
import joshie.harvest.api.calendar.Weather;
import joshie.harvest.calendar.data.CalendarClient;
import joshie.harvest.core.HFTrackers;
import joshie.harvest.core.network.Packet;
import joshie.harvest.core.network.PenguinPacket;
import net.minecraft.entity.player.EntityPlayer;
@Packet(Packet.Side.CLIENT)
public class PacketSyncForecast extends PenguinPacket {
private Weather[] forecast;
public PacketSyncForecast() {}
public PacketSyncForecast(Weather[] forecast) {
this.forecast = forecast;
}
@Override
public void toBytes(ByteBuf buf) {
for (int i = 0; i < 7; i++) {
buf.writeByte(forecast[i].ordinal());
}
}
@Override
public void fromBytes(ByteBuf buf) {
forecast = new Weather[7];
for (int i = 0; i < 7; i++) {
forecast[i] = Weather.values()[buf.readByte()];
}
}
@Override
public void handlePacket(EntityPlayer player) {
HFTrackers.<CalendarClient>getCalendar(player.worldObj).setForecast(forecast);
}
}