LeviLamina
Loading...
Searching...
No Matches
BlockMaterialInstancesDescription.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/BlockRenderLayer.h"
7#include "mc/world/level/block/TintMethod.h"
8#include "mc/world/level/block/components/BlockComponentDescription.h"
9#include "mc/world/level/block/components/BlockMaterialInstancePackedBools.h"
10
11// auto generated forward declare list
12// clang-format off
14class CompoundTag;
15class Experiments;
16class HashedString;
17class SemVersion;
19namespace Json { class Value; }
20namespace cereal { struct ReflectionCtx; }
21// clang-format on
22
24public:
25 // BlockMaterialInstancesDescription inner types declare
26 // clang-format off
27 struct BlockMaterialData;
29 // clang-format on
30
31 // BlockMaterialInstancesDescription inner types define
33 public:
34 // member variables
35 // NOLINTBEGIN
36 ::ll::TypedStorage<8, 32, ::std::string> textureName;
37 ::ll::TypedStorage<4, 4, float> ambientOcclusion;
38 ::ll::TypedStorage<1, 1, ::BlockRenderLayer> renderLayer;
39 ::ll::TypedStorage<1, 1, ::TintMethod> tintMethod;
40 ::ll::TypedStorage<1, 1, ::BlockMaterialInstancePackedBools> packedBools;
41 // NOLINTEND
42 };
43
45 public:
46 // member variables
47 // NOLINTBEGIN
48 ::ll::TypedStorage<8, 32, ::std::string> materialName;
49 ::ll::TypedStorage<8, 40, ::BlockMaterialInstancesDescription::BlockMaterialInstanceData> materialInstanceData;
50 // NOLINTEND
51 };
52
53public:
54 // member variables
55 // NOLINTBEGIN
56 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::BlockMaterialInstance>> mMaterials;
57 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::std::string>> mMaterialMappings;
58 // NOLINTEND
59
60public:
61 // virtual functions
62 // NOLINTBEGIN
63 // vIndex: 1
64 virtual ::std::string const& getName() const /*override*/;
65
66 // vIndex: 4
67 virtual void initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const /*override*/;
68
69 // vIndex: 2
70 virtual void initializeComponent(::BlockComponentStorage& blockComponentStorage) const /*override*/;
71
72 // vIndex: 7
73 virtual bool isNetworkComponent() const /*override*/;
74
75 // vIndex: 8
76 virtual ::std::unique_ptr<::CompoundTag> buildNetworkTag(::cereal::ReflectionCtx const& ctx) const /*override*/;
77
78 // vIndex: 9
79 virtual void initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const& ctx) /*override*/;
80
81 // vIndex: 10
82 virtual void handleVersionBasedInitialization(::SemVersion const& originalJsonVersion) /*override*/;
83
84 // vIndex: 0
85 virtual ~BlockMaterialInstancesDescription() /*override*/;
86 // NOLINTEND
87
88public:
89 // member functions
90 // NOLINTBEGIN
92
94
96 ::std::string const& textureName,
97 ::BlockRenderLayer renderLayer,
98 float ambientOcclusion,
99 bool faceDimming,
100 ::TintMethod tintMethod,
101 bool randomizeUVRotation,
102 bool supportsTextureVariations,
103 bool alphaMaskedTint,
104 bool emissive
105 );
106
108
110 // NOLINTEND
111
112public:
113 // static functions
114 // NOLINTBEGIN
115 MCAPI static void bindType(::cereal::ReflectionCtx& ctx);
116
117 MCAPI static bool postParseConstraint(
118 ::Experiments const& experiments,
119 ::Json::Value const& componentJson,
120 ::SemVersion const& jsonVersion
121 );
122 // NOLINTEND
123
124public:
125 // static variables
126 // NOLINTBEGIN
127 MCAPI static ::std::string const& NameID();
128 // NOLINTEND
129
130public:
131 // constructor thunks
132 // NOLINTBEGIN
133 MCAPI void* $ctor();
134
135 MCAPI void* $ctor(::BlockMaterialInstancesDescription const&);
136
137 MCAPI void* $ctor(
138 ::std::string const& textureName,
139 ::BlockRenderLayer renderLayer,
140 float ambientOcclusion,
141 bool faceDimming,
142 ::TintMethod tintMethod,
143 bool randomizeUVRotation,
144 bool supportsTextureVariations,
145 bool alphaMaskedTint,
146 bool emissive
147 );
148 // NOLINTEND
149
150public:
151 // destructor thunk
152 // NOLINTBEGIN
153 MCAPI void $dtor();
154 // NOLINTEND
155
156public:
157 // virtual function thunks
158 // NOLINTBEGIN
159 MCAPI ::std::string const& $getName() const;
160
161 MCFOLD void $initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const;
162
163 MCAPI void $initializeComponent(::BlockComponentStorage& blockComponentStorage) const;
164
165 MCFOLD bool $isNetworkComponent() const;
166
167 MCAPI ::std::unique_ptr<::CompoundTag> $buildNetworkTag(::cereal::ReflectionCtx const& ctx) const;
168
169 MCAPI void $initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const& ctx);
170
171 MCAPI void $handleVersionBasedInitialization(::SemVersion const& originalJsonVersion);
172 // NOLINTEND
173
174public:
175 // vftables
176 // NOLINTBEGIN
177 MCNAPI static void** $vftable();
178 // NOLINTEND
179};
Definition BlockComponentStorage.h:56
Definition CompoundTag.h:13
Definition Experiments.h:14
Definition HashedString.h:5
Definition SemVersion.h:16
STL namespace.
Definition BlockComponentDescription.h:20
Definition BlockMaterialInstance.h:17
Definition BlockMaterialInstancesDescription.h:44
Definition BlockMaterialInstancesDescription.h:32
Definition BlockMaterialInstancesDescription.h:23
static MCAPI void ** $vftable()
Definition ctx.h:5