mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-24 05:23:38 +00:00
57 lines
2.4 KiB
C++
57 lines
2.4 KiB
C++
#pragma once
|
|
#include "LevelChunk.h"
|
|
#include "../Util/Definitions.h"
|
|
|
|
class Level;
|
|
|
|
class WaterLevelChunk : public LevelChunk {
|
|
public:
|
|
using LevelChunk::getEntities;
|
|
using LevelChunk::getEntitiesOfClass;
|
|
|
|
WaterLevelChunk(Level* level, byteArray blocks, int x, int z);
|
|
bool isAt(int x, int z);
|
|
void recalcBlockLights();
|
|
void recalcHeightmapOnly();
|
|
void recalcHeightmap();
|
|
void lightLava();
|
|
bool setTileAndData(int x, int y, int z, int _tile, int _data);
|
|
bool setTile(int x, int y, int z, int _tile);
|
|
bool setData(int x, int y, int z, int val, int mask,
|
|
bool* maskedBitsChanged); // 4J added mask
|
|
void setBrightness(LightLayer::variety layer, int x, int y, int z,
|
|
int brightness);
|
|
void setLevelChunkBrightness(
|
|
LightLayer::variety layer, int x, int y, int z,
|
|
int brightness); // 4J added - calls the setBrightness method of the
|
|
// parent class
|
|
void addEntity(std::shared_ptr<Entity> e);
|
|
void removeEntity(std::shared_ptr<Entity> e);
|
|
void removeEntity(std::shared_ptr<Entity> e, int yc);
|
|
void skyBrightnessChanged();
|
|
std::shared_ptr<TileEntity> getTileEntity(int x, int y, int z);
|
|
void addTileEntity(std::shared_ptr<TileEntity> te);
|
|
void setTileEntity(int x, int y, int z,
|
|
std::shared_ptr<TileEntity> tileEntity);
|
|
void removeTileEntity(int x, int y, int z);
|
|
void load();
|
|
void unload(bool unloadTileEntities); // 4J - added parameter
|
|
bool containsPlayer(); // 4J added
|
|
void markUnsaved();
|
|
void getEntities(std::shared_ptr<Entity> except, AABB bb,
|
|
std::vector<std::shared_ptr<Entity> >& es);
|
|
void getEntitiesOfClass(const std::type_info& ec, AABB bb,
|
|
std::vector<std::shared_ptr<Entity> >& es);
|
|
int countEntities();
|
|
bool shouldSave(bool force);
|
|
void setBlocks(byteArray newBlocks, int sub);
|
|
int setBlocksAndData(
|
|
byteArray data, int x0, int y0, int z0, int x1, int y1, int z1, int p,
|
|
bool includeLighting = true); // 4J - added includeLighting parameter;
|
|
bool testSetBlocksAndData(byteArray data, int x0, int y0, int z0, int x1,
|
|
int y1, int z1, int p);
|
|
Random* getRandom(int64_t l);
|
|
virtual Biome* getBiome(int x, int z, BiomeSource* biomeSource);
|
|
virtual void reSyncLighting() {}; // 4J added
|
|
};
|