package joshie.harvest.player.packet;
import io.netty.buffer.ByteBuf;
import joshie.harvest.api.calendar.Season;
import joshie.harvest.api.calendar.CalendarDate;
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 PacketSyncBirthday extends PenguinPacket {
private int day;
private Season season;
private int year;
public PacketSyncBirthday() {}
public PacketSyncBirthday(CalendarDate date) {
this.day = date.getDay();
this.season = date.getSeason();
this.year = date.getYear();
}
@Override
public void toBytes(ByteBuf buf) {
buf.writeByte(day);
buf.writeByte(season.ordinal());
buf.writeShort(year);
}
@Override
public void fromBytes(ByteBuf buf) {
day = buf.readByte();
season = Season.values()[buf.readByte()];
year = buf.readShort();
}
@Override
public void handlePacket(EntityPlayer player) {
HFTrackers.getClientPlayerTracker().getStats().setBirthday(new CalendarDate(day, season, year));
}
}