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