public static float[, ][] GetBiomes(IMap map, MapGen mapGen, int numCats, BiomeInitialization biomeInit)
    {
        float[, ][] biomes = new float[map.xDim, map.yDim][];
        switch (biomeInit)
        {
        case BiomeInitialization.Clustering:
            biomes = GetBiomesFromClustering2(map, mapGen, numCats);
            break;

        case BiomeInitialization.Noise:
            biomes = GetBiomesFromNoise2(map, mapGen, numCats);
            break;

        case BiomeInitialization.Painting:
            biomes = GetBiomesFromPainted2(map, mapGen, numCats);
            break;

        case BiomeInitialization.BasicWaterTemp:
            biomes = GetBiomesFromBasicWaterTemp2(map, mapGen, numCats);
            break;

        case BiomeInitialization.AdvancedWaterTemp:
            biomes = GetBiomesFromAdvancedWaterTemp2(map, mapGen, numCats);
            break;

        case BiomeInitialization.AutomaticWaterTemp:
            biomes = GetBiomesFromAutomaticWaterTemp2(map, mapGen, numCats);
            break;

        case BiomeInitialization.AutomaticWaterTempLongLat:
            biomes = GetBiomesFromAutomaticWaterTempLongLat2(map, mapGen, numCats);
            break;
        }
        return(biomes);
    }
Пример #2
0
    public static Dictionary <Pos, ILocation> MakeLocationsForExodusFromMethod(BiomeInitialization biomeInit, ExodusGame game, MapGen mapGen, int numCats)
    {
        IMap map = game.map;
        Dictionary <Pos, ILocation> locations = new Dictionary <Pos, ILocation>();

        float[][,] biomes = ExodusBiomeInitializer.GetBiomesFromMethod(map, mapGen, numCats, biomeInit);

        Color[] colorList = Colors.ColorListProcedural(2000);
        for (int x = 0; x < map.xDim; x++)
        {
            for (int y = 0; y < map.yDim; y++)
            {
                Pos     p          = map.pathMap[new Loc(x, y).key()];
                float[] thisBiomes = new float[numCats];
                for (int iCat = 0; iCat < numCats; iCat++)
                {
                    thisBiomes[iCat] = biomes[iCat][x, y];
                }
                Dictionary <string, float> qualities = mapGen.GetLocationQualities(x, y);
                locations[p] = new ExodusLocation(p, thisBiomes, game, qualities);
            }
        }

        return(locations);
    }
    public static float[][,] GetBiomesFromMethod(IMap map, MapGen mapGen, int numCats, BiomeInitialization biomeInit)
    {
        float[][,] biomes = new float[numCats][, ];
        switch (biomeInit)
        {
        case BiomeInitialization.Clustering:
            biomes = GetBiomesFromClustering(map, mapGen, numCats);
            break;

        case BiomeInitialization.Noise:
            biomes = GetBiomesFromNoise(map, mapGen, numCats);
            break;

        case BiomeInitialization.Painting:
            biomes = GetBiomesFromPainted(map, mapGen, numCats);
            break;

        case BiomeInitialization.BasicWaterTemp:
            biomes = GetBiomesFromBasicWaterTemp(map, mapGen, numCats);
            break;

        case BiomeInitialization.AdvancedWaterTemp:
            biomes = GetBiomesFromAdvancedWaterTemp(map, mapGen, numCats);
            break;

        case BiomeInitialization.AutomaticWaterTemp:
            biomes = GetBiomesFromAutomaticWaterTemp(map, mapGen, numCats);
            break;

        case BiomeInitialization.AutomaticWaterTempLongLat:
            biomes = GetBiomesFromAutomaticWaterTempLongLat(map, mapGen, numCats);
            break;
        }
        return(biomes);
    }