001    package net.minecraft.src;
002    
003    public enum EnumEntitySize
004    {
005        SIZE_1,
006        SIZE_2,
007        SIZE_3,
008        SIZE_4,
009        SIZE_5,
010        SIZE_6;
011    
012        public int multiplyBy32AndRound(double par1)
013        {
014            double var3 = par1 - ((double)MathHelper.floor_double(par1) + 0.5D);
015    
016            switch (EnumEntitySizeHelper.field_75628_a[this.ordinal()])
017            {
018                case 1:
019                    if (var3 < 0.0D)
020                    {
021                        if (var3 < -0.3125D)
022                        {
023                            return MathHelper.ceiling_double_int(par1 * 32.0D);
024                        }
025                    }
026                    else if (var3 < 0.3125D)
027                    {
028                        return MathHelper.ceiling_double_int(par1 * 32.0D);
029                    }
030    
031                    return MathHelper.floor_double(par1 * 32.0D);
032                case 2:
033                    if (var3 < 0.0D)
034                    {
035                        if (var3 < -0.3125D)
036                        {
037                            return MathHelper.floor_double(par1 * 32.0D);
038                        }
039                    }
040                    else if (var3 < 0.3125D)
041                    {
042                        return MathHelper.floor_double(par1 * 32.0D);
043                    }
044    
045                    return MathHelper.ceiling_double_int(par1 * 32.0D);
046                case 3:
047                    if (var3 > 0.0D)
048                    {
049                        return MathHelper.floor_double(par1 * 32.0D);
050                    }
051    
052                    return MathHelper.ceiling_double_int(par1 * 32.0D);
053                case 4:
054                    if (var3 < 0.0D)
055                    {
056                        if (var3 < -0.1875D)
057                        {
058                            return MathHelper.ceiling_double_int(par1 * 32.0D);
059                        }
060                    }
061                    else if (var3 < 0.1875D)
062                    {
063                        return MathHelper.ceiling_double_int(par1 * 32.0D);
064                    }
065    
066                    return MathHelper.floor_double(par1 * 32.0D);
067                case 5:
068                    if (var3 < 0.0D)
069                    {
070                        if (var3 < -0.1875D)
071                        {
072                            return MathHelper.floor_double(par1 * 32.0D);
073                        }
074                    }
075                    else if (var3 < 0.1875D)
076                    {
077                        return MathHelper.floor_double(par1 * 32.0D);
078                    }
079    
080                    return MathHelper.ceiling_double_int(par1 * 32.0D);
081                case 6:
082                default:
083                    if (var3 > 0.0D)
084                    {
085                        return MathHelper.ceiling_double_int(par1 * 32.0D);
086                    }
087                    else
088                    {
089                        return MathHelper.floor_double(par1 * 32.0D);
090                    }
091            }
092        }
093    }