package minefantasy.mf2.network.packet;
import io.netty.buffer.ByteBuf;
import minefantasy.mf2.api.stamina.StaminaBar;
import net.minecraft.entity.player.EntityPlayer;
import cpw.mods.fml.common.network.ByteBufUtils;
public class StaminaPacket extends PacketMF
{
public static final String packetName = "MF2_Staminabar";
private float[] value;
private String username;
public StaminaPacket(float[]value, EntityPlayer user)
{
this.value = value;
this.username = user.getCommandSenderName();
}
public StaminaPacket() {
}
@Override
public void process(ByteBuf packet, EntityPlayer player)
{
value = new float[]{StaminaBar.getDefaultMax(player), StaminaBar.getDefaultMax(player), 0, 0F};
value[0] = packet.readFloat();
value[1] = packet.readFloat();
value[2] = packet.readFloat();
value[3] = packet.readFloat();
username = ByteBufUtils.readUTF8String(packet);
if (username != null)
{
EntityPlayer entity = player.worldObj .getPlayerEntityByName(username);
if(entity != null)
{
StaminaBar.setStaminaValue(entity, value[0]);
StaminaBar.setMaxStamina(entity, value[1]);
StaminaBar.setFlashTime(entity, value[2]);
StaminaBar.setBonusStamina(entity, value[3]);
}
}
}
@Override
public String getChannel()
{
return packetName;
}
@Override
public void write(ByteBuf packet)
{
for(float variable : value)
{
packet.writeFloat(variable);
}
ByteBufUtils.writeUTF8String(packet, username);
}
}