LeviLamina
Loading...
Searching...
No Matches
BubbleColumnBlock.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/BlockLegacy.h"
8
9// auto generated forward declare list
10// clang-format off
11class AABB;
12class Actor;
13class Block;
14class BlockPos;
15class BlockSource;
16class Experiments;
18class HashedString;
20class Random;
23namespace BlockEvents { class BlockPlaceEvent; }
24namespace BlockEvents { class BlockQueuedTickEvent; }
25// clang-format on
26
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<1, 1, bool> mFancyBubbles;
32 // NOLINTEND
33
34public:
35 // virtual functions
36 // NOLINTBEGIN
37 // vIndex: 123
38 virtual void animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const /*override*/;
39
40 // vIndex: 70
41 virtual bool isPreservingMediumWhenPlaced(::BlockLegacy const* medium) const /*override*/;
42
43 // vIndex: 87
44 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
45 /*override*/;
46
47 // vIndex: 142
48 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
49
50 // vIndex: 57
51 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
52 /*override*/;
53
54 // vIndex: 77
55 virtual bool mayPick(::BlockSource const& region, ::Block const& block, bool liquid) const /*override*/;
56
57 // vIndex: 8
58 virtual void addAABBs(
59 ::Block const& block,
60 ::IConstBlockSource const& region,
61 ::BlockPos const& pos,
62 ::AABB const* intersectTestBox,
63 ::std::vector<::AABB>& inoutBoxes
64 ) const /*override*/;
65
66 // vIndex: 7
67 virtual bool addCollisionShapes(
68 ::Block const& block,
69 ::IConstBlockSource const& region,
70 ::BlockPos const& pos,
71 ::AABB const* intersectTestBox,
72 ::std::vector<::AABB>& inoutBoxes,
74 ) const /*override*/;
75
76 // vIndex: 5
77 virtual ::AABB
79 const /*override*/;
80
81 // vIndex: 135
82 virtual bool shouldTickOnSetBlock() const /*override*/;
83
84 // vIndex: 53
85 virtual ::std::optional<::HashedString> getRequiredMedium() const /*override*/;
86
87 // vIndex: 115
88 virtual void onGraphicsModeChanged(::BlockGraphicsModeChangeContext const& context) /*override*/;
89
90 // vIndex: 131
91 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
92
93 // vIndex: 0
94 virtual ~BubbleColumnBlock() /*override*/ = default;
95 // NOLINTEND
96
97public:
98 // member functions
99 // NOLINTBEGIN
100 MCAPI void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
101
102 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
103 // NOLINTEND
104
105public:
106 // static functions
107 // NOLINTBEGIN
108 MCAPI static void _createParticles(::BlockSource& region, ::BlockPos const& pos, ::Random& random, bool down);
109
110 MCAPI static bool addBubbleColumnSegment(::BlockSource& region, ::BlockPos const& pos);
111
112 MCAPI static void spawnBubbles(::BlockSource& region, ::BlockPos const& pos);
113 // NOLINTEND
114
115public:
116 // destructor thunk
117 // NOLINTBEGIN
118
119 // NOLINTEND
120
121public:
122 // virtual function thunks
123 // NOLINTBEGIN
124 MCAPI void $animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const;
125
126 MCAPI bool $isPreservingMediumWhenPlaced(::BlockLegacy const* medium) const;
127
128 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
129
130 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
131
132 MCFOLD bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
133
134 MCAPI bool $mayPick(::BlockSource const& region, ::Block const& block, bool liquid) const;
135
136 MCFOLD void $addAABBs(
137 ::Block const& block,
138 ::IConstBlockSource const& region,
139 ::BlockPos const& pos,
140 ::AABB const* intersectTestBox,
141 ::std::vector<::AABB>& inoutBoxes
142 ) const;
143
144 MCFOLD bool $addCollisionShapes(
145 ::Block const& block,
146 ::IConstBlockSource const& region,
147 ::BlockPos const& pos,
148 ::AABB const* intersectTestBox,
149 ::std::vector<::AABB>& inoutBoxes,
151 ) const;
152
153 MCFOLD ::AABB
155 const;
156
157 MCFOLD bool $shouldTickOnSetBlock() const;
158
159 MCAPI ::std::optional<::HashedString> $getRequiredMedium() const;
160
161 MCAPI void $onGraphicsModeChanged(::BlockGraphicsModeChangeContext const& context);
162
163 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
164 // NOLINTEND
165
166public:
167 // vftables
168 // NOLINTBEGIN
169 MCAPI static void** $vftable();
170 // NOLINTEND
171};
Definition AABB.h:16
Definition Actor.h:104
Definition BlockPlaceEvent.h:15
Definition BlockQueuedTickEvent.h:15
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:36
Definition BubbleColumnBlock.h:27
Definition Experiments.h:14
Definition GetCollisionShapeInterface.h:13
Definition HashedString.h:5
Definition IConstBlockSource.h:24
Definition Random.h:16
Definition optional_ref.h:10
Definition BlockAnimateTickData.h:5
Definition BlockGraphicsModeChangeContext.h:5
Definition context.h:5