LeviLamina
Loading...
Searching...
No Matches
LiquidBlockBase.h
1
#pragma once
2
3
#include "mc/_HeaderOutputPredefine.h"
4
5
// auto generated inclusion list
6
#include "mc/deps/core/utility/optional_ref.h"
7
#include "mc/world/level/block/BlockType.h"
8
9
// auto generated forward declare list
10
// clang-format off
11
class
AABB
;
12
class
Actor
;
13
class
Block
;
14
class
BlockPos
;
15
class
BlockSource
;
16
class
GetCollisionShapeInterface
;
17
class
IConstBlockSource
;
18
class
Material
;
19
class
Random
;
20
class
Vec3
;
21
struct
BlockAnimateTickData
;
22
namespace
BlockEvents {
class
BlockPlaceEvent
; }
23
struct
BlockGraphicsModeChangeContext
;
24
// clang-format on
25
26
class
LiquidBlockBase :
public
::BlockType {
27
public
:
28
// prevent constructor by default
29
LiquidBlockBase();
30
31
public
:
32
// virtual functions
33
// NOLINTBEGIN
34
virtual
bool
mayPick(
::BlockSource
const
& block,
::Block
const
& liquid,
bool
)
const
/*override*/
;
35
36
virtual ::AABB getCollisionShape(
37
::Block
const
&,
38
::IConstBlockSource
const
&,
39
::BlockPos
const
&,
40
::optional_ref<::GetCollisionShapeInterface const>
41
)
const
/*override*/
;
42
43
virtual
void
animateTickBedrockLegacy(
::BlockAnimateTickData
const
& tickData)
const
/*override*/
;
44
45
virtual
void
neighborChanged(
::BlockSource
& region,
::BlockPos
const
& pos,
::BlockPos
const
& neighborPos)
const
46
/*override*/
;
47
48
virtual
bool
checkIsPathable(
::Actor
&,
::BlockPos
const
&,
::BlockPos
const
&)
const
/*override*/
;
49
50
virtual
void
onGraphicsModeChanged(
::BlockGraphicsModeChangeContext
const
&
context
)
/*override*/
;
51
// NOLINTEND
52
53
public
:
54
// member functions
55
// NOLINTBEGIN
56
MCAPI LiquidBlockBase(::std::string
const
& nameId,
int
id
,
::Material
const
& material);
57
58
MCAPI
void
_solidify(
::BlockSource
& region,
::BlockPos
const
& pos,
::BlockPos
const
& changedNeighbor)
const
;
59
60
MCAPI
void
emitFizzParticle(
::BlockSource
& region,
::BlockPos
const
& p)
const
;
61
62
MCAPI
int
getTickDelay(
::BlockSource
& region)
const
;
63
64
MCAPI
void
onPlaceBase(
::BlockEvents::BlockPlaceEvent
& eventData)
const
;
65
66
MCAPI
void
solidify(
::BlockSource
& region,
::BlockPos
const
& pos,
::BlockPos
const
& changedNeighbor)
const
;
67
68
MCAPI
void
trySpreadFire(
::BlockSource
& region,
::BlockPos
const
& pos,
::Random
& random)
const
;
69
// NOLINTEND
70
71
public
:
72
// static functions
73
// NOLINTBEGIN
74
MCAPI static ::Vec3 _getFlow(
::IConstBlockSource
const
& region,
::BlockPos
const
& pos,
::Material
const
& material);
75
76
MCAPI
static
int
getDepth(
::IConstBlockSource
const
& region,
::BlockPos
const
& pos,
::Material
const
& material);
77
78
MCAPI
static
float
getHeightFromDepth(
int
depth);
79
80
#ifdef LL_PLAT_C
81
MCAPI
static
float
getSlopeAngle(
::BlockSource
& region,
::BlockPos
const
& pos,
::Material
const
& m);
82
#endif
83
84
MCAPI
static
void
handleEntityInside(
85
::IConstBlockSource
const
& region,
86
::BlockPos
const
& pos,
87
::Vec3
& current,
88
::Material
const
& material
89
);
90
// NOLINTEND
91
92
public
:
93
// constructor thunks
94
// NOLINTBEGIN
95
MCAPI
void
* $ctor(::std::string
const
& nameId,
int
id
,
::Material
const
& material);
96
// NOLINTEND
97
98
public
:
99
// virtual function thunks
100
// NOLINTBEGIN
101
MCAPI
bool
$mayPick(
::BlockSource
const
& block,
::Block
const
& liquid,
bool
)
const
;
102
103
MCFOLD ::AABB $getCollisionShape(
104
::Block
const
&,
105
::IConstBlockSource
const
&,
106
::BlockPos
const
&,
107
::optional_ref<::GetCollisionShapeInterface const>
108
)
const
;
109
110
MCAPI
void
$animateTickBedrockLegacy(
::BlockAnimateTickData
const
& tickData)
const
;
111
112
MCAPI
void
$neighborChanged(
::BlockSource
& region,
::BlockPos
const
& pos,
::BlockPos
const
& neighborPos)
const
;
113
114
MCAPI
bool
$checkIsPathable(
::Actor
&,
::BlockPos
const
&,
::BlockPos
const
&)
const
;
115
116
MCAPI
void
$onGraphicsModeChanged(
::BlockGraphicsModeChangeContext
const
&
context
);
117
118
119
// NOLINTEND
120
121
public
:
122
// vftables
123
// NOLINTBEGIN
124
MCAPI
static
void
** $vftable();
125
// NOLINTEND
126
};
AABB
Definition
AABB.h:18
Actor
Definition
Actor.h:125
BlockEvents::BlockPlaceEvent
Definition
BlockPlaceEvent.h:18
BlockPos
Definition
BlockPos.h:21
BlockSource
Definition
BlockSource.h:73
Block
Definition
Block.h:69
GetCollisionShapeInterface
Definition
GetCollisionShapeInterface.h:13
IConstBlockSource
Definition
IConstBlockSource.h:24
Material
Definition
Material.h:8
Random
Definition
Random.h:10
Vec3
Definition
Vec3.h:10
optional_ref
Definition
optional_ref.h:10
BlockAnimateTickData
Definition
BlockAnimateTickData.h:14
BlockGraphicsModeChangeContext
Definition
BlockGraphicsModeChangeContext.h:5
context
Definition
context.h:5
src
mc
world
level
block
LiquidBlockBase.h
Generated on
for LeviLamina by
1.16.1