LeviLamina
Loading...
Searching...
No Matches
BlockState.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
8// auto generated forward declare list
9// clang-format off
10class CompoundTag;
11class Tag;
12// clang-format on
13
14class BlockState {
15public:
16 // BlockState inner types declare
17 // clang-format off
18 struct StateListNode;
19 // clang-format on
20
21 // BlockState inner types define
23 public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 8, ::BlockState::StateListNode*> mNext;
27 ::ll::TypedStorage<8, 8, ::BlockState::StateListNode*> mPrev;
28 ::ll::TypedStorage<8, 8, ::BlockState const*> mState;
29 // NOLINTEND
30
31 public:
32 // static variables
33 // NOLINTBEGIN
34 MCAPI static ::BlockState::StateListNode*& mHead();
35 // NOLINTEND
36 };
37
38public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<8, 8, uint64 const> mID;
42 ::ll::TypedStorage<8, 8, uint64 const> mVariationCount;
43 ::ll::TypedStorage<8, 48, ::HashedString const> mName;
44 ::ll::TypedStorage<8, 24, ::BlockState::StateListNode> mNode;
45 // NOLINTEND
46
47public:
48 constexpr BlockState(
49 uint64 id,
50 uint64 variationCount,
51 ::HashedString const& name,
53 )
54 : mID(id),
55 mVariationCount(variationCount),
56 mName(name),
57 mNode(node) {}
58
59public:
60 // virtual functions
61 // NOLINTBEGIN
62 virtual ~BlockState() = default;
63
64 virtual ::std::unique_ptr<::Tag> _toNBT(int val) const = 0;
65
66 virtual ::std::optional<int> _fromNBT(::Tag const& tag) const = 0;
67 // NOLINTEND
68
69public:
70 // member functions
71 // NOLINTBEGIN
72 MCAPI void toNBT(::CompoundTag& tag, int val) const;
73 // NOLINTEND
74
75public:
76 // vftables
77 // NOLINTBEGIN
78 MCNAPI static void** $vftable();
79 // NOLINTEND
80};
Definition BlockState.h:14
static MCAPI void ** $vftable()
Definition CompoundTag.h:18
Definition HashedString.h:5
Definition Tag.h:42
Definition BlockState.h:22