mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Add map feature generation notify Lua API
This commit is contained in:
parent
83853ccd41
commit
c3708b456e
12 changed files with 252 additions and 151 deletions
55
src/mapgen.h
55
src/mapgen.h
|
@ -53,9 +53,16 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
|||
#define DECO_PLACE_CENTER_Y 2
|
||||
#define DECO_PLACE_CENTER_Z 4
|
||||
|
||||
#define ORE_RANGE_ACTUAL 1
|
||||
#define ORE_RANGE_MIRROR 2
|
||||
|
||||
#define NUM_GEN_NOTIFY 6
|
||||
|
||||
|
||||
extern FlagDesc flagdesc_mapgen[];
|
||||
extern FlagDesc flagdesc_ore[];
|
||||
extern FlagDesc flagdesc_deco_schematic[];
|
||||
extern FlagDesc flagdesc_gennotify[];
|
||||
|
||||
class BiomeDefManager;
|
||||
class Biome;
|
||||
|
@ -67,6 +74,32 @@ struct BlockMakeData;
|
|||
class VoxelArea;
|
||||
class Map;
|
||||
|
||||
|
||||
enum MapgenObject {
|
||||
MGOBJ_VMANIP,
|
||||
MGOBJ_HEIGHTMAP,
|
||||
MGOBJ_BIOMEMAP,
|
||||
MGOBJ_HEATMAP,
|
||||
MGOBJ_HUMIDMAP,
|
||||
MGOBJ_GENNOTIFY
|
||||
};
|
||||
|
||||
enum GenNotify {
|
||||
GENNOTIFY_DUNGEON,
|
||||
GENNOTIFY_TEMPLE,
|
||||
GENNOTIFY_CAVE_BEGIN,
|
||||
GENNOTIFY_CAVE_END,
|
||||
GENNOTIFY_LARGECAVE_BEGIN,
|
||||
GENNOTIFY_LARGECAVE_END
|
||||
};
|
||||
|
||||
enum OreType {
|
||||
ORE_SCATTER,
|
||||
ORE_SHEET,
|
||||
ORE_CLAYLIKE
|
||||
};
|
||||
|
||||
|
||||
struct MapgenParams {
|
||||
std::string mg_name;
|
||||
int chunksize;
|
||||
|
@ -100,8 +133,11 @@ public:
|
|||
u8 *biomemap;
|
||||
v3s16 csize;
|
||||
|
||||
u32 gennotify;
|
||||
std::vector<v3s16> *gen_notifications[NUM_GEN_NOTIFY];
|
||||
|
||||
Mapgen();
|
||||
virtual ~Mapgen() {}
|
||||
virtual ~Mapgen();
|
||||
|
||||
s16 findGroundLevelFull(v2s16 p2d);
|
||||
s16 findGroundLevel(v2s16 p2d, s16 ymin, s16 ymax);
|
||||
|
@ -123,23 +159,6 @@ struct MapgenFactory {
|
|||
virtual ~MapgenFactory() {}
|
||||
};
|
||||
|
||||
enum MapgenObject {
|
||||
MGOBJ_VMANIP,
|
||||
MGOBJ_HEIGHTMAP,
|
||||
MGOBJ_BIOMEMAP,
|
||||
MGOBJ_HEATMAP,
|
||||
MGOBJ_HUMIDMAP
|
||||
};
|
||||
|
||||
enum OreType {
|
||||
ORE_SCATTER,
|
||||
ORE_SHEET,
|
||||
ORE_CLAYLIKE
|
||||
};
|
||||
|
||||
#define ORE_RANGE_ACTUAL 1
|
||||
#define ORE_RANGE_MIRROR 2
|
||||
|
||||
class Ore {
|
||||
public:
|
||||
std::string ore_name;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue