aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus/australia/biome/GenLayerBiomesAustraliaDimension.java
blob: 8a1f99239f6470310dcd33248b7c2e078dea36c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package gtPlusPlus.australia.biome;

import gtPlusPlus.australia.biome.type.Biome_AustralianDesert_Ex;
import gtPlusPlus.australia.biome.type.Biome_AustralianForest;
import gtPlusPlus.australia.biome.type.Biome_AustralianOcean;
import gtPlusPlus.australia.biome.type.Biome_AustralianOutback;
import gtPlusPlus.australia.biome.type.Biome_AustralianPlains;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.layer.GenLayer;
import net.minecraft.world.gen.layer.IntCache;

public class GenLayerBiomesAustraliaDimension extends GenLayer {

    protected BiomeGenBase[] allowedBiomes = {
        Biome_AustralianDesert_Ex.biome,
        Biome_AustralianDesert_Ex.biome,
        Biome_AustralianOutback.biome,
        Biome_AustralianOutback.biome,
        Biome_AustralianForest.biome,
        Biome_AustralianForest.biome,
        Biome_AustralianPlains.biome,
        Biome_AustralianPlains.biome,
        Biome_AustralianOcean.biome,
    };

    public GenLayerBiomesAustraliaDimension(long seed) {
        super(seed);
    }

    public GenLayerBiomesAustraliaDimension(long seed, GenLayer genlayer) {
        super(seed);
        this.parent = genlayer;
    }

    @Override
    public int[] getInts(int x, int z, int width, int depth) {
        int[] dest = IntCache.getIntCache(width * depth);
        for (int dz = 0; dz < depth; dz++) {
            for (int dx = 0; dx < width; dx++) {
                this.initChunkSeed(dx + x, dz + z);
                dest[(dx + dz * width)] = this.allowedBiomes[nextInt(this.allowedBiomes.length)].biomeID;
            }
        }
        return dest;
    }
}