Cuberite
A lightweight, fast and extensible game server for Minecraft
BiomeDef.h
Go to the documentation of this file.
1 
2 // BiomeDef.h
3 
4 // Defines relevant information and methods related to biomes
5 
6 
7 
8 
9 
10 #pragma once
11 
12 // tolua_begin
18 {
20 
22  biOcean = 0,
23  biPlains = 1,
24  biDesert = 2,
26  biForest = 4,
27  biTaiga = 5,
29  biRiver = 7,
30  biHell = 8, // same as Nether
31  biNether = 8,
32  biSky = 9, // same as biEnd
33  biEnd = 9,
37  biTundra = 12, // same as Ice Plains
41  biBeach = 16,
46  biJungle = 21,
48 
49  // Release 1.7 biomes:
62  biSavanna = 35,
64  biMesa = 37,
67 
68  // Automatically capture the maximum consecutive biome value into biMaxBiome:
69  biNumBiomes, // True number of biomes, since they are zero-based
70  biMaxBiome = biNumBiomes - 1, // The maximum biome value
71 
72  // Add this number to the biomes to get the variant
73  biVariant = 128,
74 
75  // Release 1.7 biome variants:
78  biDesertM = 130,
81  biTaigaM = 133,
82  biSwamplandM = 134,
84  biJungleM = 149,
89  biColdTaigaM = 158,
93  biSavannaM = 163,
95  biMesaBryce = 165,
98  // Automatically capture the maximum consecutive biome value into biVarientMaxBiome:
99  biNumVariantBiomes, // True number of biomes, since they are zero-based
100  biMaxVariantBiome = biNumVariantBiomes - 1, // The maximum biome value
101 } ;
102 
103 // tolua_end
104 
105 
106 
107 
108 
111 {
112 public:
113  std::size_t operator() (const EMCSBiome a_Biome) const
114  {
115  return static_cast<std::size_t>(a_Biome);
116  }
117 };
118 
119 
120 
121 
122 
123 // tolua_begin
124 
126 extern EMCSBiome StringToBiome(const AString & a_BiomeString);
127 
129 extern AString BiomeToString(int a_Biome);
130 
132 extern bool IsBiomeNoDownfall(EMCSBiome a_Biome);
133 
135 inline bool IsBiomeOcean(int a_Biome)
136 {
137  return ((a_Biome == biOcean) || (a_Biome == biDeepOcean));
138 }
139 
143 extern bool IsBiomeVeryCold(EMCSBiome a_Biome);
144 
148 extern bool IsBiomeCold(EMCSBiome a_Biome);
149 
151 extern bool IsBiomeMountain(EMCSBiome a_Biome);
152 
154 extern bool IsBiomeMesa(EMCSBiome a_Biome);
155 
157 extern int GetSnowStartHeight(EMCSBiome a_Biome);
158 
159 // tolua_end
biBirchForest
@ biBirchForest
Definition: BiomeDef.h:54
biPlains
@ biPlains
Definition: BiomeDef.h:23
biBirchForestM
@ biBirchForestM
Definition: BiomeDef.h:86
biSavannaM
@ biSavannaM
Definition: BiomeDef.h:93
biFrozenRiver
@ biFrozenRiver
Definition: BiomeDef.h:35
IsBiomeNoDownfall
bool IsBiomeNoDownfall(EMCSBiome a_Biome)
Returns true if the biome has no downfall - deserts and savannas.
Definition: BiomeDef.cpp:142
biMesaPlateau
@ biMesaPlateau
Definition: BiomeDef.h:66
biMesa
@ biMesa
Definition: BiomeDef.h:64
biTaigaM
@ biTaigaM
Definition: BiomeDef.h:81
biRoofedForestM
@ biRoofedForestM
Definition: BiomeDef.h:88
biMesaPlateauF
@ biMesaPlateauF
Definition: BiomeDef.h:65
biNumVariantBiomes
@ biNumVariantBiomes
Definition: BiomeDef.h:99
biMegaTaiga
@ biMegaTaiga
Definition: BiomeDef.h:59
biTundra
@ biTundra
Definition: BiomeDef.h:37
biSavanna
@ biSavanna
Definition: BiomeDef.h:62
GetSnowStartHeight
int GetSnowStartHeight(EMCSBiome a_Biome)
Returns the height when a biome when a biome starts snowing.
Definition: BiomeDef.cpp:275
biForestHills
@ biForestHills
Definition: BiomeDef.h:43
biNether
@ biNether
Definition: BiomeDef.h:31
biMaxBiome
@ biMaxBiome
Definition: BiomeDef.h:70
biStoneBeach
@ biStoneBeach
Definition: BiomeDef.h:52
biFlowerForest
@ biFlowerForest
Definition: BiomeDef.h:80
biSwampland
@ biSwampland
Definition: BiomeDef.h:28
biJungleEdge
@ biJungleEdge
Definition: BiomeDef.h:50
biExtremeHillsEdge
@ biExtremeHillsEdge
Definition: BiomeDef.h:45
biIceMountains
@ biIceMountains
Definition: BiomeDef.h:38
biExtremeHillsM
@ biExtremeHillsM
Definition: BiomeDef.h:79
biBirchForestHillsM
@ biBirchForestHillsM
Definition: BiomeDef.h:87
biJungleEdgeM
@ biJungleEdgeM
Definition: BiomeDef.h:85
biJungleHills
@ biJungleHills
Definition: BiomeDef.h:47
IsBiomeMesa
bool IsBiomeMesa(EMCSBiome a_Biome)
Returns true if the biome is Mesa or one of its mutations.
Definition: BiomeDef.cpp:251
biIcePlainsSpikes
@ biIcePlainsSpikes
Definition: BiomeDef.h:83
biForest
@ biForest
Definition: BiomeDef.h:26
biColdBeach
@ biColdBeach
Definition: BiomeDef.h:53
biIcePlains
@ biIcePlains
Definition: BiomeDef.h:36
biColdTaigaHills
@ biColdTaigaHills
Definition: BiomeDef.h:58
biMegaTaigaHills
@ biMegaTaigaHills
Definition: BiomeDef.h:60
biMushroomShore
@ biMushroomShore
Definition: BiomeDef.h:40
IsBiomeOcean
bool IsBiomeOcean(int a_Biome)
Returns true if the biome is an ocean biome.
Definition: BiomeDef.h:135
biOcean
@ biOcean
Definition: BiomeDef.h:22
biRiver
@ biRiver
Definition: BiomeDef.h:29
BiomeHasher
Hash for EMCSBiome, so that it can be used in std::unordered_map etc.
Definition: BiomeDef.h:110
IsBiomeVeryCold
bool IsBiomeVeryCold(EMCSBiome a_Biome)
Returns true if the biome is very cold (has snow on ground everywhere, turns top water to ice,...
Definition: BiomeDef.cpp:169
biSky
@ biSky
Definition: BiomeDef.h:32
biSavannaPlateauM
@ biSavannaPlateauM
Definition: BiomeDef.h:94
biJungleM
@ biJungleM
Definition: BiomeDef.h:84
biNumBiomes
@ biNumBiomes
Definition: BiomeDef.h:69
biBeach
@ biBeach
Definition: BiomeDef.h:41
biDesertHills
@ biDesertHills
Definition: BiomeDef.h:42
biMegaSpruceTaiga
@ biMegaSpruceTaiga
Definition: BiomeDef.h:90
EMCSBiome
EMCSBiome
Biome IDs The first batch corresponds to the clientside biomes, used by MineCraft.
Definition: BiomeDef.h:17
biMesaPlateauFM
@ biMesaPlateauFM
Definition: BiomeDef.h:96
biMesaBryce
@ biMesaBryce
Definition: BiomeDef.h:95
biFrozenOcean
@ biFrozenOcean
Definition: BiomeDef.h:34
biFirstVariantBiome
@ biFirstVariantBiome
Definition: BiomeDef.h:76
biInvalidBiome
@ biInvalidBiome
Definition: BiomeDef.h:19
biMegaSpruceTaigaHills
@ biMegaSpruceTaigaHills
Definition: BiomeDef.h:91
biExtremeHillsPlus
@ biExtremeHillsPlus
Definition: BiomeDef.h:61
biVariant
@ biVariant
Definition: BiomeDef.h:73
biExtremeHills
@ biExtremeHills
Definition: BiomeDef.h:25
biDesert
@ biDesert
Definition: BiomeDef.h:24
biTaigaHills
@ biTaigaHills
Definition: BiomeDef.h:44
BiomeHasher::operator()
std::size_t operator()(const EMCSBiome a_Biome) const
Definition: BiomeDef.h:113
biFirstBiome
@ biFirstBiome
Definition: BiomeDef.h:21
biRoofedForest
@ biRoofedForest
Definition: BiomeDef.h:56
biColdTaigaM
@ biColdTaigaM
Definition: BiomeDef.h:89
biDeepOcean
@ biDeepOcean
Definition: BiomeDef.h:51
IsBiomeCold
bool IsBiomeCold(EMCSBiome a_Biome)
Returns true if the biome is cold (has snow and snowfall at higher elevations but not at regular heig...
Definition: BiomeDef.cpp:196
biEnd
@ biEnd
Definition: BiomeDef.h:33
biBirchForestHills
@ biBirchForestHills
Definition: BiomeDef.h:55
biColdTaiga
@ biColdTaiga
Definition: BiomeDef.h:57
biSavannaPlateau
@ biSavannaPlateau
Definition: BiomeDef.h:63
biMushroomIsland
@ biMushroomIsland
Definition: BiomeDef.h:39
biDesertM
@ biDesertM
Definition: BiomeDef.h:78
biMesaPlateauM
@ biMesaPlateauM
Definition: BiomeDef.h:97
biSunflowerPlains
@ biSunflowerPlains
Definition: BiomeDef.h:77
IsBiomeMountain
bool IsBiomeMountain(EMCSBiome a_Biome)
Returns true if the biome is mountainous (mutations of the extreme hills biome)
Definition: BiomeDef.cpp:228
StringToBiome
EMCSBiome StringToBiome(const AString &a_BiomeString)
Translates a biome string to biome enum.
Definition: BiomeDef.cpp:94
biJungle
@ biJungle
Definition: BiomeDef.h:46
biHell
@ biHell
Definition: BiomeDef.h:30
biSwamplandM
@ biSwamplandM
Definition: BiomeDef.h:82
biMaxVariantBiome
@ biMaxVariantBiome
Definition: BiomeDef.h:100
AString
std::string AString
Definition: StringUtils.h:11
biTaiga
@ biTaiga
Definition: BiomeDef.h:27
biExtremeHillsPlusM
@ biExtremeHillsPlusM
Definition: BiomeDef.h:92
BiomeToString
AString BiomeToString(int a_Biome)
Translates biome enum into biome string.
Definition: BiomeDef.cpp:126