LeviLamina
Loading...
Searching...
No Matches
IBlockWorldGenAPI.h
1
#pragma once
2
3
#include "mc/_HeaderOutputPredefine.h"
4
5
// auto generated inclusion list
6
#include "mc/world/level/BlockDataFetchResult.h"
7
8
// auto generated forward declare list
9
// clang-format off
10
class
Biome
;
11
class
Block
;
12
class
BlockPos
;
13
class
BoundingBox
;
14
class
ChunkPos
;
15
class
Feature
;
16
class
LevelChunk
;
17
class
LevelData
;
18
class
Pos
;
19
class
Random
;
20
class
StructureSettings
;
21
class
StructureTemplate
;
22
struct
WorldGenContext
;
23
// clang-format on
24
25
class
IBlockWorldGenAPI
{
26
public
:
27
// virtual functions
28
// NOLINTBEGIN
29
virtual
~IBlockWorldGenAPI
() =
default
;
30
31
virtual
bool
canGetChunk()
const
;
32
33
virtual ::LevelChunk* getChunk(
::ChunkPos
const
& pos);
34
35
virtual ::Block
const
* tryGetLiquidBlock(
::BlockPos
const
& pos)
const
= 0;
36
37
virtual ::Block
const
& getBlock(
::BlockPos
const
& pos)
const
= 0;
38
39
virtual ::Block
const
& getBlockNoBoundsCheck(
::BlockPos
const
& pos)
const
= 0;
40
41
virtual ::Block
const
& getExtraBlock(
::BlockPos
const
& pos)
const
= 0;
42
43
virtual ::gsl::span<::BlockDataFetchResult<::Block>
const
>
44
fetchBlocksInBox(
::BoundingBox
const
& box, ::std::function<
bool
(
::Block
const
&)> predicate) = 0;
45
46
virtual
bool
hasBiomeTag(uint64 tagNameHash,
::BlockPos
const
& pos)
const
= 0;
47
48
virtual
bool
setBlock(
::BlockPos
const
& pos,
::Block
const
& newBlock,
int
updateFlags) = 0;
49
50
virtual
bool
setBlockSimple(
::BlockPos
const
& pos,
::Block
const
& block) = 0;
51
52
virtual
bool
apply()
const
= 0;
53
54
virtual
bool
55
placeStructure(
::BlockPos
const
& pos,
::StructureTemplate
& structure,
::StructureSettings
& settings) = 0;
56
57
virtual
bool
mayPlace(
::BlockPos
const
& pos,
::Block
const
& block)
const
= 0;
58
59
virtual
bool
canSurvive(
::BlockPos
const
& pos,
::Block
const
& block)
const
= 0;
60
61
virtual
bool
canBeBuiltOver(
::BlockPos
const
& pos,
::Block
const
& block)
const
= 0;
62
63
virtual
short
getMaxHeight()
const
= 0;
64
65
virtual
short
getMinHeight()
const
= 0;
66
67
virtual
bool
shimPlaceForOldFeatures(
::Feature
const
& feature,
::BlockPos
const
& pos,
::Random
& random)
const
= 0;
68
69
virtual
short
getHeightmap(
int
x,
int
z) = 0;
70
71
virtual
bool
isLegacyLevel() = 0;
72
73
virtual ::Biome
const
* getBiome(
::BlockPos
const
& pos)
const
= 0;
74
75
virtual
bool
isInBounds(
::Pos
const
& pos)
const
= 0;
76
77
virtual
short
getLocalWaterLevel(
::BlockPos
const
& pos)
const
= 0;
78
79
virtual ::LevelData
const
& getLevelData()
const
= 0;
80
81
virtual ::WorldGenContext
const
& getContext() = 0;
82
83
virtual
void
disableBlockSimple() = 0;
84
// NOLINTEND
85
86
public
:
87
// virtual function thunks
88
// NOLINTBEGIN
89
MCNAPI
bool
$canGetChunk
()
const
;
90
91
MCNAPI ::LevelChunk*
$getChunk
(
::ChunkPos
const
& pos);
92
93
94
// NOLINTEND
95
};
Biome
Definition
Biome.h:23
BlockPos
Definition
BlockPos.h:19
Block
Definition
Block.h:43
BoundingBox
Definition
BoundingBox.h:13
ChunkPos
Definition
ChunkPos.h:11
Feature
Definition
Feature.h:18
IBlockWorldGenAPI
Definition
IBlockWorldGenAPI.h:25
IBlockWorldGenAPI::$getChunk
MCAPI::LevelChunk * $getChunk(::ChunkPos const &pos)
IBlockWorldGenAPI::$canGetChunk
MCAPI bool $canGetChunk() const
LevelChunk
Definition
LevelChunk.h:79
LevelData
Definition
LevelData.h:52
Pos
Definition
Pos.h:5
Random
Definition
Random.h:10
StructureSettings
Definition
StructureSettings.h:18
StructureTemplate
Definition
StructureTemplate.h:35
WorldGenContext
Definition
WorldGenContext.h:13
src
mc
world
level
IBlockWorldGenAPI.h
Generated on
for LeviLamina by
1.16.1