OpenMinecraft.Biome.GetBiomeType C# (CSharp) Method

GetBiomeType() public static method

public static GetBiomeType ( double _h, double _t ) : BiomeType
_h double
_t double
return BiomeType
        public static BiomeType GetBiomeType(double _h, double _t)
        {
            HumidityClass h = GetHumidClass(_h);
            TemperatureClass t = GetTempClass(_t);
            switch (h)
            {
                case HumidityClass.DRY:
                    switch (t)
                    {
                        case TemperatureClass.HOT:
                            return BiomeType.Desert;
                        case TemperatureClass.AVG:
                            return BiomeType.Grassland;
                        default:
                            return BiomeType.Tundra;
                    }
                case HumidityClass.AVG:
                    if (t == TemperatureClass.COLD)
                        return BiomeType.Taiga;
                    return BiomeType.TemperateForest;
                case HumidityClass.WET:
                    if (t == TemperatureClass.COLD)
                        return BiomeType.Taiga;
                    return BiomeType.RainForest;
            }
            return BiomeType.TemperateForest;
        }

Usage Example

Example #1
0
        public virtual BiomeType[,] DetermineBiomes(Vector3i chunkScale, long X, long Z)
        {
            BiomeType[,] bt = new BiomeType[chunkScale.X, chunkScale.Z];
            int    xo   = (int)(X * chunkScale.X);
            int    zo   = (int)(Z * chunkScale.Z);
            double maxT = 0;

            for (int x = 0; x < chunkScale.X; x++)
            {
                for (int z = 0; z < chunkScale.Z; z++)
                {
                    double h = HumidityNoise.Noise((double)(x + xo) / BIOME_SCALE, 0, (double)(z + zo) / BIOME_SCALE) + HumidityOffset;
                    double t = TemperatureNoise.Noise((double)(x + xo) / BIOME_SCALE, 0, (double)(z + zo) / BIOME_SCALE) + TemperatureOffset;
                    if (t > maxT)
                    {
                        maxT = t;
                    }
                    bt[x, z] = Biome.GetBiomeType(h, t);
                }
            }
            //Console.WriteLine("t=" + maxT.ToString());
            return(bt);
        }