LeviLamina
Loading...
Searching...
No Matches
SweetBerryBushBlock.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/BushBlock.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class Actor;
14class Block;
15class BlockActor;
16class BlockPos;
17class BlockSource;
20class ItemInstance;
21class Player;
22class Random;
23// clang-format on
24
26public:
27 // SweetBerryBushBlock inner types define
28 enum class BerryStage : int {
29 Sapling = 0,
30 NoBerries = 1,
31 SomeBerries = 2,
32 FullBerries = 3,
33 };
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 // vIndex: 79
39 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
40
41 // vIndex: 142
42 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
43
44 // vIndex: 137
45 virtual void randomTick(::BlockSource& region, ::BlockPos const& pos, ::Random& random) const /*override*/;
46
47 // vIndex: 149
48 virtual void entityInside(::BlockSource& region, ::BlockPos const& pos, ::Actor& entity) const /*override*/;
49
50 // vIndex: 138
51 virtual bool isInteractiveBlock() const /*override*/;
52
53 // vIndex: 139
54 virtual bool use(::Player& player, ::BlockPos const& pos, uchar) const /*override*/;
55
56 // vIndex: 118
57 virtual int getVariant(::Block const& block) const /*override*/;
58
59 // vIndex: 5
60 virtual ::AABB
62 const /*override*/;
63
64 // vIndex: 11
65 virtual ::AABB const& getVisualShape(::Block const& block, ::AABB& bufferAABB) const /*override*/;
66
67 // vIndex: 90
68 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
69
70 // vIndex: 57
71 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
72 /*override*/;
73
74 // vIndex: 128
75 virtual bool dealsContactDamage(::Actor const& actor, ::Block const& block, bool isPathFinding) const /*override*/;
76
77 // vIndex: 100
78 virtual void executeEvent(
79 ::BlockSource& region,
80 ::BlockPos const& pos,
81 ::Block const& block,
82 ::std::string const& eventName,
83 ::Actor& sourceEntity
84 ) const /*override*/;
85
86 // vIndex: 3
87 virtual bool
88 hasTag(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::std::string const& tagName) const
89 /*override*/;
90
91 // vIndex: 81
92 virtual bool mayPlaceOn(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
93
94 // vIndex: 74
95 virtual bool
96 onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor* actor, ::FertilizerType fType) const
97 /*override*/;
98
99 // vIndex: 76
100 virtual bool canBeFertilized(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const
101 /*override*/;
102
103 // vIndex: 0
104 virtual ~SweetBerryBushBlock() /*override*/ = default;
105 // NOLINTEND
106
107public:
108 // member functions
109 // NOLINTBEGIN
110 MCAPI SweetBerryBushBlock(::std::string const& nameId, int id);
111 // NOLINTEND
112
113public:
114 // static functions
115 // NOLINTBEGIN
116 MCAPI static bool
117 _growBush(::BlockSource& region, ::BlockPos const& pos, bool forceFullGrowth, ::Actor* sourceEntity);
118
119 MCAPI static bool
120 _pickBerries(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::Actor& sourceEntity);
121 // NOLINTEND
122
123public:
124 // constructor thunks
125 // NOLINTBEGIN
126 MCAPI void* $ctor(::std::string const& nameId, int id);
127 // NOLINTEND
128
129public:
130 // destructor thunk
131 // NOLINTBEGIN
132
133 // NOLINTEND
134
135public:
136 // virtual function thunks
137 // NOLINTBEGIN
138 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos) const;
139
140 MCFOLD bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
141
142 MCAPI void $randomTick(::BlockSource& region, ::BlockPos const& pos, ::Random& random) const;
143
144 MCAPI void $entityInside(::BlockSource& region, ::BlockPos const& pos, ::Actor& entity) const;
145
146 MCFOLD bool $isInteractiveBlock() const;
147
148 MCAPI bool $use(::Player& player, ::BlockPos const& pos, uchar) const;
149
150 MCAPI int $getVariant(::Block const& block) const;
151
152 MCFOLD ::AABB
154 const;
155
156 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB& bufferAABB) const;
157
158 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
159
160 MCAPI bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
161
162 MCAPI bool $dealsContactDamage(::Actor const& actor, ::Block const& block, bool isPathFinding) const;
163
164 MCAPI void $executeEvent(
165 ::BlockSource& region,
166 ::BlockPos const& pos,
167 ::Block const& block,
168 ::std::string const& eventName,
169 ::Actor& sourceEntity
170 ) const;
171
172 MCAPI bool
173 $hasTag(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::std::string const& tagName) const;
174
175 MCAPI bool $mayPlaceOn(::BlockSource& region, ::BlockPos const& pos) const;
176
177 MCAPI bool
178 $onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor* actor, ::FertilizerType fType) const;
179
180 MCFOLD bool $canBeFertilized(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const;
181 // NOLINTEND
182
183public:
184 // vftables
185 // NOLINTBEGIN
186 MCAPI static void** $vftable();
187 // NOLINTEND
188};
Definition AABB.h:16
Definition Actor.h:104
Definition BlockActor.h:32
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:36
Definition BushBlock.h:23
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:24
Definition ItemInstance.h:16
Definition Player.h:119
Definition Random.h:16
Definition SweetBerryBushBlock.h:25
Definition optional_ref.h:10