}
-void Biome::genColumn(MapgenV7 *mg, int x, int z, int y1, int y2) {
- int i = (z - mg->node_min.Z) * mg->csize.Z + (x - mg->node_min.X);
- int surfaceh = np->offset + np->scale * mg->map_terrain[i];
-
- /*///experimental
- if (groupid > 0) {
- float prevfreq = mg->biomedef->bgroup_freqs[groupid - 1];
- float range = mg->biomedef->bgroup_freqs[groupid] - prevfreq;
- float factor = (mg->map_bgroup[i] - prevfreq) / range;
-
- std::vector<Biome *> *bg = mg->biomedef->bgroups[groupid - 1];
- Biome *b = (*bg)[0];
- int h1 = b->np->offset + b->np->scale * mg->map_terrain[i];
- surfaceh += (int)round((surfaceh - h1) * factor);
- //printf("h1: %d, surfaceh: %d, factor %f\n", h1, surfaceh, factor);
- }*/
-
-
- int y = y1;
-
- i = mg->vmanip->m_area.index(x, y, z);
- for (; y <= surfaceh - ntopnodes && y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = n_filler;
- for (; y <= surfaceh && y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = n_top;
- for (; y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = mg->n_air;
+void Biome::genColumn(Mapgen *mapgen, int x, int z, int y1, int y2) {
+
}
///////////////////////////// [ Ocean biome ] /////////////////////////////////
-void BiomeLiquid::genColumn(MapgenV7 *mg, int x, int z, int y1, int y2) {
- int i = (z - mg->node_min.Z) * mg->csize.Z + (x - mg->node_min.X);
- int surfaceh = np->offset + np->scale * mg->map_terrain[i];
- int y = y1;
-
- i = mg->vmanip->m_area.index(x, y, z);
- for (; y <= surfaceh - ntopnodes && y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = n_filler;
- for (; y <= surfaceh && y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = n_top;
- for (; y <= mg->water_level && y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = mg->n_water;
- for (; y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = mg->n_air;
+void BiomeLiquid::genColumn(Mapgen *mapgen, int x, int z, int y1, int y2) {
+
}
}
-void BiomeHell::genColumn(MapgenV7 *mg, int x, int z, int y1, int y2) {
+void BiomeHell::genColumn(Mapgen *mapgen, int x, int z, int y1, int y2) {
}
}
-void BiomeAether::genColumn(MapgenV7 *mg, int x, int z, int y1, int y2) {
+void BiomeAether::genColumn(Mapgen *mapgen, int x, int z, int y1, int y2) {
}
}
-void BiomeSuperflat::genColumn(MapgenV7 *mg, int x, int z, int y1, int y2) {
- int surfaceh = ntopnodes;
- int y = y1;
+void BiomeSuperflat::genColumn(Mapgen *mapgen, int x, int z, int y1, int y2) {
- int i = mg->vmanip->m_area.index(x, y, z);
- for (; y <= surfaceh - ntopnodes && y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = n_filler;
- for (; y <= surfaceh && y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = n_top;
- for (; y <= y2; y++, i += mg->ystride)
- mg->vmanip->m_data[i] = mg->n_air;
}