LeviLamina
Loading...
Searching...
No Matches
KelpBlock.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/item/FertilizerType.h"
8
#include "mc/world/level/block/BlockType.h"
9
10
// auto generated forward declare list
11
// clang-format off
12
class
AABB
;
13
class
Actor
;
14
class
Block
;
15
class
BlockActor
;
16
class
BlockPos
;
17
class
BlockSource
;
18
class
GetCollisionShapeInterface
;
19
class
IConstBlockSource
;
20
class
ItemInstance
;
21
namespace
BlockEvents {
class
BlockPlaceEvent
; }
22
namespace
BlockEvents {
class
BlockPlayerInteractEvent
; }
23
namespace
BlockEvents {
class
BlockQueuedTickEvent
; }
24
struct
BlockGraphicsModeChangeContext
;
25
// clang-format on
26
27
class
KelpBlock :
public
::BlockType {
28
public
:
29
// prevent constructor by default
30
KelpBlock();
31
32
public
:
33
// virtual functions
34
// NOLINTBEGIN
35
virtual
bool
mayPlace(
::BlockSource
& region,
::BlockPos
const
& pos)
const
/*override*/
;
36
37
virtual
void
neighborChanged(
::BlockSource
& region,
::BlockPos
const
& pos,
::BlockPos
const
& neighborPos)
const
38
/*override*/
;
39
40
virtual
bool
onFertilized(
::BlockSource
& region,
::BlockPos
const
& pos,
::Actor
*, ::FertilizerType)
const
41
/*override*/
;
42
43
virtual
bool
mayConsumeFertilizer(
::BlockSource
&)
const
/*override*/
;
44
45
virtual
bool
canBeFertilized(
::BlockSource
&,
::BlockPos
const
&,
::Block
const
&)
const
/*override*/
;
46
47
virtual
bool
canSurvive(
::BlockSource
& region,
::BlockPos
const
& pos)
const
/*override*/
;
48
49
virtual ::AABB getCollisionShape(
50
::Block
const
&,
51
::IConstBlockSource
const
&,
52
::BlockPos
const
&,
53
::optional_ref<::GetCollisionShapeInterface const>
54
)
const
/*override*/
;
55
56
virtual ::AABB
const
&
57
getOutline(
::Block
const
& pos,
::IConstBlockSource
const
& bufferValue,
::BlockPos
const
&,
::AABB
&)
const
58
/*override*/
;
59
60
virtual ::ItemInstance asItemInstance(
::Block
const
&,
::BlockActor
const
*)
const
/*override*/
;
61
62
virtual
void
onGraphicsModeChanged(
::BlockGraphicsModeChangeContext
const
&
context
)
/*override*/
;
63
// NOLINTEND
64
65
public
:
66
// member functions
67
// NOLINTBEGIN
68
MCAPI KelpBlock(::std::string
const
& nameId,
int
id
);
69
70
MCAPI
void
_tryGrow(
::BlockSource
& region,
::BlockPos
const
& pos,
int
age)
const
;
71
72
MCAPI
void
onPlace(
::BlockEvents::BlockPlaceEvent
& eventData)
const
;
73
74
MCAPI
bool
shouldGrow(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
75
76
MCAPI
void
tick(
::BlockEvents::BlockQueuedTickEvent
& eventData)
const
;
77
78
MCAPI
void
use(
::BlockEvents::BlockPlayerInteractEvent
& eventData)
const
;
79
// NOLINTEND
80
81
public
:
82
// constructor thunks
83
// NOLINTBEGIN
84
MCAPI
void
* $ctor(::std::string
const
& nameId,
int
id
);
85
// NOLINTEND
86
87
public
:
88
// virtual function thunks
89
// NOLINTBEGIN
90
MCAPI
bool
$mayPlace(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
91
92
MCAPI
void
$neighborChanged(
::BlockSource
& region,
::BlockPos
const
& pos,
::BlockPos
const
& neighborPos)
const
;
93
94
MCAPI
bool
$onFertilized(
::BlockSource
& region,
::BlockPos
const
& pos,
::Actor
*, ::FertilizerType)
const
;
95
96
MCFOLD
bool
$mayConsumeFertilizer(
::BlockSource
&)
const
;
97
98
MCFOLD
bool
$canBeFertilized(
::BlockSource
&,
::BlockPos
const
&,
::Block
const
&)
const
;
99
100
MCFOLD
bool
$canSurvive(
::BlockSource
& region,
::BlockPos
const
& pos)
const
;
101
102
MCFOLD ::AABB $getCollisionShape(
103
::Block
const
&,
104
::IConstBlockSource
const
&,
105
::BlockPos
const
&,
106
::optional_ref<::GetCollisionShapeInterface const>
107
)
const
;
108
109
MCFOLD ::AABB
const
&
110
$getOutline(
::Block
const
& pos,
::IConstBlockSource
const
& bufferValue,
::BlockPos
const
&,
::AABB
&)
const
;
111
112
MCAPI ::ItemInstance $asItemInstance(
::Block
const
&,
::BlockActor
const
*)
const
;
113
114
MCFOLD
void
$onGraphicsModeChanged(
::BlockGraphicsModeChangeContext
const
&
context
);
115
116
117
// NOLINTEND
118
119
public
:
120
// vftables
121
// NOLINTBEGIN
122
MCAPI
static
void
** $vftable();
123
// NOLINTEND
124
};
AABB
Definition
AABB.h:18
Actor
Definition
Actor.h:125
BlockActor
Definition
BlockActor.h:30
BlockEvents::BlockPlaceEvent
Definition
BlockPlaceEvent.h:18
BlockEvents::BlockPlayerInteractEvent
Definition
BlockPlayerInteractEvent.h:20
BlockEvents::BlockQueuedTickEvent
Definition
BlockQueuedTickEvent.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
ItemInstance
Definition
ItemInstance.h:15
optional_ref
Definition
optional_ref.h:10
BlockGraphicsModeChangeContext
Definition
BlockGraphicsModeChangeContext.h:5
context
Definition
context.h:5
src
mc
world
level
block
KelpBlock.h
Generated on
for LeviLamina by
1.16.1