Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
Material.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/v1_26_20/block/MaterialType.h"
7
8class Material {
9public:
10 // Material inner types declare
11 // clang-format off
12 class Builder;
13 // clang-format on
14
15 // Material inner types define
16 enum class Settings : int {
17 Solid = 0,
18 Liquid = 1,
19 NonSolid = 2,
20 };
21
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<1, 1, ::SharedTypes::v1_26_20::MaterialType> mType;
26 bool mNeverBuildable : 1;
27 bool mLiquid : 1;
28 bool mBlocksMotion : 1;
29 bool mBlocksPrecipitation : 1;
30 bool mSolid : 1;
31 bool mSuperHot : 1;
32 // NOLINTEND
33
34public:
35 bool operator==(Material const& rhs) const { return mType == rhs.mType; }
36
37public:
38 // Falls back to index 1 when `type` is out of range rather than reading past the end of the material table.
39 LLNDAPI static ::Material const& getMaterial(::SharedTypes::v1_26_20::MaterialType type);
40};
41
43public:
44 // member variables
45 // NOLINTBEGIN
46 ::ll::TypedStorage<1, 2, ::Material> mMaterial;
47 // NOLINTEND
48};
Definition Material.h:42
Definition Material.h:8