示例#1
0
文件: Biome.java 项目: WRIM/AMIDST
  public Biome(String name, int index, int color, BiomeType type) {
    biomes[index] = this;
    this.name = name;
    this.index = index;
    this.color = color;
    this.type = type;
    biomeMap.put(name, this);

    if (index >= 128) this.color = Util.lightenColor(color, 40);
  }
示例#2
0
文件: Biome.java 项目: WRIM/AMIDST
public class Biome {
  public static final HashMap<String, Biome> biomeMap = new HashMap<String, Biome>();
  public static final BiomeType typeA = new BiomeType(0.1F, 0.2F);
  public static final BiomeType typeB = new BiomeType(-0.5F, 0.0F);
  public static final BiomeType typeC = new BiomeType(-1.0F, 0.1F);
  public static final BiomeType typeD = new BiomeType(-1.8F, 0.1F);
  public static final BiomeType typeE = new BiomeType(0.125F, 0.05F);
  public static final BiomeType typeF = new BiomeType(0.2F, 0.2F);
  public static final BiomeType typeG = new BiomeType(0.45F, 0.3F);
  public static final BiomeType typeH = new BiomeType(1.5F, 0.025F);
  public static final BiomeType typeI = new BiomeType(1.0F, 0.5F);
  public static final BiomeType typeJ = new BiomeType(0.0F, 0.025F);
  public static final BiomeType typeK = new BiomeType(0.1F, 0.8F);
  public static final BiomeType typeL = new BiomeType(0.2F, 0.3F);
  public static final BiomeType typeM = new BiomeType(-0.2F, 0.1F);

  public static final int length = 40;
  public static final Biome[] biomes = new Biome[256];
  public static final Biome ocean = new Biome("Ocean", 0, Util.makeColor(0, 0, 112), typeC);
  public static final Biome plains = new Biome("Plains", 1, Util.makeColor(141, 179, 96), typeA);
  public static final Biome desert = new Biome("Desert", 2, Util.makeColor(250, 148, 24), typeE);
  public static final Biome extremeHills =
      new Biome("Extreme Hills", 3, Util.makeColor(96, 96, 96), typeI);
  public static final Biome forest = new Biome("Forest", 4, Util.makeColor(5, 102, 33), typeA);
  public static final Biome taiga = new Biome("Taiga", 5, Util.makeColor(11, 102, 89), typeF);
  public static final Biome swampland =
      new Biome("Swampland", 6, Util.makeColor(7, 249, 178), typeM);
  public static final Biome river = new Biome("River", 7, Util.makeColor(0, 0, 255), typeB);
  public static final Biome hell = new Biome("Hell", 8, Util.makeColor(255, 0, 0), typeA);
  public static final Biome sky = new Biome("Sky", 9, Util.makeColor(128, 128, 255), typeA);
  public static final Biome frozenOcean =
      new Biome("Frozen Ocean", 10, Util.makeColor(144, 144, 160), typeC);
  public static final Biome frozenRiver =
      new Biome("Frozen River", 11, Util.makeColor(160, 160, 255), typeB);
  public static final Biome icePlains =
      new Biome("Ice Plains", 12, Util.makeColor(255, 255, 255), typeE);
  public static final Biome iceMountains =
      new Biome("Ice Mountains", 13, Util.makeColor(160, 160, 160), typeG);
  public static final Biome mushroomIsland =
      new Biome("Mushroom Island", 14, Util.makeColor(255, 0, 255), typeL);
  public static final Biome mushroomIslandShore =
      new Biome("Mushroom Island Shore", 15, Util.makeColor(160, 0, 255), typeJ);
  public static final Biome beach = new Biome("Beach", 16, Util.makeColor(250, 222, 85), typeJ);
  public static final Biome desertHills =
      new Biome("Desert Hills", 17, Util.makeColor(210, 95, 18), typeG);
  public static final Biome forestHills =
      new Biome("Forest Hills", 18, Util.makeColor(34, 85, 28), typeG);
  public static final Biome taigaHills =
      new Biome("Taiga Hills", 19, Util.makeColor(22, 57, 51), typeG);
  public static final Biome extremeHillsEdge =
      new Biome("Extreme Hills Edge", 20, Util.makeColor(114, 120, 154), typeI.getExtreme());
  public static final Biome jungle = new Biome("Jungle", 21, Util.makeColor(83, 123, 9), typeA);
  public static final Biome jungleHills =
      new Biome("Jungle Hills", 22, Util.makeColor(44, 66, 5), typeG);
  public static final Biome jungleEdge =
      new Biome("Jungle Edge", 23, Util.makeColor(98, 139, 23), typeA);
  public static final Biome deepOcean =
      new Biome("Deep Ocean", 24, Util.makeColor(0, 0, 48), typeD);
  public static final Biome stoneBeach =
      new Biome("Stone Beach", 25, Util.makeColor(162, 162, 132), typeK);
  public static final Biome coldBeach =
      new Biome("Cold Beach", 26, Util.makeColor(250, 240, 192), typeJ);
  public static final Biome birchForest =
      new Biome("Birch Forest", 27, Util.makeColor(48, 116, 68), typeA);
  public static final Biome birchForestHills =
      new Biome("Birch Forest Hills", 28, Util.makeColor(31, 95, 50), typeG);
  public static final Biome roofedForest =
      new Biome("Roofed Forest", 29, Util.makeColor(64, 81, 26), typeA);
  public static final Biome coldTaiga =
      new Biome("Cold Taiga", 30, Util.makeColor(49, 85, 74), typeF);
  public static final Biome coldTaigaHills =
      new Biome("Cold Taiga Hills", 31, Util.makeColor(36, 63, 54), typeG);
  public static final Biome megaTaiga =
      new Biome("Mega Taiga", 32, Util.makeColor(89, 102, 81), typeF);
  public static final Biome megaTaigaHills =
      new Biome("Mega Taiga Hills", 33, Util.makeColor(69, 79, 62), typeG);
  public static final Biome extremeHillsPlus =
      new Biome("Extreme Hills+", 34, Util.makeColor(80, 112, 80), typeI);
  public static final Biome savanna = new Biome("Savanna", 35, Util.makeColor(189, 178, 95), typeE);
  public static final Biome savannaPlateau =
      new Biome("Savanna Plateau", 36, Util.makeColor(167, 157, 100), typeH);
  public static final Biome mesa = new Biome("Mesa", 37, Util.makeColor(217, 69, 21), typeA);
  public static final Biome mesaPlateauF =
      new Biome("Mesa Plateau F", 38, Util.makeColor(176, 151, 101), typeH);
  public static final Biome mesaPlateau =
      new Biome("Mesa Plateau", 39, Util.makeColor(202, 140, 101), typeH);

  public static final Biome oceanM = new Biome("Ocean M", 128, Util.makeColor(0, 0, 112));
  public static final Biome sunflowerPlains =
      new Biome("Sunflower Plains", 129, Util.makeColor(141, 179, 96));
  public static final Biome desertM = new Biome("Desert M", 130, Util.makeColor(250, 148, 24));
  public static final Biome extremeHillsM =
      new Biome("Extreme Hills M", 131, Util.makeColor(96, 96, 96));
  public static final Biome flowerForest =
      new Biome("Flower Forest", 132, Util.makeColor(5, 102, 33));
  public static final Biome taigaM = new Biome("Taiga M", 133, Util.makeColor(11, 102, 89));
  public static final Biome swamplandM = new Biome("Swampland M", 134, Util.makeColor(7, 249, 178));
  public static final Biome riverM = new Biome("River M", 135, Util.makeColor(0, 0, 255));
  public static final Biome hellM = new Biome("Hell M", 136, Util.makeColor(255, 0, 0));
  public static final Biome skyM = new Biome("Sky M", 137, Util.makeColor(128, 128, 255));
  public static final Biome frozenOceanM =
      new Biome("Frozen Ocean M", 138, Util.makeColor(144, 144, 160));
  public static final Biome frozenRiverM =
      new Biome("Frozen River M", 139, Util.makeColor(160, 160, 255));
  public static final Biome icePlainsSpikes =
      new Biome("Ice Plains Spikes", 140, Util.makeColor(140, 180, 180));
  public static final Biome iceMountainsM =
      new Biome("Ice Mountains M", 141, Util.makeColor(160, 160, 160));
  public static final Biome mushroomIslandM =
      new Biome("Mushroom Island M", 142, Util.makeColor(255, 0, 255));
  public static final Biome mushroomIslandShoreM =
      new Biome("Mushroom Island Shore M", 143, Util.makeColor(160, 0, 255));
  public static final Biome beachM = new Biome("Beach M", 144, Util.makeColor(250, 222, 85));
  public static final Biome desertHillsM =
      new Biome("Desert Hills M", 145, Util.makeColor(210, 95, 18));
  public static final Biome forestHillsM =
      new Biome("Forest Hills M", 146, Util.makeColor(34, 85, 28));
  public static final Biome taigaHillsM =
      new Biome("Taiga Hills M", 147, Util.makeColor(22, 57, 51));
  public static final Biome extremeHillsEdgeM =
      new Biome("Extreme Hills Edge M", 148, Util.makeColor(114, 120, 154));
  public static final Biome jungleM = new Biome("Jungle M", 149, Util.makeColor(83, 123, 9));
  public static final Biome jungleHillsM =
      new Biome("Jungle Hills M", 150, Util.makeColor(44, 66, 5));
  public static final Biome jungleEdgeM =
      new Biome("Jungle Edge M", 151, Util.makeColor(98, 139, 23));
  public static final Biome deepOceanM = new Biome("Deep Ocean M", 152, Util.makeColor(0, 0, 48));
  public static final Biome stoneBeachM =
      new Biome("Stone Beach M", 153, Util.makeColor(162, 162, 132));
  public static final Biome coldBeachM =
      new Biome("Cold Beach M", 154, Util.makeColor(250, 240, 192));
  public static final Biome birchForestM =
      new Biome("Birch Forest M", 155, Util.makeColor(48, 116, 68));
  public static final Biome birchForestHillsM =
      new Biome("Birch Forest Hills M", 156, Util.makeColor(31, 95, 50));
  public static final Biome roofedForestM =
      new Biome("Roofed Forest M", 157, Util.makeColor(64, 81, 26));
  public static final Biome coldTaigaM = new Biome("Cold Taiga M", 158, Util.makeColor(49, 85, 74));
  public static final Biome coldTaigaHillsM =
      new Biome("Cold Taiga Hills M", 159, Util.makeColor(36, 63, 54));
  public static final Biome megaSpruceTaiga =
      new Biome("Mega Spruce Taiga", 160, Util.makeColor(89, 102, 81));
  public static final Biome megaSpurceTaigaHills =
      new Biome("Mega Spruce Taiga (Hills)", 161, Util.makeColor(69, 79, 62));
  public static final Biome extremeHillsPlusM =
      new Biome("Extreme Hills+ M", 162, Util.makeColor(80, 112, 80));
  public static final Biome savannaM = new Biome("Savanna M", 163, Util.makeColor(189, 178, 95));
  public static final Biome savannaPlateauM =
      new Biome("Savanna Plateau M", 164, Util.makeColor(167, 157, 100));
  public static final Biome mesaBryce = new Biome("Mesa (Bryce)", 165, Util.makeColor(217, 69, 21));
  public static final Biome mesaPlateauFM =
      new Biome("Mesa Plateau F M", 166, Util.makeColor(176, 151, 101));
  public static final Biome mesaPlateauM =
      new Biome("Mesa Plateau M", 167, Util.makeColor(202, 140, 101));

  public String name;
  public int index;
  public int color;
  public BiomeType type;

  public Biome(String name, int index, int color) {
    this(name, index, color, biomes[index - 128].type.getRare());
  }

  public Biome(String name, int index, int color, BiomeType type) {
    biomes[index] = this;
    this.name = name;
    this.index = index;
    this.color = color;
    this.type = type;
    biomeMap.put(name, this);

    if (index >= 128) this.color = Util.lightenColor(color, 40);
  }

  public String toString() {
    return "[Biome " + name + "]";
  }

  public static int indexFromName(String name) {
    Biome biome = biomeMap.get(name);
    if (biome != null) return biome.index;
    return -1;
  }

  public static final class BiomeType { // TODO: Rename once we figure out what this actually is!
    public float value1, value2;

    public BiomeType(float value1, float value2) {
      this.value1 = value1;
      this.value2 = value2;
    }

    public BiomeType getExtreme() {
      return new BiomeType(value1 * 0.8F, value2 * 0.6F);
    }

    public BiomeType getRare() {
      return new BiomeType(value1 + 0.1F, value2 + 0.2F);
    }
  }
}