VMANIP_FLAG_DUNGEON_INSIDE|VMANIP_FLAG_DUNGEON_PRESERVE)
class MMVManip;
-class INodeDefManager;
+class NodeDefManager;
v3s16 rand_ortho_dir(PseudoRandom &random, bool diagonal_dirs);
v3s16 turn_xz(v3s16 olddir, int t);
-v3s16 random_turn(PseudoRandom &random, v3s16 olddir);
+void random_turn(PseudoRandom &random, v3s16 &dir);
int dir_to_facedir(v3s16 d);
struct DungeonParams {
s32 seed;
- content_t c_water;
- content_t c_river_water;
content_t c_wall;
content_t c_alt_wall;
content_t c_stair;
v3s16 room_size_large_max;
u16 rooms_min;
u16 rooms_max;
- s16 y_min;
- s16 y_max;
GenNotifyType notifytype;
NoiseParams np_density;
class DungeonGen {
public:
- MMVManip *vm;
- INodeDefManager *ndef;
+ MMVManip *vm = nullptr;
+ const NodeDefManager *ndef;
GenerateNotifier *gennotify;
u32 blockseed;
v3s16 m_pos;
v3s16 m_dir;
- DungeonGen(INodeDefManager *ndef,
+ DungeonGen(const NodeDefManager *ndef,
GenerateNotifier *gennotify, DungeonParams *dparams);
void generate(MMVManip *vm, u32 bseed,