the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#pragma once
2#include "ChunkSource.h"
3#include "PerlinNoise.h"
4#include "LargeFeature.h"
5#include "LargeHellCaveFeature.h"
6#include "LevelChunk.h"
7#include "HellFireFeature.h"
8#include "LightGemFeature.h"
9#include "HellPortalFeature.h"
10#include "FlowerFeature.h"
11#include "HellSpringFeature.h"
12#include "NetherBridgeFeature.h"
13
14class ProgressListener;
15
16class HellRandomLevelSource : public ChunkSource
17{
18public:
19 static const int CHUNK_HEIGHT = 8;
20 static const int CHUNK_WIDTH = 4;
21
22private:
23 Random *random;
24 Random *pprandom; // 4J added
25
26 PerlinNoise *lperlinNoise1;
27 PerlinNoise *lperlinNoise2;
28 PerlinNoise *perlinNoise1;
29 PerlinNoise *perlinNoise2;
30 PerlinNoise *perlinNoise3;
31
32public:
33 PerlinNoise *scaleNoise;
34 PerlinNoise *depthNoise;
35
36private:
37 Level *level;
38
39public:
40 HellRandomLevelSource(Level *level, __int64 seed);
41 ~HellRandomLevelSource();
42
43 NetherBridgeFeature *netherBridgeFeature;
44
45private:
46 void prepareHeights(int xOffs, int zOffs, byteArray blocks);
47
48public:
49 void buildSurfaces(int xOffs, int zOffs, byteArray blocks);
50
51private:
52 LargeFeature *caveFeature;
53
54public:
55 LevelChunk *create(int x, int z);
56 LevelChunk *getChunk(int xOffs, int zOffs);
57 virtual void lightChunk(LevelChunk *lc); // 4J added
58
59private:
60 doubleArray getHeights(doubleArray buffer, int x, int y, int z, int xSize, int ySize, int zSize);
61
62public:
63 bool hasChunk(int x, int y);
64 void postProcess(ChunkSource *parent, int xt, int zt);
65 bool save(bool force, ProgressListener *progressListener);
66 bool tick();
67 bool shouldSave();
68 wstring gatherStats();
69
70 virtual vector<Biome::MobSpawnerData *> *getMobsAt(MobCategory *mobCategory, int x, int y, int z);
71 virtual TilePos *findNearestMapFeature(Level *level, const wstring& featureName, int x, int y, int z);
72 virtual void recreateLogicStructuresForChunk(int chunkX, int chunkZ);
73};