public void ParseValue(GameBitBuffer buffer)
{
switch (Field1.EncodingType)
{
case GameAttributeEncoding.Int:
Int = buffer.ReadInt(Field1.BitCount);
break;
case GameAttributeEncoding.IntMinMax:
Int = buffer.ReadInt(Field1.BitCount) + Field1.Min;
break;
case GameAttributeEncoding.Float16:
Float = buffer.ReadFloat16();
break;
case GameAttributeEncoding.Float16Or32:
Float = buffer.ReadBool() ? buffer.ReadFloat16() : buffer.ReadFloat32();
break;
default:
throw new Exception("bad voodoo");
}
}