]> git.lizzy.rs Git - dragonblocks_alpha.git/blobdiff - src/server/biomes.h
Use thread pool for map generation
[dragonblocks_alpha.git] / src / server / biomes.h
index 0cf488105648575de4ff7f3aa1d820bbc4c0517a..fb440491f19f186af44e1e56d8ef15aeabfdcc07 100644 (file)
@@ -1,9 +1,9 @@
 #ifndef _BIOMES_H_
 #define _BIOMES_H_
 
-#include <dragontype/number.h>
 #include "map.h"
 #include "perlin.h"
+#include "types.h"
 
 typedef enum
 {
@@ -19,16 +19,17 @@ typedef struct
        SeedOffset offset;
        f64 threshold;
        bool snow;
-       s32 (*height)(v2s32 pos, f64 factor, s32 height, void *row_data, void *block_data);
+       s32 (*height)(v2s32 pos, f64 factor, f32 height, void *row_data, void *block_data);
        Node (*generate)(v3s32 pos, s32 diff, f64 humidity, f64 temperature, f64 factor, MapBlock *block, List *changed_blocks, void *row_data, void *block_data);
        size_t block_data_size;
        void (*preprocess_block)(MapBlock *block, List *changed_blocks, void *block_data);
        size_t row_data_size;
-       void (*preprocess_row)(v2s32 pos, s32 height, f64 factor, void *row_data, void *block_data);
+       void (*preprocess_row)(v2s32 pos, f64 factor, void *row_data, void *block_data);
 } BiomeDef;
 
-extern BiomeDef biomes[BIOME_COUNT];
+extern BiomeDef biomes[];
 
 Biome get_biome(v2s32 pos, f64 *factor);
+Node ocean_get_node_at(v3s32 pos, s32 diff, void *row_data);
 
 #endif