LeviLamina
Loading...
Searching...
No Matches
BlockGeometryDescription.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/world/level/block/components/BlockRendererDescription.h"
8#include "mc/world/level/block/components/NetworkedBlockComponentDescription.h"
9
10// auto generated forward declare list
11// clang-format off
13class CompoundTag;
14class ExpressionNode;
15class SemVersion;
16namespace cereal { struct ReflectionCtx; }
17// clang-format on
18
19struct BlockGeometryDescription : public ::NetworkedBlockComponentDescription<::BlockGeometryDescription> {
20public:
21 // BlockGeometryDescription inner types declare
22 // clang-format off
24 // clang-format on
25
26 // BlockGeometryDescription inner types define
28 public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 48, ::HashedString> mCullingName;
32 ::ll::TypedStorage<8, 16, ::std::map<::std::string, ::ExpressionNode>> mBoneVisibilities;
33 // NOLINTEND
34 };
35
36public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<8, 48, ::HashedString> mGeometryName;
40 ::ll::TypedStorage<1, 1, bool> mNeedsLegacyTopRotation;
41 ::ll::TypedStorage<1, 1, bool> mUseBlockTypeLightAbsorption;
42 ::ll::TypedStorage<1, 1, bool> mIgnoreGeometryForIsSolid;
43 ::ll::TypedStorage<8, 48, ::HashedString> mCullingLayer;
44 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::BlockGeometryDescription::SharedInitializationData>>
45 mSharedInitializationData;
46 ::ll::TypedStorage<8, 24, ::std::variant<bool, ::std::set<::HashedString>>> mUVsLocked;
47 ::ll::TypedStorage<4, 52, ::BlockRendererDescription> mRenderer;
48 // NOLINTEND
49
50public:
51 // virtual functions
52 // NOLINTBEGIN
53 // vIndex: 1
54 virtual ::std::string const& getName() const /*override*/;
55
56 // vIndex: 2
57 virtual void initializeComponent(::BlockComponentStorage& blockComponentStorage) const /*override*/;
58
59 // vIndex: 4
60 virtual void initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const /*override*/;
61
62 // vIndex: 10
63 virtual void handleVersionBasedInitialization(::SemVersion const& originalJsonVersion) /*override*/;
64
65 // vIndex: 11
66 virtual ::CompoundTag buildUnboundDataNetworkTag() const /*override*/;
67
68 // vIndex: 12
69 virtual void initializeUnboundDataFromNetwork(::CompoundTag const& tag) /*override*/;
70
71 // vIndex: 0
72 virtual ~BlockGeometryDescription() /*override*/;
73 // NOLINTEND
74
75public:
76 // member functions
77 // NOLINTBEGIN
79
81
83 ::HashedString const& geometryName,
84 ::HashedString const& cullingName,
85 ::HashedString const& cullingLayer,
86 ::std::variant<bool, ::std::set<::HashedString>> const& uvLock,
87 ::BlockRendererDescription const& renderer
88 );
89
91
92 MCAPI ::BlockGeometryDescription& operator=(::BlockGeometryDescription const&);
93 // NOLINTEND
94
95public:
96 // static functions
97 // NOLINTBEGIN
98 MCAPI static void bindType(::cereal::ReflectionCtx& ctx);
99 // NOLINTEND
100
101public:
102 // static variables
103 // NOLINTBEGIN
104 MCAPI static ::HashedString const& CROSS_GEO_NAME();
105
106 MCAPI static ::std::string const& CULLING_LAYER_DOCUMENTATION();
107
108 MCAPI static ::HashedString const& CULLING_LAYER_LEAVES();
109
110 MCAPI static ::std::string const& CULLING_LAYER_NAME_CONSTRAINT();
111
112 MCAPI static ::HashedString const& CULLING_LAYER_UNDEFINED();
113
114 MCAPI static ::HashedString const& FULL_BLOCK_GEO_NAME();
115
116 MCAPI static ::std::string const& GEO_NAME_CONSTRAINT();
117
118 MCAPI static ::std::string const& NameID();
119
120 MCAPI static ::std::string const& UV_LOCKING_CONSTRAINT();
121 // NOLINTEND
122
123public:
124 // constructor thunks
125 // NOLINTBEGIN
126 MCAPI void* $ctor();
127
128 MCAPI void* $ctor(::BlockGeometryDescription const&);
129
130 MCAPI void* $ctor(
131 ::HashedString const& geometryName,
132 ::HashedString const& cullingName,
133 ::HashedString const& cullingLayer,
134 ::std::variant<bool, ::std::set<::HashedString>> const& uvLock,
135 ::BlockRendererDescription const& renderer
136 );
137 // NOLINTEND
138
139public:
140 // destructor thunk
141 // NOLINTBEGIN
142 MCAPI void $dtor();
143 // NOLINTEND
144
145public:
146 // virtual function thunks
147 // NOLINTBEGIN
148 MCAPI ::std::string const& $getName() const;
149
150 MCAPI void $initializeComponent(::BlockComponentStorage& blockComponentStorage) const;
151
152 MCFOLD void $initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const;
153
154 MCAPI void $handleVersionBasedInitialization(::SemVersion const& originalJsonVersion);
155
156 MCAPI ::CompoundTag $buildUnboundDataNetworkTag() const;
157
158 MCAPI void $initializeUnboundDataFromNetwork(::CompoundTag const& tag);
159 // NOLINTEND
160
161public:
162 // vftables
163 // NOLINTBEGIN
164 MCNAPI static void** $vftable();
165 // NOLINTEND
166};
Definition BlockComponentStorage.h:53
Definition CompoundTag.h:13
Definition ExpressionNode.h:28
Definition HashedString.h:5
Definition NetworkedBlockComponentDescription.h:6
Definition SemVersion.h:16
STL namespace.
Definition BlockGeometryDescription.h:27
Definition BlockGeometryDescription.h:19
static MCAPI void ** $vftable()
Definition BlockRendererDescription.h:10
Definition ctx.h:5