LeviLamina
Loading...
Searching...
No Matches
PlacementDirection.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/legacy/BlockDescriptor.h"
7#include "mc/world/level/block/traits/block_trait/IGetPlacementBlockCallback.h"
8#include "mc/world/level/block/traits/block_trait/ITrait.h"
9#include "mc/world/level/block/traits/block_trait/PlacementCallbackOrder.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
14class Block;
15class BlockPos;
16class BlockType;
17class CompoundTag;
18class Vec3;
19namespace cereal { struct ReflectionCtx; }
20// clang-format on
21
22namespace BlockTrait {
23
25public:
26 // PlacementDirection inner types declare
27 // clang-format off
28 struct EnabledStates;
32 // clang-format on
33
34 // PlacementDirection inner types define
36 public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<1, 1, bool> mCardinalDirection;
40 ::ll::TypedStorage<1, 1, bool> mFacingDirection;
41 ::ll::TypedStorage<1, 1, bool> mCornerAndCardinalDirection;
42 ::ll::TypedStorage<1, 1, bool> mSixteenWayRotation;
43 // NOLINTEND
44 };
45
47 public:
48 // member variables
49 // NOLINTBEGIN
50 ::ll::TypedStorage<4, 4, float const> mRotationOffset;
51 // NOLINTEND
52
53 public:
54 // virtual functions
55 // NOLINTBEGIN
56 virtual ::gsl::not_null<::Block const*> getPlacementBlock(
57 ::gsl::not_null<::Block const*> block,
58 ::Actor const& by,
59 ::BlockPos const&,
60 uchar,
61 ::Vec3 const&
62 ) const /*override*/;
63
64 virtual ::BlockTrait::PlacementCallbackOrder getCallbackOrder() const /*override*/;
65 // NOLINTEND
66
67 public:
68 // virtual function thunks
69 // NOLINTBEGIN
70 MCAPI ::gsl::not_null<::Block const*> $getPlacementBlock(
71 ::gsl::not_null<::Block const*> block,
72 ::Actor const& by,
73 ::BlockPos const&,
74 uchar,
75 ::Vec3 const&
76 ) const;
77
78 MCFOLD ::BlockTrait::PlacementCallbackOrder $getCallbackOrder() const;
79
80
81 // NOLINTEND
82 };
83
85 public:
86 // member variables
87 // NOLINTBEGIN
88 ::ll::TypedStorage<4, 4, float const> mRotationOffset;
89 // NOLINTEND
90
91 public:
92 // virtual functions
93 // NOLINTBEGIN
94 virtual ::gsl::not_null<::Block const*> getPlacementBlock(
95 ::gsl::not_null<::Block const*> block,
96 ::Actor const& by,
97 ::BlockPos const& pos,
98 uchar,
99 ::Vec3 const&
100 ) const /*override*/;
101
102 virtual ::BlockTrait::PlacementCallbackOrder getCallbackOrder() const /*override*/;
103 // NOLINTEND
104
105 public:
106 // virtual function thunks
107 // NOLINTBEGIN
108 MCAPI ::gsl::not_null<::Block const*> $getPlacementBlock(
109 ::gsl::not_null<::Block const*> block,
110 ::Actor const& by,
111 ::BlockPos const& pos,
112 uchar,
113 ::Vec3 const&
114 ) const;
115
116 MCFOLD ::BlockTrait::PlacementCallbackOrder $getCallbackOrder() const;
117
118
119 // NOLINTEND
120 };
121
123 public:
124 // member variables
125 // NOLINTBEGIN
126 ::ll::TypedStorage<4, 4, float const> mRotationOffset;
127 // NOLINTEND
128
129 public:
130 // virtual functions
131 // NOLINTBEGIN
132 virtual ::gsl::not_null<::Block const*> getPlacementBlock(
133 ::gsl::not_null<::Block const*> block,
134 ::Actor const& by,
135 ::BlockPos const&,
136 uchar,
137 ::Vec3 const&
138 ) const /*override*/;
139
140 virtual ::BlockTrait::PlacementCallbackOrder getCallbackOrder() const /*override*/;
141 // NOLINTEND
142
143 public:
144 // virtual function thunks
145 // NOLINTBEGIN
146 MCAPI ::gsl::not_null<::Block const*> $getPlacementBlock(
147 ::gsl::not_null<::Block const*> block,
148 ::Actor const& by,
149 ::BlockPos const&,
150 uchar,
151 ::Vec3 const&
152 ) const;
153
154 MCFOLD ::BlockTrait::PlacementCallbackOrder $getCallbackOrder() const;
155
156
157 // NOLINTEND
158 };
159
160public:
161 // member variables
162 // NOLINTBEGIN
163 ::ll::TypedStorage<1, 4, ::BlockTrait::PlacementDirection::EnabledStates> mStates;
164 ::ll::TypedStorage<4, 4, float> mRotationOffset;
165 ::ll::TypedStorage<8, 24, ::std::vector<::SharedTypes::Legacy::BlockDescriptor>> mBlocksToCornerWith;
166 // NOLINTEND
167
168public:
169 // virtual functions
170 // NOLINTBEGIN
171 virtual void initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const& ctx) /*override*/;
172
173 virtual void applyToBlockType(::BlockType& blockType) const /*override*/;
174
175 virtual ::std::unique_ptr<::CompoundTag> _buildNetworkTag(::cereal::ReflectionCtx const& ctx) const /*override*/;
176
177 virtual ::std::string const& _getName() const /*override*/;
178
179 virtual ~PlacementDirection() /*override*/;
180 // NOLINTEND
181
182public:
183 // destructor thunk
184 // NOLINTBEGIN
185 MCAPI void $dtor();
186 // NOLINTEND
187
188public:
189 // virtual function thunks
190 // NOLINTBEGIN
191 MCAPI void $initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const& ctx);
192
193 MCAPI void $applyToBlockType(::BlockType& blockType) const;
194
195 MCAPI ::std::unique_ptr<::CompoundTag> $_buildNetworkTag(::cereal::ReflectionCtx const& ctx) const;
196
197 MCAPI ::std::string const& $_getName() const;
198
199
200 // NOLINTEND
201
202public:
203 // vftables
204 // NOLINTBEGIN
205 MCNAPI static void** $vftable();
206 // NOLINTEND
207};
208
209} // namespace BlockTrait
Definition Actor.h:113
Definition BlockPos.h:17
Definition IGetPlacementBlockCallback.h:18
Definition ITrait.h:14
Definition PlacementDirection.h:24
static MCAPI void ** $vftable()
Definition BlockType.h:79
Definition Block.h:41
Definition CompoundTag.h:18
Definition Vec3.h:10
STL namespace.
Definition PlacementDirection.h:35
Definition ReflectionCtx.h:11
Definition ctx.h:5