mirror of
https://github.com/neoStudiosLCE/neoLegacy.git
synced 2026-06-11 21:22:53 +00:00
29 lines
798 B
C++
29 lines
798 B
C++
#pragma once
|
|
#include "ArrayWithLength.h"
|
|
class LevelType;
|
|
#ifndef _CONTENT_PACAKGE
|
|
#define _BIOME_OVERRIDE
|
|
#endif
|
|
class Layer
|
|
{
|
|
public:
|
|
int64_t seed;
|
|
shared_ptr<Layer> parent;
|
|
int64_t rval;
|
|
int64_t seedMixup;
|
|
|
|
public:
|
|
static LayerArray getDefaultLayers(int64_t seed, LevelType *levelType, void* superflatConfig = nullptr);
|
|
Layer(int32_t seed, int64_t seedMixup);
|
|
virtual void init(int64_t seed);
|
|
bool isOcean(int biomeId);
|
|
bool isSame(int biomeIdA, int biomeIdB);
|
|
virtual void initRandom(int64_t x, int64_t y);
|
|
protected:
|
|
int nextRandom(int max);
|
|
int random(int i, int j, int k, int l);
|
|
int random(int i, int j);
|
|
int modeOrRandom(int i, int j, int k, int l);
|
|
public:
|
|
virtual intArray getArea(int xo, int yo, int w, int h) = 0;
|
|
}; |