LeviLamina
Loading...
Searching...
No Matches
TopSnowBlock.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/FallingBlock.h"
8
9// auto generated forward declare list
10// clang-format off
11class AABB;
12class Actor;
13class BaseGameVersion;
14class Block;
15class BlockItem;
16class BlockLegacy;
17class BlockPos;
18class BlockSource;
19class Experiments;
22class Player;
23class Random;
24class Vec3;
26namespace BlockEvents { class BlockPlaceEvent; }
27namespace BlockEvents { class BlockQueuedTickEvent; }
28namespace mce { class Color; }
29// clang-format on
30
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<1, 1, bool> mUsePartialHeight;
36 ::ll::TypedStorage<1, 1, bool> mAllowFallOnPlace;
37 // NOLINTEND
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 // vIndex: 57
43 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
44 /*override*/;
45
46 // vIndex: 11
47 virtual ::AABB const& getVisualShape(::Block const& block, ::AABB& bufferAABB) const /*override*/;
48
49 // vIndex: 5
50 virtual ::AABB getCollisionShape(
51 ::Block const& block,
53 ::BlockPos const& pos,
55 ) const /*override*/;
56
57 // vIndex: 6
58 virtual bool getCollisionShapeForCamera(
59 ::AABB& outAABB,
60 ::Block const& block,
61 ::IConstBlockSource const& region,
62 ::BlockPos const& pos
63 ) const /*override*/;
64
65 // vIndex: 133
66 virtual void onExploded(::BlockSource& region, ::BlockPos const& pos, ::Actor* entitySource) const /*override*/;
67
68 // vIndex: 79
69 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
70
71 // vIndex: 82
72 virtual bool tryToPlace(
73 ::BlockSource& region,
74 ::BlockPos const& pos,
75 ::Block const& block,
76 ::ActorBlockSyncMessage const* syncMsg
77 ) const /*override*/;
78
79 // vIndex: 92
80 virtual ::Block const&
81 getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue) const
82 /*override*/;
83
84 // vIndex: 70
85 virtual bool isPreservingMediumWhenPlaced(::BlockLegacy const* medium) const /*override*/;
86
87 // vIndex: 84
88 virtual bool breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const /*override*/;
89
90 // vIndex: 87
91 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
92 /*override*/;
93
94 // vIndex: 89
95 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
96 /*override*/;
97
98 // vIndex: 137
99 virtual void randomTick(::BlockSource& region, ::BlockPos const& pos, ::Random& random) const /*override*/;
100
101 // vIndex: 150
102 virtual ::mce::Color getDustColor(::Block const&) const /*override*/;
103
104 // vIndex: 151
105 virtual ::std::string getDustParticleName(::Block const&) const /*override*/;
106
107 // vIndex: 102
108 virtual bool shouldStopFalling(::Actor& entity) const /*override*/;
109
110 // vIndex: 98
111 virtual bool canBeBuiltOver(::BlockSource& region, ::BlockPos const& pos, ::BlockItem const& newItem) const
112 /*override*/;
113
114 // vIndex: 97
115 virtual bool canBeBuiltOver(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
116
117 // vIndex: 104
118 virtual bool canHaveExtraData() const /*override*/;
119
120 // vIndex: 31
121 virtual bool isLavaBlocking() const /*override*/;
122
123 // vIndex: 154
124 virtual bool isFreeToFall(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
125
126 // vIndex: 155
127 virtual void
128 startFalling(::BlockSource& region, ::BlockPos const& pos, ::Block const& oldBlock, bool creative) const
129 /*override*/;
130
131 // vIndex: 131
132 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
133
134 // vIndex: 0
135 virtual ~TopSnowBlock() /*override*/ = default;
136 // NOLINTEND
137
138public:
139 // member functions
140 // NOLINTBEGIN
141 MCAPI bool _canBeBuiltOver(::BlockSource& region, ::BlockPos const& pos, ::BlockItem const* item) const;
142
143 MCAPI bool melt(::BlockSource& region, ::BlockPos const& pos, int meltHeight) const;
144
145 MCAPI void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
146
147 MCAPI void startFallingIfLostSupport(::BlockSource& region, ::BlockPos const& pos, ::Random& random) const;
148
149 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
150 // NOLINTEND
151
152public:
153 // static functions
154 // NOLINTBEGIN
155 MCAPI static ::Block const& buildSnowBlock(::BlockSource& region, ::BlockPos const& pos, int height, bool additive);
156
157 MCAPI static ::Block const&
158 getSnowBlockToBuild(::BlockSource const& region, ::BlockPos const& pos, int height, bool additive);
159 // NOLINTEND
160
161public:
162 // static variables
163 // NOLINTBEGIN
164 MCAPI static int const& MAX_HEIGHT();
165
166 MCAPI static ::BaseGameVersion const& TOP_SNOW_FALL_ON_PLACE();
167
168 MCAPI static ::BaseGameVersion const& TOP_SNOW_JAVA_PARITY_VERSION();
169 // NOLINTEND
170
171public:
172 // destructor thunk
173 // NOLINTBEGIN
174
175 // NOLINTEND
176
177public:
178 // virtual function thunks
179 // NOLINTBEGIN
180 MCAPI bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
181
182 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB& bufferAABB) const;
183
184 MCAPI ::AABB $getCollisionShape(
185 ::Block const& block,
186 ::IConstBlockSource const&,
187 ::BlockPos const& pos,
189 ) const;
190
191 MCAPI bool $getCollisionShapeForCamera(
192 ::AABB& outAABB,
193 ::Block const& block,
194 ::IConstBlockSource const& region,
195 ::BlockPos const& pos
196 ) const;
197
198 MCAPI void $onExploded(::BlockSource& region, ::BlockPos const& pos, ::Actor* entitySource) const;
199
200 MCAPI bool $mayPlace(::BlockSource& region, ::BlockPos const& pos) const;
201
202 MCAPI bool $tryToPlace(
203 ::BlockSource& region,
204 ::BlockPos const& pos,
205 ::Block const& block,
206 ::ActorBlockSyncMessage const* syncMsg
207 ) const;
208
209 MCAPI ::Block const&
210 $getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue)
211 const;
212
213 MCAPI bool $isPreservingMediumWhenPlaced(::BlockLegacy const* medium) const;
214
215 MCAPI bool $breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const;
216
217 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
218
219 MCAPI ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
220
221 MCAPI void $randomTick(::BlockSource& region, ::BlockPos const& pos, ::Random& random) const;
222
223 MCFOLD ::mce::Color $getDustColor(::Block const&) const;
224
225 MCAPI ::std::string $getDustParticleName(::Block const&) const;
226
227 MCAPI bool $shouldStopFalling(::Actor& entity) const;
228
229 MCAPI bool $canBeBuiltOver(::BlockSource& region, ::BlockPos const& pos, ::BlockItem const& newItem) const;
230
231 MCAPI bool $canBeBuiltOver(::BlockSource& region, ::BlockPos const& pos) const;
232
233 MCFOLD bool $canHaveExtraData() const;
234
235 MCFOLD bool $isLavaBlocking() const;
236
237 MCAPI bool $isFreeToFall(::BlockSource& region, ::BlockPos const& pos) const;
238
239 MCAPI void
240 $startFalling(::BlockSource& region, ::BlockPos const& pos, ::Block const& oldBlock, bool creative) const;
241
242 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
243 // NOLINTEND
244
245public:
246 // vftables
247 // NOLINTBEGIN
248 MCAPI static void** $vftable();
249 // NOLINTEND
250};
Definition AABB.h:16
Definition Actor.h:104
Definition BaseGameVersion.h:13
Definition BlockPlaceEvent.h:15
Definition BlockQueuedTickEvent.h:15
Definition BlockItem.h:23
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:36
Definition Experiments.h:14
Definition FallingBlock.h:20
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:24
Definition Player.h:119
Definition Random.h:16
Definition TopSnowBlock.h:31
Definition Vec3.h:10
Definition optional_ref.h:10
Definition ActorBlockSyncMessage.h:10